diff --git a/test/vinyl/errinj_tx.result b/test/vinyl/errinj_tx.result
index a7583b2e22ac3beda60ae0b8f152873fbd52d21e..29ec47c8fb077de39e301ca005e1763c37013f78 100644
--- a/test/vinyl/errinj_tx.result
+++ b/test/vinyl/errinj_tx.result
@@ -433,3 +433,13 @@ last_read
 space:drop()
 ---
 ...
+-- Collect all iterators to make sure no read views are left behind,
+-- as they might disrupt the following test run.
+collectgarbage()
+---
+- 0
+...
+box.stat.vinyl().tx.read_views -- 0
+---
+- 0
+...
diff --git a/test/vinyl/errinj_tx.test.lua b/test/vinyl/errinj_tx.test.lua
index cf83b32625d14feab529a6186cc6cf624c7dd20d..b06831b74779988c27b2b0fb1d447060185db48a 100644
--- a/test/vinyl/errinj_tx.test.lua
+++ b/test/vinyl/errinj_tx.test.lua
@@ -192,3 +192,8 @@ while f2:status() ~= 'dead' do fiber.sleep(0.01) end
 last_read
 
 space:drop()
+
+-- Collect all iterators to make sure no read views are left behind,
+-- as they might disrupt the following test run.
+collectgarbage()
+box.stat.vinyl().tx.read_views -- 0