darcs

Issue 1673 darcs repair fails to fix patches with: "removal of non-empty file"

Title darcs repair fails to fix patches with: "removal of non-empty file"
Priority bug Status resolved
Milestone Resolved in
Superseder Nosy List attila.lendvai, darcs-devel, dmitry.kurochkin, kowey, mornfall
Assigned To
Topics Regression

Created on 2009-11-04.13:59:07 by attila.lendvai, last changed 2009-12-10.15:16:46 by kowey.

Messages
msg9196 (view) Author: attila.lendvai Date: 2009-11-04.13:59:05
$ darcs repair
WARNING: Fixing removal of non-empty file ./swank-openmcl.lisp    
WARNING: Fixing removal of non-empty file ./test-all.sh

Writing out repaired patches...                                
Fixing pristine tree...
$ darcs repair
WARNING: Fixing removal of non-empty file ./swank-openmcl.lisp       
WARNING: Fixing removal of non-empty file ./test-all.sh

Writing out repaired patches...
Fixing pristine tree...
$ darcs check
WARNING: Fixing removal of non-empty file ./swank-openmcl.lisp       
WARNING: Fixing removal of non-empty file ./test-all.sh

Looks like we have a difference...
Nothing                                                              

Inconsistent repository!
Found broken patches.



the darcs2 repo is available at:

http://dwim.hu/darcsweb/darcsweb.cgi?r=HEAD%20slime;a=summary
http://dwim.hu/darcs/slime/


notes:
 - darcs check prints: "WARNING: Fixing..."
 - darcs repair issued twice after each other prints the same (so, fails to fix)
msg9197 (view) Author: attila.lendvai Date: 2009-11-04.14:01:19
oh, forgot the version:

$ darcs --version
2.3.1 (release)
msg9198 (view) Author: kowey Date: 2009-11-04.14:22:01
That sounds like a regression to me!  

Attila, could I press you into service for debugging this?  Would you be willing
to try this with Darcs 2.2 and report if repair actually fixes it there?  (If
not, maybe even try one version back?)

I'll also link this message to a new ticket for the darcs check UI bug.
msg9200 (view) Author: attila.lendvai Date: 2009-11-04.16:37:25
this is the only binary i could easily find (64 bit ubuntu). please note the
slightly different output.

$ /tmp/darcs.old --version
2.1.0 (+ 348 patches)
$ /tmp/darcs.old repair
WARNING: Fixing removal of non-empty file ./swank-openmcl.lisp       
WARNING: Fixing removal of non-empty file ./test-all.sh

The repository is already consistent, no changes made.
$ /tmp/darcs.old repair
WARNING: Fixing removal of non-empty file ./swank-openmcl.lisp       
WARNING: Fixing removal of non-empty file ./test-all.sh

The repository is already consistent, no changes made.
msg9201 (view) Author: kowey Date: 2009-11-04.16:53:35
Could I ask for another debugging step?  What does darcs repair say in a known
clean repo? (ideally with both versions)
msg9202 (view) Author: attila.lendvai Date: 2009-11-04.17:15:43
$ darcs --version
2.3.1 (release)
$ darcs check --complete
The repository is consistent!
$ darcs repair
The repository is already consistent, no changes made.



$ /tmp/darcs.old --version
2.1.0 (+ 348 patches)
$ /tmp/darcs.old check --complete
The repository is consistent!
$ /tmp/darcs.old repair
The repository is already consistent, no changes made.
msg9203 (view) Author: kowey Date: 2009-11-04.17:20:26
Hi Petr,

Sorry to keep dumping bugs on you, but do you think you could check to see if
this may be caused by the darcs repair/replay refactors or something between
Darcses 2.1 and 2.3?

Thanks!
msg9205 (view) Author: mornfall Date: 2009-11-04.19:54:20
Hard to tell. Check repair-corrupt.sh -- it already tests for this and it
doesn't seem to be tripped up (neither in 2.3.1 nor in HEAD). See this:

+ darcs check
WARNING: Fixing removal of non-empty file foo
Looks like we have a difference...
Difference:  hunk ./bar 1
-foo
+here

Inconsistent repository!
Found broken patches.
+ :

darcs repair # repair succeeds
+ darcs repair
WARNING: Fixing removal of non-empty file foo
Writing out repaired patches...
Fixing pristine tree...
darcs check # and the resulting repo is consistent
+ darcs check
The repository is consistent!

So I assume there's more to this bug than just a plain regression. I have
rigged up the test a little more to check that this is not just because there's
no pristine corruption and the patch writing would be tied to that. See patch42
for the improved test. I think I'd need the tarball'd repo to move this further
along.
msg9206 (view) Author: attila.lendvai Date: 2009-11-04.22:31:39
two of my local repos don't have these bogus patches, so at one point i must
have been able fix them. although looking back i can't really imagine when and
with which darcs version...

btw, this is a tailor bug that it records directly some bogus patches, this repo
is a tailor converted cvs repo.

if someone wants to have a tgz copy of the repo then please direct mail me at
attila.lendvai at google's mail service.
msg9474 (view) Author: kowey Date: 2009-11-24.00:50:29
Attila, could you please send Petr a tarball of your repo?  Thanks! :-)
msg9580 (view) Author: mornfall Date: 2009-12-09.23:08:57
I was a little confused I suppose, when I was asking for tarball. Anyway, I have 
downloaded it and I can reproduce this with darcs-2.3, but not with darcs HEAD. 
That would probably mean that this got somehow fixed recently...
msg9585 (view) Author: kowey Date: 2009-12-10.15:16:44
OK, I'm marking this resolved, then.  If you want to confirm it with Darcs
unstable, Attila, or if we've missed something, please shout.
History
Date User Action Args
2009-11-04 13:59:08attila.lendvaicreate
2009-11-04 14:01:21attila.lendvaisetmessages: + msg9197
2009-11-04 14:22:05koweysetstatus: unknown -> waiting-for
priority: bug
nosy: + kowey
messages: + msg9198
topic: + Regression
assignedto: attila.lendvai
2009-11-04 16:37:28attila.lendvaisetmessages: + msg9200
2009-11-04 16:53:37koweysetmessages: + msg9201
2009-11-04 17:15:44attila.lendvaisetmessages: + msg9202
2009-11-04 17:20:28koweysetstatus: waiting-for -> needs-reproduction
nosy: + mornfall
messages: + msg9203
assignedto: attila.lendvai -> mornfall
2009-11-04 19:54:22mornfallsetmessages: + msg9205
2009-11-04 22:31:41attila.lendvaisetmessages: + msg9206
2009-11-24 00:50:31koweysetstatus: needs-reproduction -> waiting-for
assignedto: mornfall -> attila.lendvai
messages: + msg9474
2009-12-09 23:09:00mornfallsetmessages: + msg9580
2009-12-10 15:16:46koweysetstatus: waiting-for -> resolved
assignedto: attila.lendvai ->
messages: + msg9585