bugmonotone - Bugs: bug #13032, cvs_import generates wrong data on...

 
 

You are not allowed to post comments on this tracker with your current authentication level.

bug #13032: cvs_import generates wrong data on branch

Submitted by:  None
Submitted on:  Mon 09 May 2005 04:13:48 AM UTC  
 
Category: storage systemSeverity: 3 - Normal
Item Group: incorrect behaviorStatus: Fixed
Privacy: PublicAssigned to: None
Open/Closed: Closed
mtn version --full: 

monotone 0.19 (base revision: ebc417b19960d8e2708ff67b068a3fbd3c1a98e0)
Running on: Linux 2.6.11-1.1287_FC4 #1 Thu May 5 16:31:22 EDT 2005 i686
Changes since base revision:

new_manifest [4481f071cb8a82ea200bac72a6c4fbddb9f7c796]

old_revision [ebc417b19960d8e2708ff67b068a3fbd3c1a98e0]
old_manifest [25ba21074f39b02970747388a00bd056f1fa264d]

patch "monotone.spec"
from [1619421422b66900ee8324ed77c7c82f34d0752d]
to [8e99896580d1ccfc9671e92b8c81577801e24d78]

patch "po/monotone.pot"
from [85997f09b04320ce8cbc0972e57a3fbfb5be38da]
to [65322382b64f6f463a6ea66a9d94c8b37f888cc5]

Generated from data cached in the distribution;
further changes may have been made.

Generated from data cached in the distribution;
further changes may have been made.

Generated from data cached in the distribution;
further changes may have been made.

Thu 12 May 2005 03:20:47 AM UTC, comment #2:

This problem is not fixed. Yes, the branch now contains a different revision of ChangeLog but it's still not the right one. I see this

2004-01-05 Ulrich Drepper <drepper@redhat.com>

* Makefile.am: Support separate libelf built.

* elfutils.spec.in: Create separata elfutils-libelf-devel package.
Install libdw DSOs.

* configure.ac (AC_CONFIG_SRCDIR): Use libelf/libelf.h as the file
name.
[...]

but it should be

2005-02-22 Ulrich Drepper <drepper@redhat.com>

* Makefile.am (all_SUBDIRS): Don't add doc subdir for now.
* configure.ac: Don't use doc subdir for now.

2005-02-15 Ulrich Drepper <drepper@redhat.com>

* configure.ac: Remove AM_GNU_GETTEXT use. Use only AM_PO_SUBDIRS.

[...]

Take a look at the ChangeLog,v file. The checked out version is something like version 1.10 while the branch version is 1.23.0.2 (with 1.23 being the head).

I already told Nathaniel in a mail that I think there is a fundamental problem if such a bug can appear at all.

The revisions associated with a branch point in the different files have absolutely no correlation. In one file it can be 1.1.1.1, in another 1.23. Each file must be examined individually and the branch point need to be determined. If, as in this bug case, the removal of a file has any influence on ther content of the file on another branch, the monotone importer does not regard the branch points as independent.

I don't know enough about the monotone importer. But I suspect you need to take a step back and look at the problem differently than before.

Anonymous
Wed 11 May 2005 03:44:38 PM UTC, comment #1:

The problem seems to be that asm-tst3.c is not altered from the initial import before the .disasm branch is made. CVS uses the version id of 1.1.1.1 (as opposed to 1.1), so .disasm appears to be a branch from the import branch, not from the main trunk.

The asm-tst4.c file is handled later, so .disasm just takes the existing (wrong) branchpoint.

As a workaround (since we don't handle multiple parents in the cvs_import code) I've added a check which will pick the branchpoint closest to the trunk when there are conflicting branches. This handles the "cvs import" case correctly.

This should fix the problem in revision 79000f6dd06eae1e415ccd0897218bb0c27279fa or later.

Matt Johnston <mkj>
Project Member
Mon 09 May 2005 04:13:48 AM UTC, original submission:

In some situations the versions for files on a branch is not selected correctly and instead of the appropriate version, the initial checkin is used. The attached file contains a CVS archive. Unpack it and run this:

monotone --db=bug.db db init
monotone --db=bug.db genkey foo@bar
monotone --db=bug.db --branch foo.bar cvs_import c
monotone --db=bug.db list branches
monotone --db=bug.db --branch foo.bar.disasm-branch co disasm

Now look at the file disasm/ChangeLog.

2000-08-25 Ulrich Drepper <drepper@redhat.com>

* The beginning. See the NEWS file for the time being.

This is just the first checkin. Now remoce the file c/tests/asm-tst3.c,v and run the same commands. Note that the disasm-branch branch still exists. But the ChangeLog file is now complete:

2004-03-06 Ulrich Drepper <drepper@redhat.com>

* configure.ac: Use AS_HELP_STRING where applicable.

2004-01-23 Ulrich Drepper <drepper@redhat.com>

* configure.ac: Check for C99 compiler.
[...]

Anonymous

 

Attached Files
file #2939:  c.tar.bz2 added by None (5KiB - application/x-bzip2 - Test data)

 

Depends on the following items: None found

Items that depend on this one: None found

 

CC list is empty

 

Do you think this task is very important?
If so, you can click here to add your encouragement to it.
This task has 0 encouragements so far.

Only logged-in users can vote.

 

Please enter the title of George Orwell's famous dystopian book (it's a date):

 

 

Follow 4 latest changes.

Date Changed By Updated Field Previous Value => Replaced By
Wed 11 May 2005 07:52:32 PM UTCnjsStatusNone=>Fixed
  Open/ClosedOpen=>Closed
Mon 09 May 2005 06:55:44 AM UTCmkjCarbon-Copy-=>Added mkj
Mon 09 May 2005 04:13:48 AM UTCNoneAttached File-=>Added c.tar.bz2, #2488

Back to the top


Powered by Savane 3.1-cleanup1