Pierre-Yves David <pierre-yves.david@fb.com> [Fri, 10 Oct 2014 17:28:18 -0700] rev 23004
revset-only: use `subset &` instead of filtering
The & version is more likely to be optimised.
only(.)
before) wall 0.003216 comb 0.000000 user 0.000000 sys 0.000000 (best of 768)
after) wall 0.001086 comb 0.000000 user 0.000000 sys 0.000000 (best of 2231)
only(default, stable)
before) wall 0.018469 comb 0.020000 user 0.020000 sys 0.000000 (best of 138)
after) wall 0.015888 comb 0.010000 user 0.010000 sys 0.000000 (best of 156)
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 30 Sep 2014 15:03:54 -0500] rev 23003
revset-_ancestor: use & instead of filter
The & operation is more likely optimised.
::10
before) wall 0.028189 comb 0.030000 user 0.030000 sys 0.000000 (best of 100)
after) wall 0.001050 comb 0.000000 user 0.000000 sys 0.000000 (best of 2326)
::tip
before) wall 0.081132 comb 0.080000 user 0.080000 sys 0.000000 (best of 100)
after) wall 0.055418 comb 0.050000 user 0.050000 sys 0.000000 (best of 100)
Pierre-Yves David <pierre-yves.david@fb.com> [Thu, 16 Oct 2014 14:46:37 -0700] rev 23002
obsstore: record data as floating point in fm0 format
For python struct module, "d" is double. But for python string
formating, "d" is integer. We want to preserve the floating point
nature of the data, so we store it in the metadata as floating
point. We use "%r" to make sure we get as many significant digitis as
necessary to restore the float to the exact same value on the other
side.
The fm1 is transmitting the information as float. The lack of this made
fm1-stored markers not survive a round-trip to fm0 leading to duplicated
markers (or two markers very alike).
Pierre-Yves David <pierre-yves.david@fb.com> [Tue, 14 Oct 2014 01:27:25 -0700] rev 23001
bundle2: add a comment about addchangegroup source and url
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 15 Oct 2014 04:19:37 -0700] rev 23000
pull: call the `b2x-transactionclose` hook when closing the transaction
We need a wider set of hooks to process all the changes that happened during the
pull transaction. We reuse the experimental `b2x-transactionclose` hook set
from server's unbundle for consistency. This hook is experimental and will not
remains as-is forever, but this will open the door for experimentation in 3.2.
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 08 Oct 2014 02:45:21 -0700] rev 22999
revset-only: use __nonzero__ to check if a revset is empty
For some smartsets, computing length is more expensive than checking if the set
is empty.
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 15 Oct 2014 12:38:47 -0700] rev 22998
_spanset: drop __getitem__ implementation
It is expensive and not part of the official smartset API.
Pierre-Yves David <pierre-yves.david@fb.com> [Wed, 15 Oct 2014 12:38:32 -0700] rev 22997
filteredset: drop __getitem__ implementation
It is expensive and not part of the official smartset API.