Rev 3837: Merge in latest version of brisbane-core. in http://bzr.arbash-meinel.com/branches/bzr/brisbane/hack

John Arbash Meinel john at arbash-meinel.com
Wed Jan 7 22:23:17 GMT 2009


At http://bzr.arbash-meinel.com/branches/bzr/brisbane/hack

------------------------------------------------------------
revno: 3837
revision-id: john at arbash-meinel.com-20090107222249-ulvf8c8jy0n7o5x4
parent: john at arbash-meinel.com-20090106200148-nq22m8p3ztinglxj
parent: john at arbash-meinel.com-20090107221557-363iqonfmy1avcl2
committer: John Arbash Meinel <john at arbash-meinel.com>
branch nick: hack
timestamp: Wed 2009-01-07 16:22:49 -0600
message:
  Merge in latest version of brisbane-core.
modified:
  bzrlib/chk_map.py              chk_map.py-20081001014447-ue6kkuhofvdecvxa-1
  bzrlib/tests/test_chk_map.py   test_chk_map.py-20081001014447-ue6kkuhofvdecvxa-2
    ------------------------------------------------------------
    revno: 3802.3.3
    revision-id: john at arbash-meinel.com-20090107221557-363iqonfmy1avcl2
    parent: john at arbash-meinel.com-20090107215828-ickxzzyp75fwfb6l
    committer: John Arbash Meinel <john at arbash-meinel.com>
    branch nick: brisbane-core
    timestamp: Wed 2009-01-07 16:15:57 -0600
    message:
      Change deserialise to properly handle when there is a '\r' in the key.
      
      It turns out that bytes.splitlines() can split on a plain '\r', which breaks things.
      So instead, we use bytes.split('\n') which work correctly, though we have to remove
      the extra '' at the end.
    modified:
      bzrlib/chk_map.py              chk_map.py-20081001014447-ue6kkuhofvdecvxa-1
      bzrlib/tests/test_chk_map.py   test_chk_map.py-20081001014447-ue6kkuhofvdecvxa-2
    ------------------------------------------------------------
    revno: 3802.3.2
    revision-id: john at arbash-meinel.com-20090107215828-ickxzzyp75fwfb6l
    parent: john at arbash-meinel.com-20090107180839-li0vjvvg8bx85bcc
    parent: john at arbash-meinel.com-20090107215442-ldzqz8f55nbxhp0j
    committer: John Arbash Meinel <john at arbash-meinel.com>
    branch nick: brisbane-core
    timestamp: Wed 2009-01-07 15:58:28 -0600
    message:
      Bring in the common-prefix-extraction code.
      
      This also updates a few tests to be less dependent on the exact serialization.
      It also changes the disk signature, since repositories created with
      the new chk map pages are incompatible with existing repositories.
      
      If we really need it, we could parameterize the prefix extraction portion,
      but it doesn't seem worthwhile at this point.
    modified:
      bzrlib/chk_map.py              chk_map.py-20081001014447-ue6kkuhofvdecvxa-1
      bzrlib/repofmt/pack_repo.py    pack_repo.py-20070813041115-gjv5ma7ktfqwsjgn-1
      bzrlib/repository.py           rev_storage.py-20051111201905-119e9401e46257e3
      bzrlib/tests/test_chk_map.py   test_chk_map.py-20081001014447-ue6kkuhofvdecvxa-2
        ------------------------------------------------------------
        revno: 3813.1.16
        revision-id: john at arbash-meinel.com-20090107215442-ldzqz8f55nbxhp0j
        parent: john at arbash-meinel.com-20090107210819-nw9grn1sond000gy
        committer: John Arbash Meinel <john at arbash-meinel.com>
        branch nick: prefix
        timestamp: Wed 2009-01-07 15:54:42 -0600
        message:
          Split out the unmap_pages_in tests and add one that shows if we
          already have enough items loaded in memory, it doesn't page in anything else.
        modified:
          bzrlib/tests/test_chk_map.py   test_chk_map.py-20081001014447-ue6kkuhofvdecvxa-2
        ------------------------------------------------------------
        revno: 3813.1.15
        revision-id: john at arbash-meinel.com-20090107210819-nw9grn1sond000gy
        parent: john at arbash-meinel.com-20090107205610-q7sdumnyb2akj499
        committer: John Arbash Meinel <john at arbash-meinel.com>
        branch nick: prefix
        timestamp: Wed 2009-01-07 15:08:19 -0600
        message:
          Update the unmap_pages_in to also handle specific page-cache edge cases.
        modified:
          bzrlib/tests/test_chk_map.py   test_chk_map.py-20081001014447-ue6kkuhofvdecvxa-2
        ------------------------------------------------------------
        revno: 3813.1.14
        revision-id: john at arbash-meinel.com-20090107205610-q7sdumnyb2akj499
        parent: john at arbash-meinel.com-20090107205333-2am39m1csjs6wv6h
        committer: John Arbash Meinel <john at arbash-meinel.com>
        branch nick: prefix
        timestamp: Wed 2009-01-07 14:56:10 -0600
        message:
          Change the deep_split code to use a bigger value so we still get a split.
        modified:
          bzrlib/tests/test_chk_map.py   test_chk_map.py-20081001014447-ue6kkuhofvdecvxa-2
        ------------------------------------------------------------
        revno: 3813.1.13
        revision-id: john at arbash-meinel.com-20090107205333-2am39m1csjs6wv6h
        parent: john at arbash-meinel.com-20090107204228-v42oud9oqsmxcwpt
        committer: John Arbash Meinel <john at arbash-meinel.com>
        branch nick: prefix
        timestamp: Wed 2009-01-07 14:53:33 -0600
        message:
          We were incorrectly using '' when we wanted to use None as the common prefix.
        modified:
          bzrlib/chk_map.py              chk_map.py-20081001014447-ue6kkuhofvdecvxa-1
          bzrlib/tests/test_chk_map.py   test_chk_map.py-20081001014447-ue6kkuhofvdecvxa-2
        ------------------------------------------------------------
        revno: 3813.1.12
        revision-id: john at arbash-meinel.com-20090107204228-v42oud9oqsmxcwpt
        parent: john at arbash-meinel.com-20090107203540-qqb1nllc5dhwm81s
        committer: John Arbash Meinel <john at arbash-meinel.com>
        branch nick: prefix
        timestamp: Wed 2009-01-07 14:42:28 -0600
        message:
          Fix up the LeafNode direct tests, and add some tests with serialized
          forms that include a common prefix.
        modified:
          bzrlib/tests/test_chk_map.py   test_chk_map.py-20081001014447-ue6kkuhofvdecvxa-2
        ------------------------------------------------------------
        revno: 3813.1.11
        revision-id: john at arbash-meinel.com-20090107203540-qqb1nllc5dhwm81s
        parent: john at arbash-meinel.com-20090107202850-pe25bhlinouu6o50
        committer: John Arbash Meinel <john at arbash-meinel.com>
        branch nick: prefix
        timestamp: Wed 2009-01-07 14:35:40 -0600
        message:
          Change the multiple_maps test to also be independent of sha hash.
        modified:
          bzrlib/tests/test_chk_map.py   test_chk_map.py-20081001014447-ue6kkuhofvdecvxa-2
        ------------------------------------------------------------
        revno: 3813.1.10
        revision-id: john at arbash-meinel.com-20090107202850-pe25bhlinouu6o50
        parent: john at arbash-meinel.com-20090107202544-veb9omazsd35xfza
        committer: John Arbash Meinel <john at arbash-meinel.com>
        branch nick: prefix
        timestamp: Wed 2009-01-07 14:28:50 -0600
        message:
          Change the IterInteresting to avoid sha hashes and be serialization agnostic.
        modified:
          bzrlib/tests/test_chk_map.py   test_chk_map.py-20081001014447-ue6kkuhofvdecvxa-2
        ------------------------------------------------------------
        revno: 3813.1.9
        revision-id: john at arbash-meinel.com-20090107202544-veb9omazsd35xfza
        parent: john at arbash-meinel.com-20090107195619-5vsl7mn6k2ssy8nd
        committer: John Arbash Meinel <john at arbash-meinel.com>
        branch nick: prefix
        timestamp: Wed 2009-01-07 14:25:44 -0600
        message:
          Fix the IterInteresting tests.
          
          It would be nice to make them independent of serialization, though.
        modified:
          bzrlib/tests/test_chk_map.py   test_chk_map.py-20081001014447-ue6kkuhofvdecvxa-2
        ------------------------------------------------------------
        revno: 3813.1.8
        revision-id: john at arbash-meinel.com-20090107195619-5vsl7mn6k2ssy8nd
        parent: john at arbash-meinel.com-20090107195340-h5oy5268lgnay3qy
        committer: John Arbash Meinel <john at arbash-meinel.com>
        branch nick: prefix
        timestamp: Wed 2009-01-07 13:56:19 -0600
        message:
          Fix the other k1_k22_k23 test
        modified:
          bzrlib/tests/test_chk_map.py   test_chk_map.py-20081001014447-ue6kkuhofvdecvxa-2
        ------------------------------------------------------------
        revno: 3813.1.7
        revision-id: john at arbash-meinel.com-20090107195340-h5oy5268lgnay3qy
        parent: john at arbash-meinel.com-20090107194700-l8uh5ogzdoyrxbxg
        committer: John Arbash Meinel <john at arbash-meinel.com>
        branch nick: prefix
        timestamp: Wed 2009-01-07 13:53:40 -0600
        message:
          Fix up the k1_from_k1 test.
        modified:
          bzrlib/tests/test_chk_map.py   test_chk_map.py-20081001014447-ue6kkuhofvdecvxa-2
        ------------------------------------------------------------
        revno: 3813.1.6
        revision-id: john at arbash-meinel.com-20090107194700-l8uh5ogzdoyrxbxg
        parent: john at arbash-meinel.com-20090107194435-hq09wmppmkssxsok
        committer: John Arbash Meinel <john at arbash-meinel.com>
        branch nick: prefix
        timestamp: Wed 2009-01-07 13:47:00 -0600
        message:
          Update a bunch of tests that were using None rather than not displaying keys.
        modified:
          bzrlib/tests/test_chk_map.py   test_chk_map.py-20081001014447-ue6kkuhofvdecvxa-2
        ------------------------------------------------------------
        revno: 3813.1.5
        revision-id: john at arbash-meinel.com-20090107194435-hq09wmppmkssxsok
        parent: john at arbash-meinel.com-20090107193803-prc4a4jairkgjczp
        committer: John Arbash Meinel <john at arbash-meinel.com>
        branch nick: prefix
        timestamp: Wed 2009-01-07 13:44:35 -0600
        message:
          Properly fix up the dump_tree tests, we now suppress the keys by default.
        modified:
          bzrlib/chk_map.py              chk_map.py-20081001014447-ue6kkuhofvdecvxa-1
          bzrlib/tests/test_chk_map.py   test_chk_map.py-20081001014447-ue6kkuhofvdecvxa-2
        ------------------------------------------------------------
        revno: 3813.1.4
        revision-id: john at arbash-meinel.com-20090107193803-prc4a4jairkgjczp
        parent: john at arbash-meinel.com-20090107191812-n73bqf8o0a8igwzp
        committer: John Arbash Meinel <john at arbash-meinel.com>
        branch nick: prefix
        timestamp: Wed 2009-01-07 13:38:03 -0600
        message:
          Change child_child to use _dump_tree,
          update _dump_tree to allow suppressing the node keys.
          Since it often doesn't matter for the tests.
        modified:
          bzrlib/chk_map.py              chk_map.py-20081001014447-ue6kkuhofvdecvxa-1
          bzrlib/tests/test_chk_map.py   test_chk_map.py-20081001014447-ue6kkuhofvdecvxa-2
        ------------------------------------------------------------
        revno: 3813.1.3
        revision-id: john at arbash-meinel.com-20090107191812-n73bqf8o0a8igwzp
        parent: john at arbash-meinel.com-20090107191021-uetmsyeao353sgkp
        committer: John Arbash Meinel <john at arbash-meinel.com>
        branch nick: prefix
        timestamp: Wed 2009-01-07 13:18:12 -0600
        message:
          Change the apply_ab_empty and apply_empty_ab tests to make them slightly more sha1 independent.
          
          They generally are testing the serialized form, and not the actual key.
        modified:
          bzrlib/tests/test_chk_map.py   test_chk_map.py-20081001014447-ue6kkuhofvdecvxa-2
        ------------------------------------------------------------
        revno: 3813.1.2
        revision-id: john at arbash-meinel.com-20090107191021-uetmsyeao353sgkp
        parent: john at arbash-meinel.com-20090107183404-fj6u2hhxl81t0msa
        committer: John Arbash Meinel <john at arbash-meinel.com>
        branch nick: prefix
        timestamp: Wed 2009-01-07 13:10:21 -0600
        message:
          Change the term 'lookup' to the term 'search', as it is closer to what Robert envisioned.
        modified:
          bzrlib/chk_map.py              chk_map.py-20081001014447-ue6kkuhofvdecvxa-1
          bzrlib/tests/test_chk_map.py   test_chk_map.py-20081001014447-ue6kkuhofvdecvxa-2
        ------------------------------------------------------------
        revno: 3813.1.1
        revision-id: john at arbash-meinel.com-20090107183404-fj6u2hhxl81t0msa
        parent: john at arbash-meinel.com-20081220211649-llqcjbt02rkyk6ef
        parent: john at arbash-meinel.com-20090107180839-li0vjvvg8bx85bcc
        committer: John Arbash Meinel <john at arbash-meinel.com>
        branch nick: prefix
        timestamp: Wed 2009-01-07 12:34:04 -0600
        message:
          Bring in the tip of brisbane-core, including the remap fixes.
        modified:
          bzrlib/chk_map.py              chk_map.py-20081001014447-ue6kkuhofvdecvxa-1
          bzrlib/tests/test_chk_map.py   test_chk_map.py-20081001014447-ue6kkuhofvdecvxa-2
    ------------------------------------------------------------
    revno: 3802.3.1
    revision-id: john at arbash-meinel.com-20090107180839-li0vjvvg8bx85bcc
    parent: john at arbash-meinel.com-20081219230732-ri1i1tujtrh2d3sl
    parent: john at arbash-meinel.com-20090107180553-5sr2e5lfxcan84u5
    committer: John Arbash Meinel <john at arbash-meinel.com>
    branch nick: brisbane-core
    timestamp: Wed 2009-01-07 12:08:39 -0600
    message:
      Change _iter_nodes so that it is a generator.
      
      Change _check_remap to use _iter_nodes to eliminate the redundancy.
      We also added a 'batch_size' parameter, so that with large fan-outs
      we don't page in all the nodes unnecessarily. Which adds both direct
      computation overhead, but also causes us to thrash the page cache.
    modified:
      bzrlib/chk_map.py              chk_map.py-20081001014447-ue6kkuhofvdecvxa-1
      bzrlib/tests/test_chk_map.py   test_chk_map.py-20081001014447-ue6kkuhofvdecvxa-2
    ------------------------------------------------------------
    revno: 3802.2.7
    revision-id: john at arbash-meinel.com-20090107180553-5sr2e5lfxcan84u5
    parent: john at arbash-meinel.com-20090107175432-hw8ozprv36irblz0
    committer: John Arbash Meinel <john at arbash-meinel.com>
    branch nick: remap
    timestamp: Wed 2009-01-07 12:05:53 -0600
    message:
      Change _iter_nodes into a generator.
      
      This dramatically simplifies _check_remap, because all of the code to
      handle paging in new nodes is already present.
      
      All we needed to add was the ability to 'batch' requests for the
      get_record_stream(), instead of reading in everything at once.
    modified:
      bzrlib/chk_map.py              chk_map.py-20081001014447-ue6kkuhofvdecvxa-1
    ------------------------------------------------------------
    revno: 3802.2.6
    revision-id: john at arbash-meinel.com-20090107175432-hw8ozprv36irblz0
    parent: john at arbash-meinel.com-20090107175252-19qp2rn5cknmlqof
    committer: John Arbash Meinel <john at arbash-meinel.com>
    branch nick: remap
    timestamp: Wed 2009-01-07 11:54:32 -0600
    message:
      fix a test case that exercises the new stop-early code.
    modified:
      bzrlib/tests/test_chk_map.py   test_chk_map.py-20081001014447-ue6kkuhofvdecvxa-2
    ------------------------------------------------------------
    revno: 3802.2.5
    revision-id: john at arbash-meinel.com-20090107175252-19qp2rn5cknmlqof
    parent: john at arbash-meinel.com-20081224165308-mdwuyh9kxtmijy65
    committer: John Arbash Meinel <john at arbash-meinel.com>
    branch nick: remap
    timestamp: Wed 2009-01-07 11:52:52 -0600
    message:
      Change _check_remap to only page in a batch of children at a time.
      
      If we have more than 16 children, it is unlikely that we will be able to fit
      everything into a single node anyway, and it helps prevent us from requesting
      all 255 nodes and overflowing the page cache.
    modified:
      bzrlib/chk_map.py              chk_map.py-20081001014447-ue6kkuhofvdecvxa-1
-------------- next part --------------

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


More information about the bazaar-commits mailing list