##// END OF EJS Templates
revlog-index: add `replace_sidedata_info` method...
revlog-index: add `replace_sidedata_info` method During a `pull` operation where the server does not provide sidedata, the client that requires it should generate them on-the-fly. In the generic case, we need to wait for the changelog + manifests + filelogs to be added, since we don't know what the sidedata computers might need: this means rewriting the sidedata of index entries from within the pull transaction (and no further back) right after we've added them. Both Python and C implementations only allow for rewriting the sidedata offset and length for revs within the transaction where they were created. Differential Revision: https://phab.mercurial-scm.org/D10031

File last commit:

r45326:ef65676b stable
r47451:502e795b default
Show More
wait-on-file
39 lines | 925 B | text/plain | TextLexer
Joerg Sonnenberger
tests: use regular POSIX shell...
r45287 #!/bin/sh
testlib: add a small scrip to help process to synchronise using file...
r45121 #
# wait up to TIMEOUT seconds until a WAIT_ON_FILE is created.
#
# In addition, this script can create CREATE_FILE once it is ready to wait.
if [ $# -lt 2 ] || [ $# -gt 3 ]; then
echo $#
echo "USAGE: $0 TIMEOUT WAIT_ON_FILE [CREATE_FILE]"
fi
timer="$1"
testlib: adjust wait-on-file timeout according to the global test timeout...
r45122
Joerg Sonnenberger
tests: fix timer scaling in wait-on-file...
r45336 # Scale the timeout to match the sleep steps below, i.e. 1/0.02.
timer=$(( 50 * $timer ))
# If the test timeout have been extended, also scale the timer relative
# to the normal timing.
testlib: adjust wait-on-file timeout according to the global test timeout...
r45122 if [ "$HGTEST_TIMEOUT_DEFAULT" -lt "$HGTEST_TIMEOUT" ]; then
Joerg Sonnenberger
tests: fix timer scaling in wait-on-file...
r45336 timer=$(( ( $timer * $HGTEST_TIMEOUT) / $HGTEST_TIMEOUT_DEFAULT ))
testlib: adjust wait-on-file timeout according to the global test timeout...
r45122 fi
testlib: add a small scrip to help process to synchronise using file...
r45121 wait_on="$2"
create=""
if [ $# -eq 3 ]; then
create="$3"
fi
Joerg Sonnenberger
tests: use regular POSIX shell...
r45287 if [ -n "$create" ]; then
testlib: add a small scrip to help process to synchronise using file...
r45121 touch "$create"
create=""
fi
Joerg Sonnenberger
tests: use regular POSIX shell...
r45287 while [ "$timer" -gt 0 ] && [ ! -f "$wait_on" ]; do
wait-on-file: use proper variable in math...
r45221 timer=$(( $timer - 1))
Joerg Sonnenberger
tests: fix timer scaling in wait-on-file...
r45336 sleep 0.02
testlib: add a small scrip to help process to synchronise using file...
r45121 done
if [ "$timer" -le 0 ]; then
echo "file not created after $1 seconds: $wait_on" >&2
exit 1
fi