##// END OF EJS Templates
share: wrap bmstore._writerepo for transaction sensitivity (issue4940)...
share: wrap bmstore._writerepo for transaction sensitivity (issue4940) 46dec89fe888 made 'bmstore.write()' transaction sensitive, to restore original bookmarks correctly at failure of a transaction. For example, shelve and unshelve imply steps below: before 46dec89fe888: 1. move active bookmark forward at internal rebasing 2. 'bmstore.write()' writes updated ones into .hg/bookmarks 3. rollback transaction to remove internal commits 4. restore updated bookmarks manually after 46dec89fe888: 1. move active bookmark forward at internal rebasing 2. 'bmstore.write()' doesn't write updated ones into .hg/bookmarks (these are written into .hg/bookmarks.pending, if external hook is spawn) 3. rollback transaction to remove internal commits 4. .hg/bookmarks should be clean, because it isn't changed while transaction running: see (2) above But if shelve or unshelve is executed in the repository created with "shared bookmarks" ("hg share -B"), this doesn't work as expected, because: - share extension makes 'bmstore.write()' write updated bookmarks into .hg/bookmarks of shared source repository regardless of transaction activity, and - intentional transaction failure at the end of shelve/unshelve doesn't restore already updated .hg/bookmarks of shared source This patch makes share extension wrap 'bmstore._writerepo()' instead of 'bmstore.write()', because the former is used to actually write bookmark changes out.

File last commit:

r7475:90d8dfb4 default
r26933:a7eecd02 stable
Show More
startrev.svndump
240 lines | 2.8 KiB | text/plain | TextLexer
SVN-fs-dump-format-version: 2
UUID: c731c652-65e9-4325-a17e-fed96a319f22
Revision-number: 0
Prop-content-length: 56
Content-length: 56
K 8
svn:date
V 27
2008-12-06T13:44:21.642421Z
PROPS-END
Revision-number: 1
Prop-content-length: 112
Content-length: 112
K 7
svn:log
V 10
init projA
K 10
svn:author
V 7
pmezard
K 8
svn:date
V 27
2008-12-06T13:44:21.759281Z
PROPS-END
Node-path: branches
Node-kind: dir
Node-action: add
Prop-content-length: 10
Content-length: 10
PROPS-END
Node-path: tags
Node-kind: dir
Node-action: add
Prop-content-length: 10
Content-length: 10
PROPS-END
Node-path: trunk
Node-kind: dir
Node-action: add
Prop-content-length: 10
Content-length: 10
PROPS-END
Revision-number: 2
Prop-content-length: 109
Content-length: 109
K 7
svn:log
V 8
createab
K 10
svn:author
V 7
pmezard
K 8
svn:date
V 27
2008-12-06T13:44:22.179257Z
PROPS-END
Node-path: trunk/a
Node-kind: file
Node-action: add
Prop-content-length: 10
Text-content-length: 2
Text-content-md5: 60b725f10c9c85c70d97880dfe8191b3
Content-length: 12
PROPS-END
a
Node-path: trunk/b
Node-kind: file
Node-action: add
Prop-content-length: 10
Text-content-length: 2
Text-content-md5: 3b5d5c3712955042212316173ccf37be
Content-length: 12
PROPS-END
b
Revision-number: 3
Prop-content-length: 108
Content-length: 108
K 7
svn:log
V 7
removeb
K 10
svn:author
V 7
pmezard
K 8
svn:date
V 27
2008-12-06T13:44:23.176546Z
PROPS-END
Node-path: trunk/b
Node-action: delete
Revision-number: 4
Prop-content-length: 109
Content-length: 109
K 7
svn:log
V 8
changeaa
K 10
svn:author
V 7
pmezard
K 8
svn:date
V 27
2008-12-06T13:44:25.147151Z
PROPS-END
Node-path: trunk/a
Node-kind: file
Node-action: change
Text-content-length: 4
Text-content-md5: 0d227f1abf8c2932d342e9b99cc957eb
Content-length: 4
a
a
Revision-number: 5
Prop-content-length: 119
Content-length: 119
K 7
svn:log
V 17
branch, changeaaa
K 10
svn:author
V 7
pmezard
K 8
svn:date
V 27
2008-12-06T13:44:28.158475Z
PROPS-END
Node-path: branches/branch1
Node-kind: dir
Node-action: add
Node-copyfrom-rev: 4
Node-copyfrom-path: trunk
Prop-content-length: 34
Content-length: 34
K 13
svn:mergeinfo
V 0
PROPS-END
Node-path: branches/branch1/a
Node-kind: file
Node-action: change
Text-content-length: 6
Text-content-md5: 7d4ebf8f298d22fc349a91725b00af1c
Content-length: 6
a
a
a
Revision-number: 6
Prop-content-length: 117
Content-length: 117
K 7
svn:log
V 15
addc,changeaaaa
K 10
svn:author
V 7
pmezard
K 8
svn:date
V 27
2008-12-06T13:44:29.180655Z
PROPS-END
Node-path: branches/branch1/a
Node-kind: file
Node-action: change
Text-content-length: 8
Text-content-md5: d12178e74d8774e34361e0a08d1fd2b7
Content-length: 8
a
a
a
a
Node-path: branches/branch1/c
Node-kind: file
Node-action: add
Prop-content-length: 10
Text-content-length: 2
Text-content-md5: 2cd6ee2c70b0bde53fbe6cac3c8b8bb1
Content-length: 12
PROPS-END
c