mirror of
https://github.com/facebook/sapling.git
synced 2024-10-10 08:47:12 +03:00
2aa432e134
Summary: This will be used by fbclone to ship lazy commit hash backend. Reviewed By: DurhamG Differential Revision: D28554445 fbshipit-source-id: a263ae7683124b3b86f4025b02c7de20dcb9813e
176 lines
9.5 KiB
Raku
176 lines
9.5 KiB
Raku
#chg-compatible
|
|
|
|
$ configure modern
|
|
|
|
$ setconfig paths.default=test:e1 ui.traceback=1
|
|
$ setconfig treemanifest.flatcompat=0
|
|
$ export LOG=edenscm::mercurial::eagerpeer=trace,eagerepo=trace
|
|
|
|
Disable SSH:
|
|
|
|
$ setconfig ui.ssh=false
|
|
|
|
Prepare Repo:
|
|
|
|
$ newremoterepo
|
|
$ setconfig paths.default=test:e1
|
|
$ drawdag << 'EOS'
|
|
> B C # C/T/A=2
|
|
> |/
|
|
> A # A/T/A=1
|
|
> EOS
|
|
|
|
Push:
|
|
|
|
$ hg push -r $C --to master --create
|
|
pushing rev 178c10ffbc2f to destination test:e1 bookmark master
|
|
DEBUG eagerepo::api: bookmarks master
|
|
DEBUG edenscm::mercurial::eagerpeer: listkeyspatterns(bookmarks, ['master']) = sortdict()
|
|
DEBUG eagerepo::api: commit_known 178c10ffbc2f92d5407c14478ae9d9dea81f232e
|
|
TRACE edenscm::mercurial::eagerpeer: known 178c10ffbc2f92d5407c14478ae9d9dea81f232e: False
|
|
DEBUG edenscm::mercurial::eagerpeer: heads = []
|
|
searching for changes
|
|
DEBUG eagerepo::api: bookmarks master
|
|
DEBUG edenscm::mercurial::eagerpeer: listkeyspatterns(bookmarks, ['master']) = sortdict()
|
|
TRACE edenscm::mercurial::eagerpeer: adding blob 005d992c5dcf32993668f7cede29d296c494a5d9
|
|
TRACE edenscm::mercurial::eagerpeer: adding blob f976da1d0df2256cde08db84261621d5e92f77be
|
|
TRACE edenscm::mercurial::eagerpeer: adding tree 4c28a8a0e46c55df521ea9d682b5b6b8a91031a2
|
|
TRACE edenscm::mercurial::eagerpeer: adding tree 6161efd5db4f6d976d6aba647fa77c12186d3179
|
|
TRACE edenscm::mercurial::eagerpeer: adding commit 748104bd5058bf2c386d074d8dcf2704855380f6
|
|
TRACE edenscm::mercurial::eagerpeer: adding blob a2e456504a5e61f763f1a0b36a6c247c7541b2b3
|
|
TRACE edenscm::mercurial::eagerpeer: adding blob d85e50a0f00eee8211502158e93772aec5dc3d63
|
|
TRACE edenscm::mercurial::eagerpeer: adding tree 319bc9670b2bff0a75b8b2dfa78867bf1f8d7aec
|
|
TRACE edenscm::mercurial::eagerpeer: adding tree 0ccf968573574750913fcee533939cc7ebe7327d
|
|
TRACE edenscm::mercurial::eagerpeer: adding commit 178c10ffbc2f92d5407c14478ae9d9dea81f232e
|
|
DEBUG edenscm::mercurial::eagerpeer: flushed
|
|
DEBUG eagerepo::api: bookmarks master
|
|
DEBUG edenscm::mercurial::eagerpeer: listkeyspatterns(bookmarks, ['master']) = sortdict()
|
|
DEBUG edenscm::mercurial::eagerpeer: flushed
|
|
DEBUG edenscm::mercurial::eagerpeer: pushkey bookmarks 'master': '' => '178c10ffbc2f92d5407c14478ae9d9dea81f232e' (success)
|
|
exporting bookmark master
|
|
DEBUG eagerepo::api: bookmarks master
|
|
DEBUG edenscm::mercurial::eagerpeer: listkeyspatterns(bookmarks, ['master']) = sortdict([('master', '178c10ffbc2f92d5407c14478ae9d9dea81f232e')])
|
|
|
|
$ hg push -r $B --allow-anon
|
|
pushing to test:e1
|
|
DEBUG eagerepo::api: bookmarks master
|
|
DEBUG edenscm::mercurial::eagerpeer: listkeyspatterns(bookmarks, ['master']) = sortdict([('master', '178c10ffbc2f92d5407c14478ae9d9dea81f232e')])
|
|
DEBUG eagerepo::api: commit_known 178c10ffbc2f92d5407c14478ae9d9dea81f232e, 99dac869f01e09fe3d501fa645ea524af80d498f
|
|
TRACE edenscm::mercurial::eagerpeer: known 178c10ffbc2f92d5407c14478ae9d9dea81f232e: True
|
|
TRACE edenscm::mercurial::eagerpeer: known 99dac869f01e09fe3d501fa645ea524af80d498f: False
|
|
searching for changes
|
|
DEBUG eagerepo::api: bookmarks master
|
|
DEBUG edenscm::mercurial::eagerpeer: listkeyspatterns(bookmarks, ['master']) = sortdict([('master', '178c10ffbc2f92d5407c14478ae9d9dea81f232e')])
|
|
TRACE edenscm::mercurial::eagerpeer: adding blob 35e7525ce3a48913275d7061dd9a867ffef1e34d
|
|
TRACE edenscm::mercurial::eagerpeer: adding tree d8dc55ad2b89cdc0f1ee969e5d79bd1eaddb5b43
|
|
TRACE edenscm::mercurial::eagerpeer: adding commit 99dac869f01e09fe3d501fa645ea524af80d498f
|
|
DEBUG edenscm::mercurial::eagerpeer: flushed
|
|
DEBUG eagerepo::api: bookmarks master
|
|
DEBUG edenscm::mercurial::eagerpeer: listkeyspatterns(bookmarks, ['master']) = sortdict([('master', '178c10ffbc2f92d5407c14478ae9d9dea81f232e')])
|
|
|
|
Pull:
|
|
|
|
$ newremoterepo
|
|
$ setconfig paths.default=test:e1
|
|
$ hg debugchangelog --migrate lazy
|
|
$ hg pull -B master
|
|
pulling from test:e1
|
|
DEBUG eagerepo::api: bookmarks master
|
|
DEBUG edenscm::mercurial::eagerpeer: listkeyspatterns(bookmarks, ['master']) = sortdict([('master', '178c10ffbc2f92d5407c14478ae9d9dea81f232e')])
|
|
DEBUG eagerepo::api: bookmarks master
|
|
DEBUG edenscm::mercurial::eagerpeer: listkeyspatterns(bookmarks, ['master']) = sortdict([('master', '178c10ffbc2f92d5407c14478ae9d9dea81f232e')])
|
|
DEBUG eagerepo::api: bookmarks master
|
|
DEBUG edenscm::mercurial::eagerpeer: listkeyspatterns(bookmarks, ['master']) = sortdict([('master', '178c10ffbc2f92d5407c14478ae9d9dea81f232e')])
|
|
DEBUG eagerepo::api: commit_known
|
|
DEBUG eagerepo::api: commit_graph 178c10ffbc2f92d5407c14478ae9d9dea81f232e
|
|
TRACE edenscm::mercurial::eagerpeer: graph node 748104bd5058bf2c386d074d8dcf2704855380f6 []
|
|
TRACE edenscm::mercurial::eagerpeer: graph node 178c10ffbc2f92d5407c14478ae9d9dea81f232e ['748104bd5058bf2c386d074d8dcf2704855380f6']
|
|
|
|
$ hg pull -r $B
|
|
pulling from test:e1
|
|
DEBUG eagerepo::api: bookmarks master
|
|
DEBUG edenscm::mercurial::eagerpeer: listkeyspatterns(bookmarks, ['master']) = sortdict([('master', '178c10ffbc2f92d5407c14478ae9d9dea81f232e')])
|
|
DEBUG eagerepo::api: commit_known 99dac869f01e09fe3d501fa645ea524af80d498f
|
|
TRACE edenscm::mercurial::eagerpeer: known 99dac869f01e09fe3d501fa645ea524af80d498f: True
|
|
DEBUG eagerepo::api: bookmarks master
|
|
DEBUG edenscm::mercurial::eagerpeer: listkeyspatterns(bookmarks, ['master']) = sortdict([('master', '178c10ffbc2f92d5407c14478ae9d9dea81f232e')])
|
|
DEBUG eagerepo::api: bookmarks master
|
|
DEBUG edenscm::mercurial::eagerpeer: listkeyspatterns(bookmarks, ['master']) = sortdict([('master', '178c10ffbc2f92d5407c14478ae9d9dea81f232e')])
|
|
DEBUG eagerepo::api: commit_known 178c10ffbc2f92d5407c14478ae9d9dea81f232e
|
|
TRACE edenscm::mercurial::eagerpeer: known 178c10ffbc2f92d5407c14478ae9d9dea81f232e: True
|
|
searching for changes
|
|
DEBUG eagerepo::api: commit_graph 178c10ffbc2f92d5407c14478ae9d9dea81f232e, 99dac869f01e09fe3d501fa645ea524af80d498f 178c10ffbc2f92d5407c14478ae9d9dea81f232e
|
|
TRACE edenscm::mercurial::eagerpeer: graph node 99dac869f01e09fe3d501fa645ea524af80d498f ['748104bd5058bf2c386d074d8dcf2704855380f6']
|
|
|
|
$ hg log -Gr 'all()' -T '{desc} {remotenames}'
|
|
DEBUG eagerepo::api: revlog_data 99dac869f01e09fe3d501fa645ea524af80d498f, 178c10ffbc2f92d5407c14478ae9d9dea81f232e, 748104bd5058bf2c386d074d8dcf2704855380f6
|
|
TRACE eagerepo::api: found: 99dac869f01e09fe3d501fa645ea524af80d498f, 94 bytes
|
|
TRACE eagerepo::api: found: 178c10ffbc2f92d5407c14478ae9d9dea81f232e, 98 bytes
|
|
TRACE eagerepo::api: found: 748104bd5058bf2c386d074d8dcf2704855380f6, 98 bytes
|
|
o B
|
|
│
|
|
│ o C remote/master
|
|
├─╯
|
|
o A
|
|
|
|
Trigger file and tree downloading:
|
|
|
|
$ hg cat -r $B B A
|
|
DEBUG eagerepo::api: trees d8dc55ad2b89cdc0f1ee969e5d79bd1eaddb5b43
|
|
TRACE eagerepo::api: found: d8dc55ad2b89cdc0f1ee969e5d79bd1eaddb5b43, 170 bytes
|
|
DEBUG eagerepo::api: files 005d992c5dcf32993668f7cede29d296c494a5d9
|
|
TRACE eagerepo::api: found: 005d992c5dcf32993668f7cede29d296c494a5d9, 41 bytes
|
|
DEBUG eagerepo::api: files 35e7525ce3a48913275d7061dd9a867ffef1e34d
|
|
TRACE eagerepo::api: found: 35e7525ce3a48913275d7061dd9a867ffef1e34d, 41 bytes
|
|
AB (no-eol)
|
|
|
|
Clone (using edenapi clonedata, bypassing peer interface):
|
|
|
|
$ cd $TESTTMP
|
|
$ hg clone -U --shallow test:e1 --config remotefilelog.reponame=x --config clone.force-edenapi-clonedata=1 cloned1
|
|
fetching lazy changelog
|
|
DEBUG eagerepo::api: clone_data
|
|
populating main commit graph
|
|
tip commit: 178c10ffbc2f92d5407c14478ae9d9dea81f232e
|
|
fetching selected remote bookmarks
|
|
DEBUG eagerepo::api: bookmarks master
|
|
DEBUG edenscm::mercurial::eagerpeer: listkeyspatterns(bookmarks, ['master']) = sortdict([('master', '178c10ffbc2f92d5407c14478ae9d9dea81f232e')])
|
|
DEBUG eagerepo::api: bookmarks master
|
|
DEBUG edenscm::mercurial::eagerpeer: listkeyspatterns(bookmarks, ['master']) = sortdict([('master', '178c10ffbc2f92d5407c14478ae9d9dea81f232e')])
|
|
DEBUG eagerepo::api: bookmarks master
|
|
DEBUG edenscm::mercurial::eagerpeer: listkeyspatterns(bookmarks, ['master']) = sortdict([('master', '178c10ffbc2f92d5407c14478ae9d9dea81f232e')])
|
|
|
|
Clone:
|
|
|
|
$ cd $TESTTMP
|
|
$ hg clone -U --shallow test:e1 cloned
|
|
DEBUG eagerepo::api: clone_data
|
|
populating main commit graph
|
|
tip commit: 178c10ffbc2f92d5407c14478ae9d9dea81f232e
|
|
fetching selected remote bookmarks
|
|
DEBUG eagerepo::api: bookmarks master
|
|
DEBUG edenscm::mercurial::eagerpeer: listkeyspatterns(bookmarks, ['master']) = sortdict([('master', '178c10ffbc2f92d5407c14478ae9d9dea81f232e')])
|
|
DEBUG eagerepo::api: bookmarks master
|
|
DEBUG edenscm::mercurial::eagerpeer: listkeyspatterns(bookmarks, ['master']) = sortdict([('master', '178c10ffbc2f92d5407c14478ae9d9dea81f232e')])
|
|
DEBUG eagerepo::api: bookmarks master
|
|
DEBUG edenscm::mercurial::eagerpeer: listkeyspatterns(bookmarks, ['master']) = sortdict([('master', '178c10ffbc2f92d5407c14478ae9d9dea81f232e')])
|
|
|
|
$ cd cloned
|
|
|
|
Commit hash and message are lazy
|
|
|
|
$ LOG=dag::protocol=debug,eagerepo=debug hg log -T '{desc} {node}\n' -r 'all()'
|
|
DEBUG dag::protocol: resolve ids [0] remotely
|
|
DEBUG eagerepo::api: revlog_data 748104bd5058bf2c386d074d8dcf2704855380f6, 178c10ffbc2f92d5407c14478ae9d9dea81f232e
|
|
A 748104bd5058bf2c386d074d8dcf2704855380f6
|
|
C 178c10ffbc2f92d5407c14478ae9d9dea81f232e
|
|
|
|
Read file content:
|
|
|
|
$ hg cat -r $C C
|
|
DEBUG eagerepo::api: trees 0ccf968573574750913fcee533939cc7ebe7327d
|
|
TRACE eagerepo::api: found: 0ccf968573574750913fcee533939cc7ebe7327d, 170 bytes
|
|
DEBUG eagerepo::api: files a2e456504a5e61f763f1a0b36a6c247c7541b2b3
|
|
TRACE eagerepo::api: found: a2e456504a5e61f763f1a0b36a6c247c7541b2b3, 41 bytes
|
|
C (no-eol)
|