sapling/tests/test-hgsql-sqlrefill.t
Durham Goode 8b0b788ba8 hgcommands: print errors to io instead of stderr
Summary:
HgPython::run_hg was printing errors directly to stderr instead of to
the provided io.error. This caused unhandlable output in the -t.py tests. Let's
fix it to output to the provided pipe.

Reviewed By: quark-zju

Differential Revision: D17634721

fbshipit-source-id: f441e7be461193ef54db25e0939b2e67cdf06126
2019-10-02 10:12:19 -07:00

58 lines
931 B
Perl

$ . "$TESTDIR/hgsql/library.sh"
$ setconfig extensions.treemanifest=!
Populate the db with an initial commit.
$ initclient client
$ cd client
$ echo p > p
$ hg commit -qAm p
$ echo q > q
$ hg commit -qAm q
$ hg -q up 0
$ echo r > r
$ hg commit -qAm r
$ hg bookmark foo
$ cd ..
Create master without sql configuration.
$ hg clone -q client master
Configure master as a server backed by sql.
$ configureserver master masterrepo
$ cd master
$ hg log -GT '{files}' 2>&1 | grep "CorruptionException:"
CorruptionException: heads don't match after sync
Fix the server using sqlrefill.
$ hg sqlrefill --i-know-what-i-am-doing 0
$ hg log -GT '{files}'
@ r
|
| o q
|/
o p
Make another commit to the server to verify that repository state is sane after
the refill.
$ echo s > s
$ hg commit -qAm s
$ hg log -GT '{files}'
@ s
|
o r
|
| o q
|/
o p