test: setup workspace in tmpfs for OOS build
Found that running vinyl test suite in parallel using test-run vardir on real hard drive may cause a lot of tests to fail. It happens because of bottleneck with hard drive usage up to 100% which can be seen by any of the tools like atop during vinyl tests run in parallel. To avoid of it all heavy loaded testing processes should use tmpfs for vardir path. Found that out-of-source build had to be updated to use tmpfs for it. This patch mounts additional tmpfs mount point in OOS build docker run process for test-run vardir. This mount point set using '--tmpfs' flag because '--mount' does not support 'exec' option which is needed to be able to execute commands in it [2][3]. Issues met on OOS before the patch, like described in #5504 and [1]: Test hung! Result content mismatch: --- vinyl/write_iterator.result Fri Nov 20 14:48:24 2020 +++ /rw_bins/test/var/081_vinyl/write_iterator.result Fri Nov 20 15:01:54 2020 @@ -200,831 +200,3 @@ --- ... for i = 1, 100 do space:insert{i, ''..i} if i % 2 == 0 then box.snapshot() end end ---- -... -space:delete{1} ---- -... Closes #5622 Part of #5504 [1] - https://gitlab.com/tarantool/tarantool/-/jobs/863266476#L5009 [2] - https://stackoverflow.com/questions/54729130/how-to-mount-docker-tmpfs-with-exec-rw-flags [3] - https://github.com/moby/moby/issues/35890
Please register or sign in to comment