|  | 
 | 
Created on 2006-04-10.19:32:56 by markstos, last changed 2009-08-27.14:04:15 by admin. 
 
  
   | msg613 (view) | Author: markstos | Date: 2006-04-10.19:32:54 |  |  
   | ( This is an import of bug #165 from the old system. There is still a TODO
test for it in pull.pl, indicating it is still present. )
> There is a workaround: Create a temp repo with 'darcs get
> --to-patch roll_me_back' and rollback the patch there, which
> will obviously succeed. Then pull the rollback patch back.
> If there were any real dependency problems, the pull will
> cause some conflicts. Just resolve the conflicts and be happy.
Ick! This triggers a more severe bug. Darcs applies the inverse
patches in the wrong order (B^-1 then C^-1), causing those parts of B
which are modified by C to be mysteriously resurrected.
#!/bin/sh
mkdir r1
cd r1
darcs init
echo a > foo
darcs record -lam A
echo b > foo
darcs record --ignore-times -lam B
echo c > foo
darcs record --ignore-times -lam C
echo -n y | darcs rollback -p C
cd ..
darcs get --to-patch B r1 r2
cd r2
echo -n y | darcs rollback -p B
echo y | darcs revert -a
darcs pull -a ../r1
cat foo
# foo contains 'b' rather than 'a'
Download (untitled) 861b
#  	   	Wed Mar 09 21:57:56 2005  	markjugg - Reference to ticket #251 added 	  	 
#  	   	Wed Mar 09 22:20:11 2005  	markjugg - AdminCc markjugg added 	  	 
#  	   	Wed Mar 09 22:20:31 2005  	markjugg - Severity Normal changed to Important 	  	 
#  	   	Wed Mar 09 22:22:59 2005  	markjugg - Correspondence added 	  	 [Reply] [Comment]
RT-Send-CC: droundy
[guest - Thu Jan 06 08:15:23 2005]:
> > There is a workaround: Create a temp repo with 'darcs get
> > --to-patch roll_me_back' and rollback the patch there, which
> > will obviously succeed. Then pull the rollback patch back.
> > If there were any real dependency problems, the pull will
> > cause some conflicts. Just resolve the conflicts and be happy.
>
> Ick! This triggers a more severe bug. Darcs applies the inverse
> patches in the wrong order (B^-1 then C^-1), causing those parts of B
> which are modified by C to be mysteriously resurrected.
I just confirmed this bug still exists in the current darcs, thanks to
the handy test script.
I have added a TODO test for this now to the test suite for better
tracking of it. The patch includes RT#165 in the name.
I also bumped up the priority to Important.
Mark |  
   | msg2574 (view) | Author: markstos | Date: 2008-01-19.04:46:07 |  |  
   | I'm pleased to see that with the following test sequence, this issue is resolved
in unstable, when using the --darcs-2 format. I just 'sent'
test/rollback_conflict.pl which adds the below testing sequence as a regression
test. |  |
 
| Date | User | Action | Args |  | 2006-04-10 19:32:56 | markstos | create |  |  | 2006-05-13 19:06:18 | droundy | set | nosy:
  droundy, tommy, markstos |  | 2007-08-06 08:31:58 | kowey | link | issue436 superseder |  | 2008-01-11 04:07:43 | markstos | link | issue547 superseder |  | 2008-01-13 15:49:11 | markstos | link | issue66 superseder |  | 2008-01-18 02:57:29 | markstos | unlink | issue547 superseder |  | 2008-01-18 03:01:01 | markstos | unlink | issue436 superseder |  | 2008-01-19 04:46:08 | markstos | set | status: unread -> resolved-in-unstable nosy:
  + beschmi, kowey
 messages:
  + msg2574
 |  | 2008-09-04 21:28:16 | admin | set | status: resolved-in-unstable -> resolved nosy:
  + dagit
 |  | 2009-08-06 17:38:19 | admin | set | nosy:
  + jast, Serware, dmitry.kurochkin, darcs-devel, zooko, mornfall, simon, thorkilnaur, - droundy |  | 2009-08-06 20:49:30 | admin | set | nosy:
  - beschmi |  | 2009-08-10 21:44:50 | admin | set | nosy:
  - darcs-devel, zooko, jast, Serware, mornfall |  | 2009-08-10 23:53:47 | admin | set | nosy:
  - dagit |  | 2009-08-25 17:51:56 | admin | set | nosy:
  + darcs-devel, - simon |  | 2009-08-27 14:04:15 | admin | set | nosy:
  tommy, kowey, markstos, darcs-devel, thorkilnaur, dmitry.kurochkin | 
 |