[Bug 3873] New: Pulls can race with bookmark updates on the server, causing bookmarks not to be updated at all
mercurial-bugs at selenic.com
mercurial-bugs at selenic.com
Fri Mar 29 16:34:08 CDT 2013
http://bz.selenic.com/show_bug.cgi?id=3873
Priority: normal
Bug ID: 3873
CC: kbullock+mercurial at ringworld.org,
mercurial-devel at selenic.com
Assignee: bugzilla at selenic.com
Summary: Pulls can race with bookmark updates on the server,
causing bookmarks not to be updated at all
Severity: bug
Classification: Unclassified
OS: All
Reporter: sid0 at fb.com
Hardware: All
Status: UNCONFIRMED
Version: unspecified
Component: Mercurial
Product: Mercurial
$ hg init master
$ cd master; touch a; hg ci -Am "a"; hg book book1; cd ..
$ hg clone master slave
$ echo "[hooks]\nchangegroup = echo Press Enter to finish pulling; read -r
DUMMY" >> slave/.hg/hgrc
$ cd master; touch b; hg ci -Am "b"; cd ..
$ cd slave
$ hg pull
This will pull in b, then pause until you press Enter. In a different terminal
(or using job control):
$ cd ../master; touch c; hg ci -Am "c"
Now resume the slave pull. Note that the bookmark didn't get moved at all on
the slave, not even to b.
We're hitting this at FB with large pulls, where the master bookmark on the
server gets updated in the middle of the pull. The master bookmark on the
client doesn't get updated at all.
Seems like a fix would be to either do the bookmark determination
simultaneously with the changeset determination, or to do it before pulling in
changesets if possible.
--
You are receiving this mail because:
You are on the CC list for the bug.
More information about the Mercurial-devel
mailing list