view tests/test-merge6 @ 4095:6fa7a2d0fc2e

hgweb: catch util.Abort raised by addchangegroup Right now, if a pretxnchangegroup hook fails, we send some HTML error message to the client and the transaction is not rolled back (issue499). Catching util.Abort allows us to send a decent message to the client and for some reason makes the rollback complete. This patch is not perfect since it doesn't fix the reason why the transaction wasn't rolled back (maybe some circular references?). Also, the transaction is aborted only after we've sent the response back to the client and the "transaction aborted" message ends up in the logs of the web server.
author Alexis S. L. Carvalho <alexis@cecm.usp.br>
date Fri, 16 Feb 2007 05:10:43 -0200
parents ad3d5b4367cb
children a74586023196
line wrap: on
line source

#!/bin/sh

cat <<'EOF' > merge
#!/bin/sh
echo merging for `basename $1`
EOF
chmod +x merge
HGMERGE=./merge; export HGMERGE

mkdir A1
cd A1
hg init
echo This is file foo1 > foo
echo This is file bar1 > bar
hg add foo bar
hg commit -m "commit text" -d "1000000 0"

cd ..
hg clone A1 B1

cd A1
rm bar
hg remove bar
hg commit -m "commit test" -d "1000000 0"

cd ../B1
echo This is file foo22 > foo
hg commit -m "commit test" -d "1000000 0"

cd ..
hg clone A1 A2
hg clone B1 B2

cd A1
hg pull ../B1
hg merge
hg commit -m "commit test" -d "1000000 0"
echo bar should remain deleted.
hg manifest --debug

cd ../B2
hg pull ../A2
hg merge
hg commit -m "commit test" -d "1000000 0"
echo bar should remain deleted.
hg manifest --debug