mirror of
https://github.com/facebook/sapling.git
synced 2024-10-12 09:48:05 +03:00
a25ff90a5e
Summary: hgsql depends on repositories being byte for byte identical, but the current pull after a streaming clone can cause the repository to be different (like if different delta decisions were made, or the commits were ordered slightly differently). Let's disable that pull when the repository is an hgsql repo. Reviewed By: ryanmce Differential Revision: D7925300 fbshipit-source-id: 6eba7ad4ccdd37f6d7c5090522867d1a54f722b7
51 lines
1.4 KiB
Perl
51 lines
1.4 KiB
Perl
#testcases case-innodb case-rocksdb
|
|
|
|
#if case-rocksdb
|
|
$ DBENGINE=rocksdb
|
|
#else
|
|
$ DBENGINE=innodb
|
|
#endif
|
|
|
|
$ . "$TESTDIR/hgsql/library.sh"
|
|
|
|
# Populate the db with an initial commit
|
|
|
|
$ initclient client
|
|
$ cd client
|
|
$ echo x > x
|
|
$ hg commit -qAm x
|
|
$ cd ..
|
|
|
|
$ initserver master masterrepo
|
|
$ cd master
|
|
$ hg log
|
|
$ hg pull -q ../client
|
|
|
|
Test that hgsql is a requirement
|
|
$ grep hgsql .hg/requires
|
|
hgsql
|
|
$ hg log -r tip --config extensions.hgsql=!
|
|
abort: repository requires features unknown to this Mercurial: hgsql!
|
|
(see https://mercurial-scm.org/wiki/MissingRequirement for more information)
|
|
[255]
|
|
$ hg log -r tip
|
|
changeset: 0:b292c1e3311f
|
|
tag: tip
|
|
user: test
|
|
date: Thu Jan 01 00:00:00 1970 +0000
|
|
summary: x
|
|
|
|
|
|
Ensure streaming clones to non-hgsql repos work
|
|
$ cd ..
|
|
$ hg clone --config extensions.hgsql=! --config ui.ssh='python "$TESTDIR/dummyssh"' --uncompressed ssh://user@dummy/master client2 | grep "streaming all changes"
|
|
streaming all changes
|
|
|
|
Ensure streaming clones to hgsql repos work
|
|
$ hg clone --config extensions.hgsql= --config ui.ssh='python "$TESTDIR/dummyssh"' --uncompressed ssh://user@dummy/master client3
|
|
streaming all changes
|
|
3 files to transfer, 294 bytes of data
|
|
transferred 294 bytes in * seconds (*) (glob)
|
|
updating to branch default
|
|
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
|