Rev 3386: Merge final tweak of fix for error about "attempt to add line-delta in file:///home/pqm/archives/thelove/bzr/%2Btrunk/
Canonical.com Patch Queue Manager
pqm at pqm.ubuntu.com
Mon Apr 28 09:33:26 BST 2008
At file:///home/pqm/archives/thelove/bzr/%2Btrunk/
------------------------------------------------------------
revno: 3386
revision-id:pqm at pqm.ubuntu.com-20080428083317-x033hd0yn73mqaj7
parent: pqm at pqm.ubuntu.com-20080428055446-p0m8jwv1jzegn933
parent: andrew.bennetts at canonical.com-20080428062416-f7niegy7ekq4oftx
committer: Canonical.com Patch Queue Manager <pqm at pqm.ubuntu.com>
branch nick: +trunk
timestamp: Mon 2008-04-28 09:33:17 +0100
message:
Merge final tweak of fix for error about "attempt to add line-delta
in non-delta knit". (Andrew Bennetts)
modified:
NEWS NEWS-20050323055033-4e00b5db738777ff
bzrlib/knit.py knit.py-20051212171256-f056ac8f0fbe1bd9
------------------------------------------------------------
revno: 3370.1.10
revision-id:andrew.bennetts at canonical.com-20080428062416-f7niegy7ekq4oftx
parent: andrew.bennetts at canonical.com-20080428055807-qfx4kdbgl3tg2zng
parent: pqm at pqm.ubuntu.com-20080428055446-p0m8jwv1jzegn933
committer: Andrew Bennetts <andrew.bennetts at canonical.com>
branch nick: bug-217701
timestamp: Mon 2008-04-28 16:24:16 +1000
message:
Merge from bzr.dev.
modified:
Makefile Makefile-20050805140406-d96e3498bb61c5bb
NEWS NEWS-20050323055033-4e00b5db738777ff
bzr bzr.py-20050313053754-5485f144c7006fa6
bzrlib/__init__.py __init__.py-20050309040759-33e65acf91bbcd5d
bzrlib/builtins.py builtins.py-20050830033751-fc01482b9ca23183
bzrlib/log.py log.py-20050505065812-c40ce11702fe5fb1
bzrlib/remote.py remote.py-20060720103555-yeeg2x51vn0rbtdp-1
bzrlib/tests/blackbox/test_version.py test_version.py-20070312060045-ol7th9z035r3im3d-1
bzrlib/tests/test_store.py teststore.py-20050826022702-f6caadb647395769
doc/developers/HACKING.txt HACKING-20050805200004-2a5dc975d870f78c
------------------------------------------------------------
revno: 3370.1.9
revision-id:andrew.bennetts at canonical.com-20080428055807-qfx4kdbgl3tg2zng
parent: andrew.bennetts at canonical.com-20080428055606-gu9izdt55qe9t7gn
committer: Andrew Bennetts <andrew.bennetts at canonical.com>
branch nick: bug-217701
timestamp: Mon 2008-04-28 15:58:07 +1000
message:
Add NEWS entry.
modified:
NEWS NEWS-20050323055033-4e00b5db738777ff
------------------------------------------------------------
revno: 3370.1.8
revision-id:andrew.bennetts at canonical.com-20080428055606-gu9izdt55qe9t7gn
parent: andrew.bennetts at canonical.com-20080428054637-w1t3l02zixduk0fr
committer: Andrew Bennetts <andrew.bennetts at canonical.com>
branch nick: bug-217701
timestamp: Mon 2008-04-28 15:56:06 +1000
message:
Extract a _convert_line_delta_to_fulltext helper.
modified:
bzrlib/knit.py knit.py-20051212171256-f056ac8f0fbe1bd9
------------------------------------------------------------
revno: 3370.1.7
revision-id:andrew.bennetts at canonical.com-20080428054637-w1t3l02zixduk0fr
parent: andrew.bennetts at canonical.com-20080418064515-wnqz648mpegu5x60
parent: pqm at pqm.ubuntu.com-20080428032913-4fgik9du2kpxl8sf
committer: Andrew Bennetts <andrew.bennetts at canonical.com>
branch nick: bug-217701
timestamp: Mon 2008-04-28 15:46:37 +1000
message:
Merge bzr.dev.
removed:
bzrlib/xml6.py xml6.py-20060823042456-dbaaq4atrche7xy5-1
added:
bzrlib/xml5.py xml5.py-20080328030717-t9guwinq8hom0ar3-1
bzrlib/xml6.py xml6.py-20080327235607-1skmbg4o9cd1o636-1
renamed:
bzrlib/xml5.py => bzrlib/xml8.py xml5.py-20050907032657-aac8f960815b66b1
modified:
NEWS NEWS-20050323055033-4e00b5db738777ff
bzrlib/builtins.py builtins.py-20050830033751-fc01482b9ca23183
bzrlib/diff.py diff.py-20050309040759-26944fbbf2ebbf36
bzrlib/errors.py errors.py-20050309040759-20512168c4e14fbd
bzrlib/fetch.py fetch.py-20050818234941-26fea6105696365d
bzrlib/help_topics/__init__.py help_topics.py-20060920210027-rnim90q9e0bwxvy4-1
bzrlib/log.py log.py-20050505065812-c40ce11702fe5fb1
bzrlib/msgeditor.py msgeditor.py-20050901111708-ef6d8de98f5d8f2f
bzrlib/plugins/launchpad/lp_directory.py lp_indirect.py-20070126012204-de5rugwlt22c7u7e-1
bzrlib/reconfigure.py reconfigure.py-20070908040425-6ykgo7escxhyrg9p-1
bzrlib/repofmt/knitrepo.py knitrepo.py-20070206081537-pyy4a00xdas0j4pf-1
bzrlib/repository.py rev_storage.py-20051111201905-119e9401e46257e3
bzrlib/revisionspec.py revisionspec.py-20050907152633-17567659fd5c0ddb
bzrlib/smart/repository.py repository.py-20061128022038-vr5wy5bubyb8xttk-1
bzrlib/smart/server.py server.py-20061110062051-chzu10y32vx8gvur-1
bzrlib/tests/interrepository_implementations/test_interrepository.py test_interrepository.py-20060220061411-1ec13fa99e5e3eee
bzrlib/tests/intertree_implementations/__init__.py __init__.py-20060724101752-09ysswo1a92uqyoz-3
bzrlib/tests/repository_implementations/test_fetch.py test_fetch.py-20070814052151-5cxha9slx4c93uog-1
bzrlib/tests/repository_implementations/test_repository.py test_repository.py-20060131092128-ad07f494f5c9d26c
bzrlib/tests/test_log.py testlog.py-20050728115707-1a514809d7d49309
bzrlib/tests/test_reconfigure.py test_reconfigure.py-20070908040425-6ykgo7escxhyrg9p-2
bzrlib/tests/test_repository.py test_repository.py-20060131075918-65c555b881612f4d
bzrlib/tests/test_selftest.py test_selftest.py-20051202044319-c110a115d8c0456a
bzrlib/tests/test_xml.py test_xml.py-20050905091053-80b45588931a9b35
bzrlib/tests/tree_implementations/__init__.py __init__.py-20060717075546-420s7b0bj9hzeowi-2
bzrlib/tests/workingtree_implementations/__init__.py __init__.py-20060203003124-b2aa5aca21a8bfad
bzrlib/transport/ftp.py ftp.py-20051116161804-58dc9506548c2a53
bzrlib/xml_serializer.py xml.py-20050309040759-57d51586fdec365d
doc/en/user-guide/controlling_registration.txt controlling_registra-20071121073725-0corxykv5irjal00-3
doc/en/user-guide/sending_changes.txt sending_changes.txt-20071123154453-dk2mjhrg1vpjm5w2-4
bzrlib/xml8.py xml5.py-20050907032657-aac8f960815b66b1
------------------------------------------------------------
revno: 3370.1.6
revision-id:andrew.bennetts at canonical.com-20080418064515-wnqz648mpegu5x60
parent: andrew.bennetts at canonical.com-20080418064431-23iqugpuy08jb20m
committer: Andrew Bennetts <andrew.bennetts at canonical.com>
branch nick: bug-217701
timestamp: Fri 2008-04-18 16:45:15 +1000
message:
Add test for line-deltas inserted into a non-delta knit.
modified:
bzrlib/tests/test_knit.py test_knit.py-20051212171302-95d4c00dd5f11f2b
------------------------------------------------------------
revno: 3370.1.5
revision-id:andrew.bennetts at canonical.com-20080418064431-23iqugpuy08jb20m
parent: andrew.bennetts at canonical.com-20080418063545-y3qafi033t4c6gfg
committer: Andrew Bennetts <andrew.bennetts at canonical.com>
branch nick: bug-217701
timestamp: Fri 2008-04-18 16:44:31 +1000
message:
Rename test methods to be a little clearer after reorganisation.
modified:
bzrlib/tests/test_knit.py test_knit.py-20051212171302-95d4c00dd5f11f2b
------------------------------------------------------------
revno: 3370.1.4
revision-id:andrew.bennetts at canonical.com-20080418063545-y3qafi033t4c6gfg
parent: andrew.bennetts at canonical.com-20080418061729-wpw12iplmar8ot8s
committer: Andrew Bennetts <andrew.bennetts at canonical.com>
branch nick: bug-217701
timestamp: Fri 2008-04-18 16:35:45 +1000
message:
Organise data stream tests in test_knit slightly better.
modified:
bzrlib/tests/test_knit.py test_knit.py-20051212171302-95d4c00dd5f11f2b
------------------------------------------------------------
revno: 3370.1.3
revision-id:andrew.bennetts at canonical.com-20080418061729-wpw12iplmar8ot8s
parent: andrew.bennetts at canonical.com-20080418060508-cy5uqu8gn4e62qki
committer: Andrew Bennetts <andrew.bennetts at canonical.com>
branch nick: bug-217701
timestamp: Fri 2008-04-18 16:17:29 +1000
message:
Add a comment.
modified:
bzrlib/store/revision/knit.py knit.py-20060303020652-de5fa299e941a3c7
------------------------------------------------------------
revno: 3370.1.2
revision-id:andrew.bennetts at canonical.com-20080418060508-cy5uqu8gn4e62qki
parent: andrew.bennetts at canonical.com-20080418021607-1fwitfz49w32vjmo
committer: Andrew Bennetts <andrew.bennetts at canonical.com>
branch nick: bug-217701
timestamp: Fri 2008-04-18 16:05:08 +1000
message:
Always ensure that 'revisions' versioned file in a knit store is non-delta.
modified:
bzrlib/repofmt/knitrepo.py knitrepo.py-20070206081537-pyy4a00xdas0j4pf-1
bzrlib/store/revision/knit.py knit.py-20060303020652-de5fa299e941a3c7
------------------------------------------------------------
revno: 3370.1.1
revision-id:andrew.bennetts at canonical.com-20080418021607-1fwitfz49w32vjmo
parent: pqm at pqm.ubuntu.com-20080416172809-mq3p3rm6q3vefyyz
committer: Andrew Bennetts <andrew.bennetts at canonical.com>
branch nick: bug-217701
timestamp: Fri 2008-04-18 12:16:07 +1000
message:
Tentative fix for 217701.
modified:
bzrlib/knit.py knit.py-20051212171256-f056ac8f0fbe1bd9
bzrlib/repofmt/knitrepo.py knitrepo.py-20070206081537-pyy4a00xdas0j4pf-1
=== modified file 'NEWS'
--- a/NEWS 2008-04-28 05:54:46 +0000
+++ b/NEWS 2008-04-28 06:24:16 +0000
@@ -35,6 +35,9 @@
* Fetching all revisions from a repository does not cause pack collisions.
(Robert Collins, Aaron Bentley, #212908)
+ * Fix error about "attempt to add line-delta in non-delta knit".
+ (Andrew Bennetts, #217701)
+
* Set SO_REUSEADDR on server sockets of ``bzr serve`` to avoid problems
rebinding the socket when starting the server a second time.
(John Arbash Meinel, Martin Pool, #164288)
=== modified file 'bzrlib/knit.py'
--- a/bzrlib/knit.py 2008-04-21 06:42:45 +0000
+++ b/bzrlib/knit.py 2008-04-28 06:24:16 +0000
@@ -847,23 +847,24 @@
# We received a line-delta record for a non-delta knit.
# Convert it to a fulltext.
gzip_bytes = reader_callable(length)
- lines, sha1 = self._data._parse_record(
- version_id, gzip_bytes)
- delta = self.factory.parse_line_delta(lines,
- version_id)
- content = self.factory.make(
- self.get_lines(parents[0]), parents[0])
- content.apply_delta(delta, version_id)
- digest, len, content = self.add_lines(
- version_id, parents, content.text())
- if digest != sha1:
- raise errors.VersionedFileInvalidChecksum(version)
+ self._convert_line_delta_to_fulltext(
+ gzip_bytes, version_id, parents)
continue
self._add_raw_records(
[(version_id, options, parents, length)],
reader_callable(length))
+ def _convert_line_delta_to_fulltext(self, gzip_bytes, version_id, parents):
+ lines, sha1 = self._data._parse_record(version_id, gzip_bytes)
+ delta = self.factory.parse_line_delta(lines, version_id)
+ content = self.factory.make(self.get_lines(parents[0]), parents[0])
+ content.apply_delta(delta, version_id)
+ digest, len, content = self.add_lines(
+ version_id, parents, content.text())
+ if digest != sha1:
+ raise errors.VersionedFileInvalidChecksum(version_id)
+
def _knit_from_datastream(self, (format, data_list, reader_callable)):
"""Create a knit object from a data stream.
More information about the bazaar-commits
mailing list