2a format should be the default but some tests fail

Bug #398668 reported by Martin Pool
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Bazaar
Fix Released
Critical
Robert Collins

Bug Description

The 2a format should be the default for bzr 2.0.

We should do this: when there are no serious bugs related to this format, and preferably not too close to the release, so there can be some pre-testing by developers.

Related branches

Revision history for this message
Martin Pool (mbp) wrote :

I have a plugin at https://code.launchpad.net/mbp/+junk/default2a that globally sets bzr's default format to 2a. Use care if you install that.

Using this plugin and running selftest shows several failures. The first I'm looking at is

test: bzrlib.tests.blackbox.test_branch.TestBranch.test_branch_hardlink
failure: bzrlib.tests.blackbox.test_branch.TestBranch.test_branch_hardlink [
RemoteException: Traceback (most recent call last):
  File "/home/mbp/bzr/398668-2a-default/bzrlib/tests/blackbox/test_branch.py", line 99, in test_branch_hardlink
    self.assertEqual(source_stat, target_stat)
AssertionError: not equal:
a = posix.stat_result(st_mode=33188, st_ino=745538, st_dev=64519L, st_nlink=1, st_uid=1000, st_gid=1000, st_size=25, st_atime=1249265516, st_mtime=1249265516, st_ctime=1249265516)
b = posix.stat_result(st_mode=33188, st_ino=745583, st_dev=64519L, st_nlink=1, st_uid=1000, st_gid=1000, st_size=25, st_atime=1249265516, st_mtime=1249265516, st_ctime=1249265516)

apparently meaning that branch --hardlink does not hardlink the working copy files if it fails.

Changed in bzr:
status: Confirmed → In Progress
assignee: nobody → Martin Pool (mbp)
Revision history for this message
Martin Pool (mbp) wrote :

The issue in the previous comment is bug 408193.

Bug 375013 is another failure, the only one in the hpss blackbox tests. I haven't looked at it yet.

Bug 408199 is another shallow failure, now fixed.

Martin Pool (mbp)
summary: - 2a format should be the default
+ 2a format should be the default but some tests fail
Revision history for this message
Martin Pool (mbp) wrote :
Download full text (9.9 KiB)

Just skimming over the current failures - bug 408824 and also there are also some failures related to stacking:

test: bzrlib.tests.blackbox.test_status.BranchStatus.test_tree_status_specific_files
error: bzrlib.tests.blackbox.test_status.BranchStatus.test_tree_status_specific_files [
RemoteException: Traceback (most recent call last):
  File "/home/mbp/bzr/398668-2a-default/bzrlib/tests/blackbox/test_status.py", line 259, in test_tree_status_specific_files
    short=True, revision=revs)
  File "/home/mbp/bzr/398668-2a-default/bzrlib/status.py", line 162, in show_tree_status
    if nonexistents:
UnboundLocalError: local variable 'nonexistents' referenced before assignment

]
test: bzrlib.tests.blackbox.test_status.CheckoutStatus.test_tree_status_specific_files
error: bzrlib.tests.blackbox.test_status.CheckoutStatus.test_tree_status_specific_files [
RemoteException: Traceback (most recent call last):
  File "/home/mbp/bzr/398668-2a-default/bzrlib/tests/blackbox/test_status.py", line 259, in test_tree_status_specific_files
    short=True, revision=revs)
  File "/home/mbp/bzr/398668-2a-default/bzrlib/status.py", line 162, in show_tree_status
    if nonexistents:
UnboundLocalError: local variable 'nonexistents' referenced before assignment

]

and in testing stacking across hpss

test: bzrlib.tests.per_bzrdir.test_bzrdir.TestBzrDir.test_format_initialize_on_transport_ex_default_stack_on(BzrDirMetaFormat1)
error: bzrlib.tests.per_bzrdir.test_bzrdir.TestBzrDir.test_format_initialize_on_transport_ex_default_stack_on(BzrDirMetaFormat1) [
RemoteException: Traceback (most recent call last):
  File "/home/mbp/bzr/398668-2a-default/bzrlib/tests/per_bzrdir/test_bzrdir.py", line 1272, in test_format_initialize_on_transport_ex_default_s
tack_on
    t, need_meta=True, repo_format_name=repo_name, stacked_on=None)
  File "/home/mbp/bzr/398668-2a-default/bzrlib/tests/per_bzrdir/test_bzrdir.py", line 1323, in assertInitializeEx
    self.bzrdir_format.initialize_on_transport_ex(t, **kwargs)
  File "/home/mbp/bzr/398668-2a-default/bzrlib/bzrdir.py", line 1948, in initialize_on_transport_ex
    make_working_trees, shared_repo)
  File "/home/mbp/bzr/398668-2a-default/bzrlib/bzrdir.py", line 3624, in acquire_repository
    possible_transports=[self._bzrdir.transport])
  File "/home/mbp/bzr/398668-2a-default/bzrlib/bzrdir.py", line 3571, in _add_fallback
    repository.add_fallback_repository(stacked_repo)
  File "/home/mbp/bzr/398668-2a-default/bzrlib/repository.py", line 965, in add_fallback_repository
    self._check_fallback_repository(repository)
  File "/home/mbp/bzr/398668-2a-default/bzrlib/repository.py", line 981, in _check_fallback_repository
    return InterRepository._assert_same_model(self, repository)
  File "/home/mbp/bzr/398668-2a-default/bzrlib/repository.py", line 3308, in _assert_same_model
    "different rich-root support")
IncompatibleRepositories: CHKInventoryRepository('file:///tmp/testbzr-4TD5P3.tmp/bzrlib.tests.per_bzrdir.test_bzrdir.TestBzrDir.test_format_ini
tialize_on_transport_ex_default_stack_on%28BzrDirMetaFormat1%29/work/stack-on/.bzr/repository/')
is not compatible with
KnitPackRepository('file:///tmp/testbzr-4TD5P3.tmp/bzrlib.tests.p...

Changed in bzr:
importance: High → Critical
Revision history for this message
Robert Collins (lifeless) wrote :

I've made a branch lp:~lifeless/bzr/bug-398668 which sets the format to 2a. Attached to this bug is a subunit log of the failing tests.

Revision history for this message
Martin Pool (mbp) wrote : Re: [Bug 398668] Re: 2a format should be the default but some tests fail

2009/8/12 Robert Collins <email address hidden>:
> I've made a branch lp:~lifeless/bzr/bug-398668 which sets the format to
> 2a. Attached to this bug is a subunit log of the failing tests.

Be aware I might still have some fixes in review or awaiting merge.

--
Martin <http://launchpad.net/~mbp/>

Revision history for this message
Robert Collins (lifeless) wrote : Re: [Bug 398668] Re: 2a format should be the default but some tests fail

On Wed, 2009-08-12 at 11:11 +0000, Martin Pool wrote:
> 2009/8/12 Robert Collins <email address hidden>:
> > I've made a branch lp:~lifeless/bzr/bug-398668 which sets the format to
> > 2a. Attached to this bug is a subunit log of the failing tests.
>
> Be aware I might still have some fixes in review or awaiting merge.

Thats true; OTOH I looked at all the branches, and the hardlink one
hasn't got consensus; the status one I landed, and I didn't see any
other completed branches.

-Rob

Revision history for this message
Robert Collins (lifeless) wrote :

nb: my subunit run was missing a default change for branch and trees; I'll do another full run once the known failures are fixed.

Revision history for this message
Martin Pool (mbp) wrote : Re: [Bug 398668] Re: 2a format should be the default but some tests fail

2009/8/13 Robert Collins <email address hidden>:
> On Wed, 2009-08-12 at 11:11 +0000, Martin Pool wrote:
>> 2009/8/12 Robert Collins <email address hidden>:
>> > I've made a branch lp:~lifeless/bzr/bug-398668 which sets the format to
>> > 2a. Attached to this bug is a subunit log of the failing tests.
>>
>> Be aware I might still have some fixes in review or awaiting merge.
>
> Thats true; OTOH I looked at all the branches, and the hardlink one
> hasn't got consensus; the status one I landed, and I didn't see any
> other completed branches.

OK, thanks for checking.

My patch to give a warning was merged in
https://code.edge.launchpad.net/~mbp/bzr/408193-hardlink

The rest of that is still a bug but not a 2.0 blocker.

--
Martin <http://launchpad.net/~mbp/>

Revision history for this message
Robert Collins (lifeless) wrote :

My branch here has a number of fixes:
bzr+ssh://bazaar.launchpad.net/~lifeless/bzr/bug-398668

Many are pending review in lp; others aren't separate enough to the act of changing are just done in the branch.

Revision history for this message
Robert Collins (lifeless) wrote :

bzr+ssh://bazaar.launchpad.net/~lifeless/bzr/bug-398668 is looking good:
FAILED (failures=12, errors=16, known_failure_count=23)

Revision history for this message
Martin Pool (mbp) wrote :

OK, so there now seem to be more failures in stacking; they might be fixed by the default-rich-root fix, or maybe not.

I'm seeing several failures still like this:

FAIL: per_branch.test_stacking.TestStacking.test_clone_stacking_policy_handling(BzrBranchFormat5)
    UnstackableBranchFormat not raised

FAIL: per_branch.test_stacking.TestStacking.test_clone_stacking_policy_handling(BzrBranchFormat6)
    UnstackableBranchFormat not raised

ERROR: per_branch.test_stacking.TestStacking.test_sprout_stacking_policy_handling(BzrBranchFormat5)
    The branch 'file:///tmp/testbzr-CUXNDJ.tmp/bzrlib.tests.per_branch.test_stacking.TestStacking.test_sprout_stacking_policy_handling%28BzrBranchFormat5%29/work/target/'(Branch format 5) is not a stackable format. You will need to upgrade the branch to permit branch stacking.

ERROR: per_branch.test_stacking.TestStacking.test_sprout_stacking_policy_handling(BzrBranchFormat6)
    The branch 'file:///tmp/testbzr-CUXNDJ.tmp/bzrlib.tests.per_branch.test_stacking.TestStacking.test_sprout_stacking_policy_handling%28BzrBranchFormat6%29/work/target/'(Branch format 6) is not a stackable format. You will need to upgrade the branch to permit branch stacking.

ERROR: per_branch.test_stacking.TestStacking.test_sprout_to_smart_server_stacking_policy_handling(BzrBranchFormat5)
    The branch 'bzr://127.0.0.1:54204/extra/target/'(Remote BZR Branch) is not a stackable format. You will need to upgrade the branch to permit branch stacking.

ERROR: per_branch.test_stacking.TestStacking.test_sprout_to_smart_server_stacking_policy_handling(BzrBranchFormat6)
    The branch 'bzr://127.0.0.1:52552/extra/target/'(Remote BZR Branch) is not a stackable format. You will need to upgrade the branch to permit branch stacking.

Revision history for this message
Robert Collins (lifeless) wrote : Re: [Bug 398668] Re: 2a format should be the default but some tests fail

On Fri, 2009-08-14 at 12:21 +0000, Martin Pool wrote:
> OK, so there now seem to be more failures in stacking; they might be
> fixed by the default-rich-root fix, or maybe not.

I think we should delete default-rich-root as part of the move to 2.0.

-Rob

Revision history for this message
Martin Pool (mbp) wrote : Re: [Bug 398668] Re: 2a format should be the default but some tests fail

2009/8/15 Robert Collins <email address hidden>:
> On Fri, 2009-08-14 at 12:21 +0000, Martin Pool wrote:
>> OK, so there now seem to be more failures in stacking; they might be
>> fixed by the default-rich-root fix, or maybe not.
>
> I think we should delete default-rich-root as part of the move to 2.0.

At least some of these were https://bugs.edge.launchpad.net/bzr/+bug/413541.

I'd be happy to delete that name; we'll also need to remove some code
that internally relies on it; it's not quite totally trivial. Maybe
we could hide it.

--
Martin <http://launchpad.net/~mbp/>

Revision history for this message
Martin Pool (mbp) wrote :

2009/8/15 Robert Collins <email address hidden>:
> On Fri, 2009-08-14 at 12:21 +0000, Martin Pool wrote:
>> OK, so there now seem to be more failures in stacking; they might be
>> fixed by the default-rich-root fix, or maybe not.
>
> I think we should delete default-rich-root as part of the move to 2.0.

My default2a plugin now does that and I'll post more test results with
that in place.

--
Martin <http://launchpad.net/~mbp/>

Revision history for this message
John A Meinel (jameinel) wrote : Re: [Bug 398668] Re: 2a format should be the default but some tests fail

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Martin Pool wrote:
> 2009/8/15 Robert Collins <email address hidden>:
>> On Fri, 2009-08-14 at 12:21 +0000, Martin Pool wrote:
>>> OK, so there now seem to be more failures in stacking; they might be
>>> fixed by the default-rich-root fix, or maybe not.
>> I think we should delete default-rich-root as part of the move to 2.0.
>
> At least some of these were
> https://bugs.edge.launchpad.net/bzr/+bug/413541.
>
> I'd be happy to delete that name; we'll also need to remove some code
> that internally relies on it; it's not quite totally trivial. Maybe
> we could hide it.
>

I would also mention that it might break scripts that people were using
to convert from svn, for example.

I would rather make it hidden than removed. Or possibly deprecate it.

John
=:->
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (Cygwin)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAkqGvl8ACgkQJdeBCYSNAAMXvACePXHctuUoRAT4xOC+cliPR74U
UQ8AoJUWSwJ9muLSp+WpudUF5WSEnjSk
=XViw
-----END PGP SIGNATURE-----

Revision history for this message
Robert Collins (lifeless) wrote :

hidden would be fine with me.

The reason I want it to go from the ui is that its == 'default' now, and
will add confusion.

-Rob

Revision history for this message
Robert Collins (lifeless) wrote :

I'm driving this at the moment ;)
My bzr+ssh://bazaar.launchpad.net/~lifeless/bzr/bug-398668 is down to 12 errors based on the reduce pattern. Nearly time for a full run and cleanup.

Changed in bzr:
assignee: Martin Pool (mbp) → Robert Collins (lifeless)
Revision history for this message
Robert Collins (lifeless) wrote :

No tests failing (of the test that were failing) in my branch now.

Will run full suite tomorrow and land the many reviewed incremental fixes.

Revision history for this message
Robert Collins (lifeless) wrote :

4 new failures:
per_repository.test_repository.TestRepository.test_clone_unstackable_branch_preserves_stackable_repo_format(RepositoryFormatKnit1)
per_repository.test_repository.TestRepository.test_clone_unstackable_branch_preserves_stackable_repo_format(RepositoryFormat7)
bzrlib.tests.test_branch.TestDefaultFormat.test_default_format
bzrlib.tests.test_remote.TestRepositoryInsertStream.test_stream_with_inventory_deltas

Revision history for this message
Robert Collins (lifeless) wrote :

fixed

Changed in bzr:
status: In Progress → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.