Add 'third_party/nix/' from commit 'be66c7a6b24e3c3c6157fd37b86c7203d14acf10'
git-subtree-dir: third_party/nix
git-subtree-mainline: cf8cd640c1
git-subtree-split: be66c7a6b24e3c3c6157fd37b86c7203d14acf10
This commit is contained in:
commit
7994fd1d54
737 changed files with 105390 additions and 0 deletions
36
third_party/nix/tests/referrers.sh
vendored
Normal file
36
third_party/nix/tests/referrers.sh
vendored
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
source common.sh
|
||||
|
||||
clearStore
|
||||
|
||||
max=500
|
||||
|
||||
reference=$NIX_STORE_DIR/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
touch $reference
|
||||
(echo $reference && echo && echo 0) | nix-store --register-validity
|
||||
|
||||
echo "making registration..."
|
||||
|
||||
set +x
|
||||
for ((n = 0; n < $max; n++)); do
|
||||
storePath=$NIX_STORE_DIR/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-$n
|
||||
echo -n > $storePath
|
||||
ref2=$NIX_STORE_DIR/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-$((n+1))
|
||||
if test $((n+1)) = $max; then
|
||||
ref2=$reference
|
||||
fi
|
||||
echo $storePath; echo; echo 2; echo $reference; echo $ref2
|
||||
done > $TEST_ROOT/reg_info
|
||||
set -x
|
||||
|
||||
echo "registering..."
|
||||
|
||||
nix-store --register-validity < $TEST_ROOT/reg_info
|
||||
|
||||
echo "collecting garbage..."
|
||||
ln -sfn $reference "$NIX_STATE_DIR"/gcroots/ref
|
||||
nix-store --gc
|
||||
|
||||
if [ -n "$(type -p sqlite3)" -a "$(sqlite3 $NIX_STATE_DIR/db/db.sqlite 'select count(*) from Refs')" -ne 0 ]; then
|
||||
echo "referrers not cleaned up"
|
||||
exit 1
|
||||
fi
|
||||
Loading…
Add table
Add a link
Reference in a new issue