Description
Tarantool version:
Tarantool 2.5.0-176-g275b4fb0d
Target: Linux-x86_64-RelWithDebInfo
Build options: cmake . -DCMAKE_INSTALL_PREFIX=/usr/local -DENABLE_BACKTRACE=ON
Compiler: /usr/bin/cc /usr/bin/c++
C_FLAGS: -fexceptions -funwind-tables -fno-omit-frame-pointer -fno-stack-protector -fno-common -fopenmp -msse2 -std=c11 -Wall -Wextra -Wno-strict-aliasing -Wno-char-subscripts -Wno-format-truncation -Wno-gnu-alignof-expression -fno-gnu89-inline -Wno-cast-function-type -Werror
CXX_FLAGS: -fexceptions -funwind-tables -fno-omit-frame-pointer -fno-stack-protector -fno-common -fopenmp -msse2 -std=c++11 -Wall -Wextra -Wno-strict-aliasing -Wno-char-subscripts -Wno-format-truncation -Wno-invalid-offsetof -Wno-gnu-alignof-expression -Wno-cast-function-type -Werror
OS version:
Linux
Bug description:
1.
https://gitlab.com/tarantool/tarantool/-/jobs/622184736
https://gitlab.com/tarantool/tarantool/-/jobs/612359326
https://gitlab.com/tarantool/tarantool/-/jobs/771333207#L5126
results file checksum: f1286e9e4710062ddfbffb61b2fe2743
Issue:
[068] --- vinyl/gh.result Thu Jul 2 10:18:18 2020
[068] +++ vinyl/gh.reject Thu Jul 2 23:09:52 2020
[068] @@ -705,6 +705,7 @@
[068] s:replace{math.random(count)}
[068] end;
[068] ---
[068] +- error: Timed out waiting for Vinyl memory quota
[068] ...
[068] test_run:cmd("setopt delimiter ''");
[068] ---
[068]
[068] Last 15 lines of Tarantool Log file [Instance "vinyl"][/builds/WHBm2_Sk/0/tarantool/tarantool/test/var/068_vinyl/vinyl.log]:
[068] 2020-07-02 23:09:40.238 [31938] main/106/checkpoint_daemon I> scheduled next checkpoint for Fri Jul 3 00:26:46 2020
[068] 2020-07-02 23:09:40.249 [31938] main/106/checkpoint_daemon I> scheduled next checkpoint for Fri Jul 3 00:53:25 2020
[068] 2020-07-02 23:09:40.259 [31938] main/106/checkpoint_daemon I> scheduled next checkpoint for Fri Jul 3 00:50:14 2020
[068] 2020-07-02 23:09:40.270 [31938] main/106/checkpoint_daemon I> scheduled next checkpoint for Fri Jul 3 00:45:00 2020
[068] 2020-07-02 23:09:40.280 [31938] main/106/checkpoint_daemon I> scheduled next checkpoint for Fri Jul 3 00:48:06 2020
[068] 2020-07-02 23:09:40.291 [31938] main/106/checkpoint_daemon I> scheduled next checkpoint for Fri Jul 3 01:02:44 2020
[068] 2020-07-02 23:09:40.301 [31938] main/106/checkpoint_daemon I> scheduled next checkpoint for Fri Jul 3 00:17:05 2020
[068] 2020-07-02 23:09:40.311 [31938] main/106/checkpoint_daemon I> scheduled next checkpoint for Fri Jul 3 01:09:15 2020
[068] 2020-07-02 23:09:40.322 [31938] main/106/checkpoint_daemon I> scheduled next checkpoint for Fri Jul 3 00:52:22 2020
[068] 2020-07-02 23:09:40.332 [31938] main/106/checkpoint_daemon I> scheduled next checkpoint for Fri Jul 3 00:25:26 2020
[068] 2020-07-02 23:09:40.343 [31938] main/106/checkpoint_daemon I> scheduled next checkpoint for Fri Jul 3 01:03:41 2020
[068] 2020-07-02 23:09:40.353 [31938] main/106/checkpoint_daemon I> scheduled next checkpoint for Fri Jul 3 00:38:27 2020
[068] 2020-07-02 23:09:40.364 [31938] main/106/checkpoint_daemon I> scheduled next checkpoint for Fri Jul 3 00:35:50 2020
[068] 2020-07-02 23:09:40.374 [31938] main/106/checkpoint_daemon I> scheduled next checkpoint for Fri Jul 3 00:36:08 2020
[068] 2020-07-02 23:09:52.265 [31938] main/119/console/unix/: vy_quota.c:346 W> waited for 80 bytes of vinyl memory quota for too long: 11.867 sec
Reproducer:
cat >vinyl.list.yaml <<EOF
- [vinyl/gh-4957-too-many-upserts.test.lua, null]
- [vinyl/gh.test.lua, null]
EOF
./test-run.py --reproduce vinyl.list.yaml
results file checksum: 96b22440ab8a881d6b8d14c5ee1672fb
[151] --- vinyl/gh.result Tue Oct 13 10:55:54 2020
[151] +++ vinyl/gh.reject Tue Oct 13 12:20:17 2020
[151] @@ -427,7 +427,7 @@
[151] ...
[151] box.snapshot()
[151] ---
[151] -- ok
[151] +- error: Illegal parameters, too many operations for update
[151] ...
[151] space:drop()
[151] ---
[151] @@ -555,7 +555,7 @@
[151] ...
[151] box.snapshot()
[151] ---
[151] -- ok
[151] +- error: Illegal parameters, too many operations for update
[151] ...
[151] s0:replace{2, 'tuple 2'}
[151] ---
[151] @@ -563,7 +563,7 @@
[151] ...
[151] box.snapshot()
[151] ---
[151] -- ok
[151] +- error: Illegal parameters, too many operations for update
[151] ...
[151] s0:insert{3, 'tuple 3'}
[151] ---
[151] @@ -601,7 +601,7 @@
[151] ...
[151] box.snapshot()
[151] ---
[151] -- ok
[151] +- error: Illegal parameters, too many operations for update
[151] ...
[151] s:drop()
[151] ---
[151]
Steps to reproduce:
Optional (but very desirable):
- coredump
- backtrace
- netstat