Rev 3644: (robertc, jam) Bring in the good bits for btree_index (index2 plugin) in file:///home/pqm/archives/thelove/bzr/%2Btrunk/

Canonical.com Patch Queue Manager pqm at pqm.ubuntu.com
Fri Aug 22 05:26:39 BST 2008


At file:///home/pqm/archives/thelove/bzr/%2Btrunk/

------------------------------------------------------------
revno: 3644
revision-id: pqm at pqm.ubuntu.com-20080822042630-on3dxyek4ezk0miu
parent: pqm at pqm.ubuntu.com-20080821190656-7uoj39e0c3q3b893
parent: john at arbash-meinel.com-20080822035429-qa604ysmpghwzcs3
committer: Canonical.com Patch Queue Manager <pqm at pqm.ubuntu.com>
branch nick: +trunk
timestamp: Fri 2008-08-22 05:26:30 +0100
message:
  (robertc, jam) Bring in the good bits for btree_index (index2 plugin)
added:
  bzrlib/_btree_serializer_c.pyx _parse_btree_c.pyx-20080703034413-3q25bklkenti3p8p-2
  bzrlib/_btree_serializer_py.py _parse_btree_py.py-20080703034413-3q25bklkenti3p8p-3
  bzrlib/btree_index.py          index.py-20080624222253-p0x5f92uyh5hw734-7
  bzrlib/chunk_writer.py         chunk_writer.py-20080630234519-6ggn4id17nipovny-1
  bzrlib/tests/test_btree_index.py test_index.py-20080624222253-p0x5f92uyh5hw734-13
  bzrlib/tests/test_chunk_writer.py test_chunk_writer.py-20080630234519-6ggn4id17nipovny-2
modified:
  .bzrignore                     bzrignore-20050311232317-81f7b71efa2db11a
  NEWS                           NEWS-20050323055033-4e00b5db738777ff
  bzrlib/tests/__init__.py       selftest.py-20050531073622-8d0e3c8845c97a64
  setup.py                       setup.py-20050314065409-02f8a0a6e3f9bc70
    ------------------------------------------------------------
    revno: 3641.3.32
    revision-id: john at arbash-meinel.com-20080822035429-qa604ysmpghwzcs3
    parent: john at arbash-meinel.com-20080822022908-420tr0519tdz6pxy
    committer: John Arbash Meinel <john at arbash-meinel.com>
    branch nick: btree_submitted
    timestamp: Thu 2008-08-21 22:54:29 -0500
    message:
      PQM's pyrex version requires Py_ssize_t to be manually defined
    modified:
      bzrlib/_btree_serializer_c.pyx _parse_btree_c.pyx-20080703034413-3q25bklkenti3p8p-2
    ------------------------------------------------------------
    revno: 3641.3.31
    revision-id: john at arbash-meinel.com-20080822022908-420tr0519tdz6pxy
    parent: john at arbash-meinel.com-20080822021827-682x4linhe28stky
    committer: John Arbash Meinel <john at arbash-meinel.com>
    branch nick: btree
    timestamp: Thu 2008-08-21 21:29:08 -0500
    message:
      NEWS
    modified:
      NEWS                           NEWS-20050323055033-4e00b5db738777ff
    ------------------------------------------------------------
    revno: 3641.3.30
    revision-id: john at arbash-meinel.com-20080822021827-682x4linhe28stky
    parent: john at arbash-meinel.com-20080822020936-gtpffetj2a7xkw0x
    committer: John Arbash Meinel <john at arbash-meinel.com>
    branch nick: btree
    timestamp: Thu 2008-08-21 21:18:27 -0500
    message:
      Rename _parse_btree to _btree_serializer
    renamed:
      bzrlib/_parse_btree_c.pyx => bzrlib/_btree_serializer_c.pyx _parse_btree_c.pyx-20080703034413-3q25bklkenti3p8p-2
      bzrlib/_parse_btree_py.py => bzrlib/_btree_serializer_py.py _parse_btree_py.py-20080703034413-3q25bklkenti3p8p-3
    modified:
      .bzrignore                     bzrignore-20050311232317-81f7b71efa2db11a
      bzrlib/btree_index.py          index.py-20080624222253-p0x5f92uyh5hw734-7
      bzrlib/tests/test_btree_index.py test_index.py-20080624222253-p0x5f92uyh5hw734-13
      setup.py                       setup.py-20050314065409-02f8a0a6e3f9bc70
    ------------------------------------------------------------
    revno: 3641.3.29
    revision-id: john at arbash-meinel.com-20080822020936-gtpffetj2a7xkw0x
    parent: john at arbash-meinel.com-20080822020328-4q21ldih7c3ne64g
    committer: John Arbash Meinel <john at arbash-meinel.com>
    branch nick: btree
    timestamp: Thu 2008-08-21 21:09:36 -0500
    message:
      Cleanup the copyright headers
    modified:
      bzrlib/_parse_btree_c.pyx      _parse_btree_c.pyx-20080703034413-3q25bklkenti3p8p-2
      bzrlib/_parse_btree_py.py      _parse_btree_py.py-20080703034413-3q25bklkenti3p8p-3
      bzrlib/btree_index.py          index.py-20080624222253-p0x5f92uyh5hw734-7
      bzrlib/chunk_writer.py         chunk_writer.py-20080630234519-6ggn4id17nipovny-1
      bzrlib/tests/test_btree_index.py test_index.py-20080624222253-p0x5f92uyh5hw734-13
      bzrlib/tests/test_chunk_writer.py test_chunk_writer.py-20080630234519-6ggn4id17nipovny-2
    ------------------------------------------------------------
    revno: 3641.3.28
    revision-id: john at arbash-meinel.com-20080822020328-4q21ldih7c3ne64g
    parent: john at arbash-meinel.com-20080821225821-sio6j57zwk7kvqe2
    committer: John Arbash Meinel <john at arbash-meinel.com>
    branch nick: btree
    timestamp: Thu 2008-08-21 21:03:28 -0500
    message:
      Remove FixedMemoryGraphIndex
    modified:
      bzrlib/btree_index.py          index.py-20080624222253-p0x5f92uyh5hw734-7
    ------------------------------------------------------------
    revno: 3641.3.27
    revision-id: john at arbash-meinel.com-20080821225821-sio6j57zwk7kvqe2
    parent: john at arbash-meinel.com-20080821223604-rc82s2mo1sxcb78p
    committer: John Arbash Meinel <john at arbash-meinel.com>
    branch nick: btree
    timestamp: Thu 2008-08-21 17:58:21 -0500
    message:
      Bringing reserved in as a keyword to write() also saves some time.
      ChunkWriter.write() is called for every key, so having an extra redirection
      The 
      was a measurable loss. Also, a small tuneup for the compressor that
      we access often. Unfortunately, there isn't much more tuning
      that we can do in that function.
    modified:
      bzrlib/chunk_writer.py         chunk_writer.py-20080630234519-6ggn4id17nipovny-1
      bzrlib/tests/test_chunk_writer.py test_chunk_writer.py-20080630234519-6ggn4id17nipovny-2
    ------------------------------------------------------------
    revno: 3641.3.26
    revision-id: john at arbash-meinel.com-20080821223604-rc82s2mo1sxcb78p
    parent: john at arbash-meinel.com-20080821222839-xy2yufgx6m6zzzt2
    committer: John Arbash Meinel <john at arbash-meinel.com>
    branch nick: btree
    timestamp: Thu 2008-08-21 17:36:04 -0500
    message:
      A couple small tweaks.
    modified:
      bzrlib/_parse_btree_c.pyx      _parse_btree_c.pyx-20080703034413-3q25bklkenti3p8p-2
    ------------------------------------------------------------
    revno: 3641.3.25
    revision-id: john at arbash-meinel.com-20080821222839-xy2yufgx6m6zzzt2
    parent: john at arbash-meinel.com-20080821215857-xfk04aivsp0ntvpd
    committer: John Arbash Meinel <john at arbash-meinel.com>
    branch nick: btree
    timestamp: Thu 2008-08-21 17:28:39 -0500
    message:
      Shave off some more time by using exact accessors.
      Basically, the inner access is using PyTuple and PyString functions
      instead of their PyObject counterparts.
    modified:
      bzrlib/_parse_btree_c.pyx      _parse_btree_c.pyx-20080703034413-3q25bklkenti3p8p-2
    ------------------------------------------------------------
    revno: 3641.3.24
    revision-id: john at arbash-meinel.com-20080821215857-xfk04aivsp0ntvpd
    parent: john at arbash-meinel.com-20080821213749-uoi9fiyg0aiea9sn
    committer: John Arbash Meinel <john at arbash-meinel.com>
    branch nick: btree
    timestamp: Thu 2008-08-21 16:58:57 -0500
    message:
      Use the compiled flatten function.
      Shows a 3-5% gain in testing and real-world conditions.
    modified:
      bzrlib/_parse_btree_c.pyx      _parse_btree_c.pyx-20080703034413-3q25bklkenti3p8p-2
      bzrlib/btree_index.py          index.py-20080624222253-p0x5f92uyh5hw734-7
    ------------------------------------------------------------
    revno: 3641.3.23
    revision-id: john at arbash-meinel.com-20080821213749-uoi9fiyg0aiea9sn
    parent: john at arbash-meinel.com-20080821213603-wkxu0as290eh2q1a
    committer: John Arbash Meinel <john at arbash-meinel.com>
    branch nick: btree
    timestamp: Thu 2008-08-21 16:37:49 -0500
    message:
      Flattened all the way down the stack.
      Next might be to try using something other than plain iteration.
      Like using PySequenceFast or some variant thereof.
    modified:
      bzrlib/_parse_btree_c.pyx      _parse_btree_c.pyx-20080703034413-3q25bklkenti3p8p-2
    ------------------------------------------------------------
    revno: 3641.3.22
    revision-id: john at arbash-meinel.com-20080821213603-wkxu0as290eh2q1a
    parent: john at arbash-meinel.com-20080821213350-z3mh2p34aiiz7nno
    committer: John Arbash Meinel <john at arbash-meinel.com>
    branch nick: btree
    timestamp: Thu 2008-08-21 16:36:03 -0500
    message:
      flatten the next level
    modified:
      bzrlib/_parse_btree_c.pyx      _parse_btree_c.pyx-20080703034413-3q25bklkenti3p8p-2
    ------------------------------------------------------------
    revno: 3641.3.21
    revision-id: john at arbash-meinel.com-20080821213350-z3mh2p34aiiz7nno
    parent: john at arbash-meinel.com-20080821212617-gng6c2akl8985wcm
    committer: John Arbash Meinel <john at arbash-meinel.com>
    branch nick: btree
    timestamp: Thu 2008-08-21 16:33:50 -0500
    message:
      Flatten the outermost str.join() into memcpy's
    modified:
      bzrlib/_parse_btree_c.pyx      _parse_btree_c.pyx-20080703034413-3q25bklkenti3p8p-2
    ------------------------------------------------------------
    revno: 3641.3.20
    revision-id: john at arbash-meinel.com-20080821212617-gng6c2akl8985wcm
    parent: john at arbash-meinel.com-20080821205458-cjk22p6p5yqfhmv7
    committer: John Arbash Meinel <john at arbash-meinel.com>
    branch nick: btree
    timestamp: Thu 2008-08-21 16:26:17 -0500
    message:
      We have a single malloc for the final output.
      We just need to collapse the intermediates.
    modified:
      bzrlib/_parse_btree_c.pyx      _parse_btree_c.pyx-20080703034413-3q25bklkenti3p8p-2
    ------------------------------------------------------------
    revno: 3641.3.19
    revision-id: john at arbash-meinel.com-20080821205458-cjk22p6p5yqfhmv7
    parent: john at arbash-meinel.com-20080821202206-nvbybzwmfvagg4jm
    committer: John Arbash Meinel <john at arbash-meinel.com>
    branch nick: btree
    timestamp: Thu 2008-08-21 15:54:58 -0500
    message:
      The flatten code now handles the no-ref-list case.
    modified:
      bzrlib/_parse_btree_c.pyx      _parse_btree_c.pyx-20080703034413-3q25bklkenti3p8p-2
      bzrlib/tests/test_btree_index.py test_index.py-20080624222253-p0x5f92uyh5hw734-13
    ------------------------------------------------------------
    revno: 3641.3.18
    revision-id: john at arbash-meinel.com-20080821202206-nvbybzwmfvagg4jm
    parent: john at arbash-meinel.com-20080821195703-ze7jwvq1r2rbgmr3
    committer: John Arbash Meinel <john at arbash-meinel.com>
    branch nick: btree
    timestamp: Thu 2008-08-21 15:22:06 -0500
    message:
      Start working on a compiled function for transforming
      a node => serialized key and line.
    modified:
      bzrlib/_parse_btree_c.pyx      _parse_btree_c.pyx-20080703034413-3q25bklkenti3p8p-2
      bzrlib/_parse_btree_py.py      _parse_btree_py.py-20080703034413-3q25bklkenti3p8p-3
      bzrlib/tests/test_btree_index.py test_index.py-20080624222253-p0x5f92uyh5hw734-13
    ------------------------------------------------------------
    revno: 3641.3.17
    revision-id: john at arbash-meinel.com-20080821195703-ze7jwvq1r2rbgmr3
    parent: john at arbash-meinel.com-20080821195353-1q7mrhcjqerr5rhh
    committer: John Arbash Meinel <john at arbash-meinel.com>
    branch nick: btree
    timestamp: Thu 2008-08-21 14:57:03 -0500
    message:
      sum(map(len, foo))) is better than using += for one-off.
    modified:
      bzrlib/chunk_writer.py         chunk_writer.py-20080630234519-6ggn4id17nipovny-1
    ------------------------------------------------------------
    revno: 3641.3.16
    revision-id: john at arbash-meinel.com-20080821195353-1q7mrhcjqerr5rhh
    parent: john at arbash-meinel.com-20080821193558-0a4qni76jso98gxn
    committer: John Arbash Meinel <john at arbash-meinel.com>
    branch nick: btree
    timestamp: Thu 2008-08-21 14:53:53 -0500
    message:
      Somewhat surprisingly, tracking bytes_out_len makes a
      large difference in performance. It drops the three_level test time
      from 9.2s => 8.2s. My best guess is that when adding with Z_SYNC_FLUSH
      we get a *lot* of small strings, and we loop over it each time
      we add another string.
      Real world tests show improvement, too.
      For mysql, repack=2,nocopy time 59.3=>57.4
      For bzr.dev, repack=2,nocopy time 9.6=>9.3
    modified:
      bzrlib/btree_index.py          index.py-20080624222253-p0x5f92uyh5hw734-7
      bzrlib/chunk_writer.py         chunk_writer.py-20080630234519-6ggn4id17nipovny-1
      bzrlib/tests/test_btree_index.py test_index.py-20080624222253-p0x5f92uyh5hw734-13
    ------------------------------------------------------------
    revno: 3641.3.15
    revision-id: john at arbash-meinel.com-20080821193558-0a4qni76jso98gxn
    parent: john at arbash-meinel.com-20080821192346-4mtm95v5g4kkxbyu
    committer: John Arbash Meinel <john at arbash-meinel.com>
    branch nick: btree
    timestamp: Thu 2008-08-21 14:35:58 -0500
    message:
      Now that we have real data, remove the copy() code.
      It didn't really benefit us over just doing another repack.
      There was a small benefit when the compressor is genuinely full,
      but that path is rarely encountered because we stop repacking by effort
      rather than by space. It also stablizes the tests for all
      platforms, because the copy() code would alter the packing
      slightly.
    modified:
      bzrlib/chunk_writer.py         chunk_writer.py-20080630234519-6ggn4id17nipovny-1
    ------------------------------------------------------------
    revno: 3641.3.14
    revision-id: john at arbash-meinel.com-20080821192346-4mtm95v5g4kkxbyu
    parent: john at arbash-meinel.com-20080820231159-lp0gxglwyxveiot7
    committer: John Arbash Meinel <john at arbash-meinel.com>
    branch nick: btree
    timestamp: Thu 2008-08-21 14:23:46 -0500
    message:
      Replace time/space benchmarks with real-world testing.
      Basically, the value was overstated, because the artifical nodes
      were significantly more compressible than real data.
      With these results, using .copy() basically is the same time/space
      trade off as allowing another repack.
      1-repack + copy() is mostly equivalent to 2-repack with no copy
      (in both time and space).
      They generally seem to be an appropriate 'sweet spot'.
      The extra pack (copy) avoids pathological behavior of not filling in
      the last bytes while only adding a small overhead.
      (approx 10% time cost at 20% space savings.)
    modified:
      bzrlib/chunk_writer.py         chunk_writer.py-20080630234519-6ggn4id17nipovny-1
    ------------------------------------------------------------
    revno: 3641.3.13
    revision-id: john at arbash-meinel.com-20080820231159-lp0gxglwyxveiot7
    parent: john at arbash-meinel.com-20080820224419-j0mtnzs2myy1n1y1
    committer: John Arbash Meinel <john at arbash-meinel.com>
    branch nick: btree
    timestamp: Wed 2008-08-20 18:11:59 -0500
    message:
      Some more data points for the time/repack tradeoff.
      Instead of always using copy() we can use a multi-step process.
      1) Always add bytes ignoring flush until _default_min_compression
      2) Add bytes using Z_SYNC_FLUSH until we hit the page limit,
         and then repack N times.
      3) After repacking N times, switch to using copy() before adding
         a new node with Z_SYNC_FLUSH.
      4) If we re-use the copy() compressor we will get max packing
         or we can just use the SYNC compressor until it is full,
         and then return the copy.
      Current stats are done using the artificial data. We should
      produce a set using real-world data so we can pick the best
      time/space tradeoff. Further, we can use this information to
      find the best space values if someone issues a 'bzr pack'
      command. Since that is generally a 'spend more time to get
      better results' command.
    modified:
      bzrlib/chunk_writer.py         chunk_writer.py-20080630234519-6ggn4id17nipovny-1
      bzrlib/tests/test_btree_index.py test_index.py-20080624222253-p0x5f92uyh5hw734-13
    ------------------------------------------------------------
    revno: 3641.3.12
    revision-id: john at arbash-meinel.com-20080820224419-j0mtnzs2myy1n1y1
    parent: john at arbash-meinel.com-20080820221200-1pnk090rjwbydavn
    committer: John Arbash Meinel <john at arbash-meinel.com>
    branch nick: btree
    timestamp: Wed 2008-08-20 17:44:19 -0500
    message:
      Collect some info on the space/time tradeoff for _max_repack.
      With the test data, we pretty much always hit max_repack before we
      get everything fully packed.
    modified:
      bzrlib/chunk_writer.py         chunk_writer.py-20080630234519-6ggn4id17nipovny-1
    ------------------------------------------------------------
    revno: 3641.3.11
    revision-id: john at arbash-meinel.com-20080820221200-1pnk090rjwbydavn
    parent: john at arbash-meinel.com-20080820205738-0tb90jyr27jhv51x
    committer: John Arbash Meinel <john at arbash-meinel.com>
    branch nick: btree
    timestamp: Wed 2008-08-20 17:12:00 -0500
    message:
      Start working on an alternate way to track compressed_chunk state.
      I tried doing a copy() before flush() but that is quite expensive.
      Both because it now does copy() but it also does a bigger flush.
      Next I'll try tracking 2 objects.
    modified:
      bzrlib/btree_index.py          index.py-20080624222253-p0x5f92uyh5hw734-7
      bzrlib/chunk_writer.py         chunk_writer.py-20080630234519-6ggn4id17nipovny-1
    ------------------------------------------------------------
    revno: 3641.3.10
    revision-id: john at arbash-meinel.com-20080820205738-0tb90jyr27jhv51x
    parent: john at arbash-meinel.com-20080820205049-7l4thdx06q971jnm
    committer: John Arbash Meinel <john at arbash-meinel.com>
    branch nick: btree
    timestamp: Wed 2008-08-20 15:57:38 -0500
    message:
      Flatten a double inner loop into a double list comprehension.
    modified:
      bzrlib/btree_index.py          index.py-20080624222253-p0x5f92uyh5hw734-7
    ------------------------------------------------------------
    revno: 3641.3.9
    revision-id: john at arbash-meinel.com-20080820205049-7l4thdx06q971jnm
    parent: john at arbash-meinel.com-20080820204134-irezo791nj00wq91
    committer: John Arbash Meinel <john at arbash-meinel.com>
    branch nick: btree
    timestamp: Wed 2008-08-20 15:50:49 -0500
    message:
      Special case around _iter_smallest when we have only
      1 iterator. Shaves another 0.5s off of the test time.
    modified:
      bzrlib/btree_index.py          index.py-20080624222253-p0x5f92uyh5hw734-7
    ------------------------------------------------------------
    revno: 3641.3.8
    revision-id: john at arbash-meinel.com-20080820204134-irezo791nj00wq91
    parent: john at arbash-meinel.com-20080820203247-12vpd1nvqhvwaexo
    committer: John Arbash Meinel <john at arbash-meinel.com>
    branch nick: btree
    timestamp: Wed 2008-08-20 15:41:34 -0500
    message:
      Move the add_key helper function into a separate func
    modified:
      bzrlib/btree_index.py          index.py-20080624222253-p0x5f92uyh5hw734-7
    ------------------------------------------------------------
    revno: 3641.3.7
    revision-id: john at arbash-meinel.com-20080820203247-12vpd1nvqhvwaexo
    parent: john at arbash-meinel.com-20080820202100-hu678q27vjhcgrrl
    committer: John Arbash Meinel <john at arbash-meinel.com>
    branch nick: btree
    timestamp: Wed 2008-08-20 15:32:47 -0500
    message:
      Make it easier to profile the btree writer time
    modified:
      bzrlib/tests/test_btree_index.py test_index.py-20080624222253-p0x5f92uyh5hw734-13
    ------------------------------------------------------------
    revno: 3641.3.6
    revision-id: john at arbash-meinel.com-20080820202100-hu678q27vjhcgrrl
    parent: john at arbash-meinel.com-20080820193429-0v5jm5zd4gggejpx
    committer: John Arbash Meinel <john at arbash-meinel.com>
    branch nick: btree
    timestamp: Wed 2008-08-20 15:21:00 -0500
    message:
      Dropping the number of nodes to 100k from 200k
      It is still enough to create a 3-level index, but all tests
      run 2x faster.
      We currently spend 1.635s creating and 3.733s adding nodes
      and 9.842s flushing in the three_level and iter_all tests.
      The test is 15s down from 68s which is a lot better.
      It would be nice to have sub second tests, though.
      For now, we'll live with this.
    modified:
      bzrlib/tests/test_btree_index.py test_index.py-20080624222253-p0x5f92uyh5hw734-13
    ------------------------------------------------------------
    revno: 3641.3.5
    revision-id: john at arbash-meinel.com-20080820193429-0v5jm5zd4gggejpx
    parent: john at arbash-meinel.com-20080820185434-t1y91biejviv7skx
    committer: John Arbash Meinel <john at arbash-meinel.com>
    branch nick: btree
    timestamp: Wed 2008-08-20 14:34:29 -0500
    message:
      For iter_all and three_level tests adjust spill-at.
      It turns out that when adding 200k entries, we spill to disk 2 times.
      Which adds 20s to the test for each spill to disk.
      So instead of 20s for 1 flush, we get 60s (for three_level).
      This does increase memory consumption, but it drops the test
      time from 64s => 35s.
    modified:
      bzrlib/chunk_writer.py         chunk_writer.py-20080630234519-6ggn4id17nipovny-1
      bzrlib/tests/test_btree_index.py test_index.py-20080624222253-p0x5f92uyh5hw734-13
    ------------------------------------------------------------
    revno: 3641.3.4
    revision-id: john at arbash-meinel.com-20080820185434-t1y91biejviv7skx
    parent: john at arbash-meinel.com-20080820183041-w4v2pat3fniihxv4
    committer: John Arbash Meinel <john at arbash-meinel.com>
    branch nick: btree
    timestamp: Wed 2008-08-20 13:54:34 -0500
    message:
      Tweak some 'sum' lines.
      change sum(len(b) for b in foo) to sum(map(len, foo))
      This is a drastic improvement under lsprof, though it
      turns out to be a minor to non-improvement in actual
      time.
      Under lsprof 272s => 123s (50%)
      without lsprof 68s => 64s (minor)
    modified:
      bzrlib/chunk_writer.py         chunk_writer.py-20080630234519-6ggn4id17nipovny-1
    ------------------------------------------------------------
    revno: 3641.3.3
    revision-id: john at arbash-meinel.com-20080820183041-w4v2pat3fniihxv4
    parent: john at arbash-meinel.com-20080820164905-mqtajmbxbxlr078g
    committer: John Arbash Meinel <john at arbash-meinel.com>
    branch nick: btree
    timestamp: Wed 2008-08-20 13:30:41 -0500
    message:
      Change the header to indicate these indexes are
      not the same as the index2 plugin.
    modified:
      bzrlib/btree_index.py          index.py-20080624222253-p0x5f92uyh5hw734-7
      bzrlib/tests/test_btree_index.py test_index.py-20080624222253-p0x5f92uyh5hw734-13
    ------------------------------------------------------------
    revno: 3641.3.2
    revision-id: john at arbash-meinel.com-20080820164905-mqtajmbxbxlr078g
    parent: john at arbash-meinel.com-20080819231201-hc361se0f7okf08y
    committer: John Arbash Meinel <john at arbash-meinel.com>
    branch nick: btree
    timestamp: Wed 2008-08-20 11:49:05 -0500
    message:
      Clean up some variable names, add some documentation.
    modified:
      bzrlib/_parse_btree_c.pyx      _parse_btree_c.pyx-20080703034413-3q25bklkenti3p8p-2
    ------------------------------------------------------------
    revno: 3641.3.1
    revision-id: john at arbash-meinel.com-20080819231201-hc361se0f7okf08y
    parent: pqm at pqm.ubuntu.com-20080819152536-6oobtmrum8e34h8l
    committer: John Arbash Meinel <john at arbash-meinel.com>
    branch nick: btree
    timestamp: Tue 2008-08-19 18:12:01 -0500
    message:
      Bring in the btree_index and chunk_writer code and their tests.
    added:
      bzrlib/_parse_btree_c.pyx      _parse_btree_c.pyx-20080703034413-3q25bklkenti3p8p-2
      bzrlib/_parse_btree_py.py      _parse_btree_py.py-20080703034413-3q25bklkenti3p8p-3
      bzrlib/btree_index.py          index.py-20080624222253-p0x5f92uyh5hw734-7
      bzrlib/chunk_writer.py         chunk_writer.py-20080630234519-6ggn4id17nipovny-1
      bzrlib/tests/test_btree_index.py test_index.py-20080624222253-p0x5f92uyh5hw734-13
      bzrlib/tests/test_chunk_writer.py test_chunk_writer.py-20080630234519-6ggn4id17nipovny-2
    modified:
      .bzrignore                     bzrignore-20050311232317-81f7b71efa2db11a
      bzrlib/tests/__init__.py       selftest.py-20050531073622-8d0e3c8845c97a64
      setup.py                       setup.py-20050314065409-02f8a0a6e3f9bc70

Diff too large for email (2939 lines, the limit is 1000).



More information about the bazaar-commits mailing list