Pushing a branch to a launchpad project when it can't stack fails

Bug #328146 reported by Mathias Gug on 2009-02-11
48
This bug affects 8 people
Affects Status Importance Assigned to Milestone
Bazaar
High
Unassigned
Launchpad itself
Undecided
Unassigned

Bug Description

I've tried to push two branches holding packaging data for mysql-dfsg-5.1 in debian and ubuntu. These branches are based on the Debian svn repository. However pushing to lp:~ubuntu-core-dev/mysql-server/pkg-{debian,ubuntu}-5.1 fails because the mysql-server project is using stacked branches.

Here is a log of the error:

(j)mathiaz@mathiaz-srv:~/src/mysql-dfsg-5.1/pkg/debian$ bzr info
Repository checkout (format: unnamed)
Location:
  repository checkout root: .
        checkout of branch: svn://svn.debian.org/pkg-mysql/branches/sid-5.1
         shared repository: /home/mathiaz/src/mysql-dfsg-5.1/pkg

(j)mathiaz@mathiaz-srv:~/src/mysql-dfsg-5.1/pkg/debian$ bzr push lp:~ubuntu-core-dev/mysql-server/pkg-debian-5.1/
Using default stacking branch /~mysql/mysql-server/mysql-5.1 at bzr+ssh://bazaar.launchpad.net/%7Eubuntu-core-dev/mysql-server/
bzr: ERROR: RemoteRepository(bzr+ssh://bazaar.launchpad.net/%7Emysql/mysql-server/mysql-5.1/.bzr/)
is not compatible with
KnitPackRepository('bzr+ssh://bazaar.launchpad.net/%7Eubuntu-core-dev/mysql-server/pkg-debian-5.1/.bzr/repository/')
different rich-root support

The format of the local repository is Bazaar RepositoryFormatKnitPack6RichRoot (bzr 1.9)

Andrew Bennetts (spiv) wrote :

Your local repository is in a format incompatible with the remote repository that bzr is trying to stack on.

The "different rich-root support" is the key part of that error. Your local repository is 1.9-rich-root, but the remote repo is not rich-root (just pack-0.92, I think).

Probably bzr should provide a way to do a push without stacking to avoid this. Perhaps you can specify a different --stacked-on branch that will avoid this.

As Andrew says, this is not a Launchpad Bazaar bug. Bazaar should either let rich root branches stack on non-rich root branches, or it should provide a way of pushing without stacking.

Changed in launchpad-bazaar:
status: New → Invalid
Andrew Bennetts (spiv) wrote :

This is a regression from pre-1.6 bzrs, which would never fail to push a new rich-root standalone branch, which is really what should happen here (although a warning that stacking was suggested and not usable would be appropriate too). So I'm marking this as Critical.

Changed in bzr:
importance: Undecided → Critical
Martin Pool (mbp) wrote :

Has this perhaps now been fixed with the changes to how stacking is set up?

I'm not sure if the bug here is "we give a poor message" or "you should be able to stack rich-root on non-rich-root" which seems like a larger bug

Changed in bzr:
importance: Critical → Medium
Martin Pool (mbp) on 2009-04-21
Changed in bzr:
status: New → Confirmed
Robert Collins (lifeless) wrote :

We'll encounter this a lot as people migrate to 2a. It may even be critical.

summary: - Pushing a non-stacked rich-root branch to a project using stacked non-
- rich-root branches fails
+ Pushing a branch to a launchpad project when it can't stack fails
Changed in bzr:
importance: Medium → High
Daniel Hahler (blueyed) wrote :

Any workarounds?

/me cannot push a branch which I wanted to propose for merging:
$ bzr push lp:~blueyed/bzr-extmerge/bcompare
Using default stacking branch /~zindar/bzr-extmerge/trunk at lp-46128656:///~blueyed/bzr-extmerge
bzr: ERROR: KnitPackRepository('lp-46128656:///~zindar/bzr-extmerge/trunk/.bzr/repository')
is not compatible with
CHKInventoryRepository('lp-46128656:///~blueyed/bzr-extmerge/bcompare/.bzr/repository')
different rich-root support

On Thu, 05 Nov 2009 11:55:31 Daniel Hahler wrote:
> Any workarounds?
>
> /me cannot push a branch which I wanted to propose for merging:
> $ bzr push lp:~blueyed/bzr-extmerge/bcompare
> Using default stacking branch /~zindar/bzr-extmerge/trunk at
> lp-46128656:///~blueyed/bzr-extmerge bzr: ERROR:
> KnitPackRepository('lp-46128656:///~zindar/bzr-extmerge/trunk/.bzr/reposit
> ory') is not compatible with
> CHKInventoryRepository('lp-46128656:///~blueyed/bzr-extmerge/bcompare/.bzr/
> repository') different rich-root support

We really need a way to have a fallback. The trunk branch should be upgraded.

Michael Hudson-Doyle (mwhudson) wrote :

Daniel, if you just try again after getting that message it will work I think. Obscure but true...

Lenz Grimmer (lenzgr) wrote :

I'm facing a similar problem when trying to push some recently merged changes:

lenz@thebe:~/work/mylvmbackup/trunk> bzr push
Using saved push location: bzr+ssh://<email address hidden>/~lenzgr/mylvmbackup/trunk/
bzr: ERROR: RemoteRepository(bzr+ssh://<email address hidden>/~lenzgr/mylvmbackup/trunk/.bzr/)
is not compatible with
CHKInventoryRepository('file:///home/lenz/work/mylvmbackup/.bzr/repository/')
different rich-root support
lenz@thebe:~/work/mylvmbackup/trunk> bzr version
Bazaar (bzr) 2.0.3
  Python interpreter: /usr/bin/python 2.6.2
  Python standard library: /usr/lib/python2.6
  Platform: Linux-2.6.31.8-0.1-desktop-i686-with-SuSE-11.2-i586
  bzrlib: /usr/lib/python2.6/site-packages/bzrlib
  Bazaar configuration: /home/lenz/.bazaar
  Bazaar log file: /home/lenz/.bzr.log

Copyright 2005, 2006, 2007, 2008, 2009 Canonical Ltd.
http://bazaar-vcs.org/

bzr comes with ABSOLUTELY NO WARRANTY. bzr is free software, and
you may use, modify and redistribute it under the terms of the GNU
General Public License version 2 or later.

lenz@thebe:~/work/mylvmbackup/trunk> bzr info
Repository tree (format: 2a)
Location:
  shared repository: /home/lenz/work/mylvmbackup
  repository branch: .

Related branches:
    push branch: bzr+ssh://<email address hidden>/~lenzgr/mylvmbackup/trunk/
  parent branch: bzr+ssh://<email address hidden>/~lenzgr/mylvmbackup/trunk/
  submit branch: /home/lenz/work/mylvmbackup/non-gnu-merge

Lenz Grimmer (lenzgr) wrote :

Please disregard my previous post - I wasn't aware that it's possible to do a "bzr upgrade" on remote repositories (e.g. the one on Launchpad). This fixed the issue for me.

Jelmer Vernooij (jelmer) on 2011-01-15
tags: added: stacking
Jelmer Vernooij (jelmer) on 2017-11-08
tags: added: check-for-breezy
Jelmer Vernooij (jelmer) on 2017-11-11
tags: removed: check-for-breezy
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers