darcs

Issue 402 darcs 2.0.0pre2 fails when pushing or pulling conflict resolution: "Error applying hunk to file"

Title darcs 2.0.0pre2 fails when pushing or pulling conflict resolution: "Error applying hunk to file"
Priority bug Status resolved
Milestone Resolved in
Superseder conflict misery
View: 378
Nosy List darcs-devel, dmitry.kurochkin, kowey, markstos, robert.mcqueen, thorkilnaur, tommy
Assigned To
Topics Confirmed, Darcs2

Created on 2007-01-31.15:53:01 by robert.mcqueen, last changed 2009-08-27.14:06:09 by admin.

Files
File name Uploaded Type Edit Remove
two-gabble-repos.tar.bz2 markstos, 2008-01-07.04:13:04 application/x-bzip
Messages
msg1451 (view) Author: robert.mcqueen Date: 2007-01-31.15:52:52
Hi folks,

I've got two repositories, one is the project trunk:
 http://projects.collabora.co.uk/~robot101/gabble-trunk.tar.bz2
and one is the result of merging a branch to trunk:
 http://projects.collabora.co.uk/~robot101/gabble-branch-merged.tar.bz2
I'm using darcs 1.0.8. Both repositories are apparently consistent
(darcs check doesn't complain, darcs repair does nothing).

When I try to push the merged branch into trunk, I get this error:

darcs failed:  Error applying patch to recorded!
Running 'darcs repair' on the target repository may help.
user error (Error applying hunk to file ./src/vcard-manager.c)

Repairing the target repository then gives me this:

Applying patch 1838 of 1838... done.
different file lengths for
/home/robot101/public_html/gabble-merged-cmlib-10/_darcs/pristine/src/gabble-connection-manager.c
and
/home/robot101/public_html/gabble-merged-cmlib-10/_darcs/newpristine/src/gabble-connection-manager.c
Fixing pristine tree...

But the same error (as above) still happens when pushing.

I've worked around the error by unrecording the patch which made the
branches conflict in the first place, and recording the change in a
fresh patch, but the tarballs above preserve the irreconcilable state.

Regards,
Rob
msg2346 (view) Author: markstos Date: 2008-01-07.04:13:04
I'm not sure why this bug is considered superceded by issue378. They both relate
to conflicts, but this one is does not involve the apparent infinite loop in the
other one. 

 I confirmed this issue wit the test repos using 1.0.9. I then switched to darcs
2.0.0pre3 ran "darcs convert"  on both repos and tried again. 

darcs still fails, although a little more gracefully-- there is no corruption:

 darcs failed:  Error applying hunk to file ./src/vcard-manager.c

The appears to be truly be "failure", since setting the preferences on "darcs
apply" don't work for getting the conflict to appear.

Attached are the two repos in the already converted state, ready to trigger the
conflict case. (4.4 Megs)

Considering this bug is an "interesting" test case for the new conflict handling
code, perhaps the priority should be upgraded to "urgent" to investigate.
Attachments
msg2938 (view) Author: droundy Date: 2008-01-30.22:55:09
Running convert on the two repositories is incorrect use of convert, and does
result in corruption, so that's no surprise.  I don't see any reason to believe
that this bug is relevant to the --darcs-2 format.  Alas, we don't have a
converter that preserves conflicting history, so we can't determine this for
certain.  :(
msg3499 (view) Author: markstos Date: 2008-02-16.18:34:00
I tested with some more today. I believe it resolved-in-unstable when you don't
mis-use 'convert' by converting both repos like I did last time. 

What can be done to is to convert the repo with more patches in it, use "get"
create the second repo, and then unpull patches from one repo if you need to. 

Do let us know if you run into an issue like this using darcs 2 and the
--darcs-2 format.
History
Date User Action Args
2007-01-31 15:53:01robert.mcqueencreate
2007-03-12 15:18:27koweysetstatus: unread -> deferred
nosy: droundy, tommy, beschmi, kowey, robert.mcqueen
superseder: + conflict misery
2007-03-12 15:21:01koweysetnosy: droundy, tommy, beschmi, kowey, robert.mcqueen
title: error applying patch to consistent repository -> push => Error applying patch to recorded! [repo is consistent] (1.0.8)
2008-01-07 04:13:16markstossetstatus: deferred -> unknown
nosy: + markstos
messages: + msg2346
files: + two-gabble-repos.tar.bz2
title: push => Error applying patch to recorded! [repo is consistent] (1.0.8) -> darcs 2.0.0pre2 fails when pushing or pulling conflict resolution: "Error applying hunk to file"
2008-01-09 04:59:59markstossettopic: + Darcs2
2008-01-30 22:00:47markstossetpriority: bug -> urgent
nosy: droundy, tommy, beschmi, kowey, markstos, robert.mcqueen
topic: + Confirmed
2008-01-30 22:55:13droundysetnosy: droundy, tommy, beschmi, kowey, markstos, robert.mcqueen
messages: + msg2938
2008-01-30 22:55:28droundysetpriority: urgent -> bug
nosy: droundy, tommy, beschmi, kowey, markstos, robert.mcqueen
2008-02-16 18:34:03markstossetstatus: unknown -> resolved-in-unstable
nosy: droundy, tommy, beschmi, kowey, markstos, robert.mcqueen
messages: + msg3499
2008-09-04 21:30:22adminsetstatus: resolved-in-unstable -> resolved
nosy: + dagit
2009-08-06 17:51:18adminsetnosy: + jast, Serware, dmitry.kurochkin, darcs-devel, zooko, mornfall, simon, thorkilnaur, - droundy, robert.mcqueen
2009-08-06 20:53:16adminsetnosy: - beschmi
2009-08-10 22:01:29adminsetnosy: + robert.mcqueen, - darcs-devel, zooko, jast, Serware, mornfall
2009-08-10 23:59:17adminsetnosy: - dagit
2009-08-25 18:02:40adminsetnosy: + darcs-devel, - simon
2009-08-27 14:06:09adminsetnosy: tommy, kowey, markstos, darcs-devel, robert.mcqueen, thorkilnaur, dmitry.kurochkin