scripts: fix the unbound local that killed the sweep at its first cell
`local b=$1 ub=$2 dir="$OUT/b${b}_ub${ub}"` expands every argument of the builtin
before the builtin assigns any of them, so $b was unbound and set -u aborted the run
four seconds in - after the service was already stopped. Two statements instead.
Found by running it under systemd-run: it exited non-zero with no cells run, which is
exactly what the per-cell TSV is for.
This commit is contained in:
@@ -74,7 +74,10 @@ service_start() {
|
||||
trap service_start EXIT
|
||||
|
||||
run_cell() {
|
||||
local b=$1 ub=$2 dir="$OUT/b${b}_ub${ub}" sampler start rc wall
|
||||
# two statements: `local a=1 b=$a` expands b before the builtin assigns a, and
|
||||
# set -u turns that into "b: unbound variable"
|
||||
local b=$1 ub=$2
|
||||
local dir="$OUT/b${b}_ub${ub}" sampler start rc wall
|
||||
mkdir -p "$dir"
|
||||
if [ -s "$dir/bench.json" ]; then
|
||||
echo "b=$b ub=$ub: bench.json present, skipping" >&2
|
||||
|
||||
Reference in New Issue
Block a user