[tarantool-patches] [PATCH v1 1/1] sql: set consistent names

imeevma at tarantool.org imeevma at tarantool.org
Tue Apr 2 18:59:41 MSK 2019


This patch changes the name of the function used in the port_sql
methods and the name of the member of the result of the execution.

Follow up #3505
---
 src/box/execute.c                                  |   8 +-
 src/box/lua/execute.c                              |  12 +-
 src/box/lua/net_box.c                              |   5 +-
 test/box/sql-update-with-nested-select.result      |  10 +-
 test/sql/bind.result                               |   4 +-
 test/sql/check-clear-ephemeral.result              |   8 +-
 test/sql/checks.result                             |   2 +-
 test/sql/clear.result                              |  12 +-
 test/sql/collation.result                          | 218 ++++++++++-----------
 test/sql/delete-multiple-idx.result                |  20 +-
 test/sql/delete.result                             |  50 ++---
 test/sql/drop-index.result                         |  22 +--
 test/sql/drop-table.result                         |  20 +-
 test/sql/engine.result                             |  16 +-
 test/sql/errinj.result                             |  54 ++---
 test/sql/foreign-keys.result                       |  32 +--
 test/sql/func-recreate.result                      |   2 +-
 test/sql/gh-2347-max-int-literals.result           |   2 +-
 test/sql/gh-2362-select-access-rights.result       |  22 +--
 test/sql/gh-2929-primary-key.result                |   6 +-
 test/sql/gh-2981-check-autoinc.result              |  22 +--
 test/sql/gh-3199-no-mem-leaks.result               |  16 +-
 test/sql/gh-3613-idx-alter-update-2.result         |  12 +-
 test/sql/gh-3613-idx-alter-update.result           |  16 +-
 test/sql/gh-3888-values-blob-assert.result         |   2 +-
 test/sql/gh2141-delete-trigger-drop-table.result   |  18 +-
 test/sql/gh2251-multiple-update.result             |  22 +--
 test/sql/gh2483-remote-persistency-check.result    |   8 +-
 .../gh2808-inline-unique-persistency-check.result  |  10 +-
 test/sql/icu-upper-lower.result                    |   2 +-
 test/sql/insert-unique.result                      |  12 +-
 test/sql/integer-overflow.result                   |   4 +-
 test/sql/iproto.result                             | 122 ++++++------
 test/sql/iproto.test.lua                           |   6 +-
 test/sql/max-on-index.result                       |  24 +--
 test/sql/message-func-indexes.result               |  14 +-
 test/sql/misc.result                               |   2 +-
 test/sql/no-pk-space.result                        |   6 +-
 test/sql/on-conflict.result                        |  36 ++--
 test/sql/persistency.result                        |  38 ++--
 test/sql/row-count.result                          |  62 +++---
 test/sql/savepoints.result                         |   2 +-
 test/sql/select-null.result                        |  10 +-
 test/sql/sql-debug.result                          |   4 +-
 test/sql/sql-statN-index-drop.result               |  42 ++--
 test/sql/tokenizer.result                          |   2 +-
 test/sql/transition.result                         |  34 ++--
 test/sql/transitive-transactions.result            |   8 +-
 test/sql/triggers.result                           | 122 ++++++------
 test/sql/types.result                              |  24 +--
 test/sql/update-with-nested-select.result          |  12 +-
 test/sql/upgrade.result                            |  16 +-
 test/sql/view.result                               |  72 +++----
 test/sql/view_delayed_wal.result                   |   8 +-
 test/sql/vinyl-opts.result                         |   6 +-
 55 files changed, 672 insertions(+), 669 deletions(-)

diff --git a/src/box/execute.c b/src/box/execute.c
index af21828..54013a5 100644
--- a/src/box/execute.c
+++ b/src/box/execute.c
@@ -47,7 +47,8 @@
 #include "box/lua/execute.h"
 
 const char *sql_info_key_strs[] = {
-	"row count",
+	"row_count",
+	"autoincrement_ids",
 };
 
 static_assert(sizeof(struct port_sql) <= sizeof(struct port),
@@ -263,8 +264,7 @@ error:
  * @retval -1 Client or memory error.
  */
 static inline int
-sql_get_description(struct sql_stmt *stmt, struct obuf *out,
-		    int column_count)
+sql_get_metadata(struct sql_stmt *stmt, struct obuf *out, int column_count)
 {
 	assert(column_count > 0);
 	int size = mp_sizeof_uint(IPROTO_METADATA) +
@@ -321,7 +321,7 @@ port_sql_dump_msgpack(struct port *port, struct obuf *out)
 			return -1;
 		}
 		pos = mp_encode_map(pos, keys);
-		if (sql_get_description(stmt, out, column_count) != 0)
+		if (sql_get_metadata(stmt, out, column_count) != 0)
 			return -1;
 		size = mp_sizeof_uint(IPROTO_DATA);
 		pos = (char *) obuf_alloc(out, size);
diff --git a/src/box/lua/execute.c b/src/box/lua/execute.c
index 71d64bc..3581969 100644
--- a/src/box/lua/execute.c
+++ b/src/box/lua/execute.c
@@ -14,8 +14,8 @@
  * @param column_count Statement's column count.
  */
 static inline void
-lua_sql_get_description(struct sql_stmt *stmt, struct lua_State *L,
-			int column_count)
+lua_sql_get_metadata(struct sql_stmt *stmt, struct lua_State *L,
+		     int column_count)
 {
 	assert(column_count > 0);
 	lua_createtable(L, column_count, 0);
@@ -47,7 +47,7 @@ port_sql_dump_lua(struct port *port, struct lua_State *L)
 	int column_count = sql_column_count(stmt);
 	if (column_count > 0) {
 		lua_createtable(L, 0, 2);
-		lua_sql_get_description(stmt, L, column_count);
+		lua_sql_get_metadata(stmt, L, column_count);
 		lua_setfield(L, -2, "metadata");
 		port_tuple_vtab.dump_lua(port, L);
 		lua_setfield(L, -2, "rows");
@@ -58,7 +58,7 @@ port_sql_dump_lua(struct port *port, struct lua_State *L)
 		lua_createtable(L, 0, stailq_empty(autoinc_id_list) ? 1 : 2);
 
 		luaL_pushuint64(L, db->nChange);
-		lua_setfield(L, -2, "rowcount");
+		lua_setfield(L, -2, sql_info_key_strs[SQL_INFO_ROW_COUNT]);
 
 		if (!stailq_empty(autoinc_id_list)) {
 			lua_newtable(L);
@@ -71,7 +71,9 @@ port_sql_dump_lua(struct port *port, struct lua_State *L)
 					luaL_pushint64(L, id_entry->id);
 				lua_rawseti(L, -2, i++);
 			}
-			lua_setfield(L, -2, "autoincrement_ids");
+			const char *field_name =
+				sql_info_key_strs[SQL_INFO_AUTOINCREMENT_IDS];
+			lua_setfield(L, -2, field_name);
 		}
 	}
 }
diff --git a/src/box/lua/net_box.c b/src/box/lua/net_box.c
index c7063d9..2dfc4fc 100644
--- a/src/box/lua/net_box.c
+++ b/src/box/lua/net_box.c
@@ -681,7 +681,7 @@ netbox_decode_sql_info(struct lua_State *L, const char **data)
 	assert(key == SQL_INFO_ROW_COUNT);
 	uint32_t row_count = mp_decode_uint(data);
 	lua_pushinteger(L, row_count);
-	lua_setfield(L, -2, "rowcount");
+	lua_setfield(L, -2, sql_info_key_strs[SQL_INFO_ROW_COUNT]);
 	/*
 	 * If data have two elements then second is
 	 * SQL_INFO_AUTOINCREMENT_IDS.
@@ -699,7 +699,8 @@ netbox_decode_sql_info(struct lua_State *L, const char **data)
 			luaL_pushint64(L, id);
 			lua_rawseti(L, -2, j + 1);
 		}
-		lua_setfield(L, -2, "autoincrement_ids");
+		lua_setfield(L, -2,
+			     sql_info_key_strs[SQL_INFO_AUTOINCREMENT_IDS]);
 	}
 }
 
diff --git a/test/box/sql-update-with-nested-select.result b/test/box/sql-update-with-nested-select.result
index 24da618..9f69c45 100644
--- a/test/box/sql-update-with-nested-select.result
+++ b/test/box/sql-update-with-nested-select.result
@@ -5,23 +5,23 @@ test_run = require('test_run').new()
 -- create space
 box.execute("CREATE TABLE t1(a integer primary key, b int UNIQUE, e int);");
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Debug
 -- box.execute("PRAGMA vdbe_debug=ON ; INSERT INTO zoobar VALUES (111, 222, 'c3', 444)")
 -- Seed entries
 box.execute("INSERT INTO t1 VALUES(1,4,6);");
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t1 VALUES(2,5,7);");
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Both entries must be updated
 box.execute("UPDATE t1 SET e=e+1 WHERE b IN (SELECT b FROM t1);");
 ---
-- rowcount: 2
+- row_count: 2
 ...
 -- Check
 box.execute("SELECT e FROM t1");
@@ -36,7 +36,7 @@ box.execute("SELECT e FROM t1");
 -- Cleanup
 box.execute("DROP TABLE t1;");
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Debug
 -- require("console").start()
diff --git a/test/sql/bind.result b/test/sql/bind.result
index acf23a5..618fde0 100644
--- a/test/sql/bind.result
+++ b/test/sql/bind.result
@@ -6,7 +6,7 @@ test_run = require('test_run').new()
 ...
 box.execute('CREATE TABLE test (id INT PRIMARY KEY, a FLOAT, b TEXT)')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.space.TEST:replace{1, 2, '3'}
 ---
@@ -292,5 +292,5 @@ test_run:cmd("setopt delimiter ''");
 ...
 box.execute('DROP TABLE test')
 ---
-- rowcount: 1
+- row_count: 1
 ...
diff --git a/test/sql/check-clear-ephemeral.result b/test/sql/check-clear-ephemeral.result
index 9fd6b87..b31c139 100644
--- a/test/sql/check-clear-ephemeral.result
+++ b/test/sql/check-clear-ephemeral.result
@@ -6,20 +6,20 @@ engine = test_run:get_cfg('engine')
 ...
 box.execute('pragma sql_default_engine=\''..engine..'\'')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 -- box.cfg()
 -- create space
 box.execute("CREATE TABLE t1(a INT,b INT,c INT,PRIMARY KEY(b,c));")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Debug
 -- box.execute("PRAGMA vdbe_debug=ON ; INSERT INTO zoobar VALUES (111, 222, 'c3', 444)")
 -- Seed entries
 box.execute("WITH RECURSIVE cnt(x) AS (VALUES(1) UNION ALL SELECT x+1 FROM cnt WHERE x<1000) INSERT INTO t1 SELECT x, x%40, x/40 FROM cnt;")
 ---
-- rowcount: 1000
+- row_count: 1000
 ...
 -- Ephemeral table is not belong to Tarantool, so must be cleared sql-way.
 box.execute("SELECT a FROM t1 ORDER BY b, a LIMIT 10 OFFSET 20;");
@@ -42,7 +42,7 @@ box.execute("SELECT a FROM t1 ORDER BY b, a LIMIT 10 OFFSET 20;");
 -- Cleanup
 box.execute("DROP TABLE t1")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Debug
 -- require("console").start()
diff --git a/test/sql/checks.result b/test/sql/checks.result
index 108fea6..f7cddec 100644
--- a/test/sql/checks.result
+++ b/test/sql/checks.result
@@ -13,7 +13,7 @@ engine = test_run:get_cfg('engine')
 ...
 box.execute('pragma sql_default_engine=\''..engine..'\'')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 --
 -- gh-3272: Move SQL CHECK into server
diff --git a/test/sql/clear.result b/test/sql/clear.result
index 0694a1e..b314744 100644
--- a/test/sql/clear.result
+++ b/test/sql/clear.result
@@ -6,17 +6,17 @@ engine = test_run:get_cfg('engine')
 ...
 box.execute('pragma sql_default_engine=\''..engine..'\'')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 -- box.cfg()
 -- create space
 box.execute("CREATE TABLE zoobar (c1 INT, c2 INT PRIMARY KEY, c3 TEXT, c4 INT)")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE UNIQUE INDEX zoobar2 ON zoobar(c1, c4)")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Debug
 -- box.execute("PRAGMA vdbe_debug=ON;")
@@ -141,7 +141,7 @@ box.execute("SELECT * FROM zoobar")
 -- Do clean up
 box.execute("DELETE FROM zoobar")
 ---
-- rowcount: 100
+- row_count: 100
 ...
 -- Make sure table is empty
 box.execute("SELECT * from zoobar")
@@ -160,11 +160,11 @@ box.execute("SELECT * from zoobar")
 -- Cleanup
 box.execute("DROP INDEX zoobar2 ON zoobar")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP TABLE zoobar")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Debug
 -- require("console").start()
diff --git a/test/sql/collation.result b/test/sql/collation.result
index d74a4a1..c763362 100644
--- a/test/sql/collation.result
+++ b/test/sql/collation.result
@@ -9,7 +9,7 @@ engine = test_run:get_cfg('engine')
 ...
 box.execute('pragma sql_default_engine=\''..engine..'\'')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 -- gh-3010: COLLATE after LIMIT should throw an error
 -- All of these tests should throw error "near "COLLATE": syntax error"
@@ -37,26 +37,26 @@ box.execute("SELECT 1 LIMIT 1 COLLATE BINARY, 1;")
 -- For tr-TR result depends on collation
 box.execute([[CREATE TABLE tu (descriptor VARCHAR(50) PRIMARY KEY, letter VARCHAR(50))]]);
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.internal.collation.create('TURKISH', 'ICU', 'tr-TR', {strength='primary'});
 ---
 ...
 box.execute([[INSERT INTO tu VALUES ('Latin Capital Letter I U+0049','I');]])
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute([[INSERT INTO tu VALUES ('Latin Small Letter I U+0069','i');]])
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute([[INSERT INTO tu VALUES ('Latin Capital Letter I With Dot Above U+0130','İ');]])
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute([[INSERT INTO tu VALUES ('Latin Small Letter Dotless I U+0131','ı');]])
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Without collation
 box.execute([[SELECT descriptor, upper(letter) AS upper,lower(letter) AS lower FROM tu;]])
@@ -99,7 +99,7 @@ box.internal.collation.create('GERMAN', 'ICU', 'de-DE', {strength='primary'});
 ...
 box.execute([[INSERT INTO tu VALUES ('German Small Letter Sharp S U+00DF','ß');]])
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Without collation
 box.execute([[SELECT descriptor, upper(letter), letter FROM tu where UPPER(letter) = 'SS';]])
@@ -132,7 +132,7 @@ box.internal.collation.drop('GERMAN')
 ...
 box.execute(([[DROP TABLE tu]]))
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.schema.user.grant('guest','read,write,execute', 'universe')
 ---
@@ -151,7 +151,7 @@ cn:close()
 --
 box.execute("CREATE TABLE t (id INT PRIMARY KEY, a TEXT, b TEXT COLLATE \"binary\");")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.space.T:format()[2]['collation']
 ---
@@ -163,7 +163,7 @@ box.space.T:format()[3]['collation']
 ...
 box.execute("DROP TABLE t;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- BINARY collation works in the same way as there is no collation
 -- at all.
@@ -223,7 +223,7 @@ box.space._collation:delete{0}
 --
 box.execute("CREATE TABLE t (id INT PRIMARY KEY, a TEXT, b TEXT COLLATE \"binary\", c TEXT COLLATE \"unicode_ci\");")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("SELECT * FROM t WHERE a = b;")
 ---
@@ -330,7 +330,7 @@ box.execute("SELECT b COLLATE \"unicode\" FROM t UNION SELECT a FROM t;")
 ...
 box.execute("DROP TABLE t;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.schema.user.revoke('guest', 'read,write,execute', 'universe')
 ---
@@ -357,26 +357,26 @@ box.schema.user.drop('tmp')
 -- Check that foreign key update doesn't fail with "unicode_ci".
 box.execute('CREATE TABLE t0 (s1 VARCHAR(5) COLLATE "unicode_ci" UNIQUE, id INT PRIMARY KEY AUTOINCREMENT);')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute('CREATE TABLE t1 (s1 INT PRIMARY KEY, s0 VARCHAR(5) COLLATE "unicode_ci" REFERENCES t0(s1));')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t0(s1) VALUES ('a');")
 ---
 - autoincrement_ids:
   - 1
-  rowcount: 1
+  row_count: 1
 ...
 box.execute("INSERT INTO t1 VALUES (1,'a');")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Should't fail.
 box.execute("UPDATE t0 SET s1 = 'A';")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("SELECT s1 FROM t0;")
 ---
@@ -398,30 +398,30 @@ box.execute("SELECT * FROM t1;")
 ...
 box.execute("DROP TABLE t1;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP TABLE t0;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Check that foreign key update fails with default collation.
 box.execute('CREATE TABLE t0 (s1 VARCHAR(5) UNIQUE, id INT PRIMARY KEY AUTOINCREMENT);')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute('CREATE TABLE t1 (s1 INT PRIMARY KEY, s0 VARCHAR(5) REFERENCES t0(s1));')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t0(s1) VALUES ('a');")
 ---
 - autoincrement_ids:
   - 1
-  rowcount: 1
+  row_count: 1
 ...
 box.execute("INSERT INTO t1 VALUES (1,'a');")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Should fail.
 box.execute("UPDATE t0 SET s1 = 'A';")
@@ -448,25 +448,25 @@ box.execute("SELECT s1 FROM t0;")
 ...
 box.execute("DROP TABLE t1;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP TABLE t0;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- gh-3937: result of concatination has derived collation.
 --
 box.execute("CREATE TABLE t4a(a TEXT COLLATE \"unicode\", b TEXT COLLATE \"unicode_ci\", c INT PRIMARY KEY);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t4a VALUES('ABC','abc',1);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t4a VALUES('ghi','ghi',3);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Only LHS of concatenation has implicitly set collation.
 -- Hence, no collation is used.
@@ -523,15 +523,15 @@ box.execute("SELECT c FROM t4a WHERE (a||b)=(b||a);")
 ...
 box.execute("CREATE TABLE t4b(a TEXT COLLATE \"unicode_ci\", b TEXT COLLATE \"unicode_ci\", c INT PRIMARY KEY);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t4b VALUES('BCD','bcd',1);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t4b VALUES('ghi','ghi',3);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Operands have the same implicit collation, so it is derived.
 --
@@ -559,11 +559,11 @@ box.execute("SELECT c FROM t4a WHERE (a||b COLLATE \"binary\")=(b COLLATE \"unic
 ...
 box.execute("INSERT INTO t4b VALUES('abc', 'xxx', 2);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t4b VALUES('gHz', 'xxx', 4);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Results are sorted with case-insensitive order.
 -- Otherwise capital latters come first.
@@ -600,19 +600,19 @@ box.space.T4B:drop()
 -- pk - default, sc - unicode_ci
 box.execute('CREATE TABLE t3 (s1 VARCHAR(5) PRIMARY KEY);')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute('CREATE INDEX i3 ON t3 (s1 collate "unicode_ci");')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t3 VALUES ('a');")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t3 VALUES ('A');")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("SELECT * FROM t3;")
 ---
@@ -625,24 +625,24 @@ box.execute("SELECT * FROM t3;")
 ...
 box.execute("DROP TABLE t3;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- pk - binary, sc - unicode
 box.execute('CREATE TABLE t3b (s1 VARCHAR(5) collate "binary" PRIMARY KEY);')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute('CREATE INDEX i3b ON t3b (s1 collate "unicode");')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t3b VALUES ('a');")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t3b VALUES ('A');")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("SELECT * FROM t3b;")
 ---
@@ -655,24 +655,24 @@ box.execute("SELECT * FROM t3b;")
 ...
 box.execute("DROP TABLE t3b;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- pk - binary, sc - unicode (make dup)
 box.execute('CREATE TABLE t3b (s1 VARCHAR(5) collate "binary" PRIMARY KEY);')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute('CREATE INDEX i3b ON t3b (s1 collate "unicode");')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t3b VALUES ('a');")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t3b VALUES ('A');")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t3b VALUES ('a');")
 ---
@@ -690,24 +690,24 @@ box.execute("SELECT * FROM t3b;")
 ...
 box.execute("DROP TABLE t3b;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- pk - unicode, sc - binary
 box.execute('CREATE TABLE t3c (s1 VARCHAR(5) collate "unicode" PRIMARY KEY);')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute('CREATE INDEX i3c ON t3c (s1 collate "binary");')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t3c VALUES ('a');")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t3c VALUES ('A');")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("SELECT * FROM t3c;")
 ---
@@ -720,24 +720,24 @@ box.execute("SELECT * FROM t3c;")
 ...
 box.execute("DROP TABLE t3c;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- pk - unicode, sc - binary (make dup)
 box.execute('CREATE TABLE t3c (s1 VARCHAR(5) collate "unicode" PRIMARY KEY);')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute('CREATE INDEX i3c ON t3c (s1 collate "binary");')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t3c VALUES ('a');")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t3c VALUES ('A');")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t3c VALUES ('a');")
 ---
@@ -755,24 +755,24 @@ box.execute("SELECT * FROM t3c;")
 ...
 box.execute("DROP TABLE t3c;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- pk - binary, sc - unicode_ci
 box.execute('CREATE TABLE t3d (s1 VARCHAR(5) collate "binary" PRIMARY KEY);')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute('CREATE INDEX i3d ON t3d (s1 collate "unicode_ci");')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t3d VALUES ('a');")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t3d VALUES ('A');")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("SELECT * FROM t3d;")
 ---
@@ -785,24 +785,24 @@ box.execute("SELECT * FROM t3d;")
 ...
 box.execute("DROP TABLE t3d;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- pk - binary, sc - unicode_ci (make dup)
 box.execute('CREATE TABLE t3d (s1 VARCHAR(5) collate "binary" PRIMARY KEY);')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute('CREATE INDEX i3d ON t3d (s1 collate "unicode_ci");')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t3d VALUES ('a');")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t3d VALUES ('A');")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t3d VALUES ('a');")
 ---
@@ -820,20 +820,20 @@ box.execute("SELECT * FROM t3d;")
 ...
 box.execute("DROP TABLE t3d;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- pk - unicode_ci, sc - binary (should fail)
 box.execute('CREATE TABLE t3e (s1 VARCHAR(5) collate "unicode_ci" PRIMARY KEY);')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute('CREATE INDEX i3e ON t3e (s1 collate "binary");')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t3e VALUES ('a');")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t3e VALUES ('A');")
 ---
@@ -850,24 +850,24 @@ box.execute("SELECT * FROM t3e;")
 ...
 box.execute("DROP TABLE t3e;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- pk - unicode, sc - unicode_ci
 box.execute('CREATE TABLE t3f (s1 VARCHAR(5) collate "unicode" PRIMARY KEY);')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute('CREATE INDEX i3f ON t3f (s1 collate "unicode_ci");')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t3f VALUES ('a');")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t3f VALUES ('A');")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("SELECT * FROM t3f;")
 ---
@@ -880,24 +880,24 @@ box.execute("SELECT * FROM t3f;")
 ...
 box.execute("DROP TABLE t3f;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- pk - unicode, sc - unicode_ci (make dup)
 box.execute('CREATE TABLE t3f (s1 VARCHAR(5) collate "unicode" PRIMARY KEY);')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute('CREATE INDEX i3f ON t3f (s1 collate "unicode_ci");')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t3f VALUES ('a');")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t3f VALUES ('A');")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t3f VALUES ('a');")
 ---
@@ -915,20 +915,20 @@ box.execute("SELECT * FROM t3f;")
 ...
 box.execute("DROP TABLE t3f;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- pk - unicode_ci, sc - unicode (should fail)
 box.execute('CREATE TABLE t3g (s1 VARCHAR(5) collate "unicode_ci" PRIMARY KEY);')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute('CREATE INDEX i3g ON t3g (s1 collate "unicode");')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t3g VALUES ('a');")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t3g VALUES ('A');")
 ---
@@ -945,24 +945,24 @@ box.execute("SELECT * FROM t3g;")
 ...
 box.execute("DROP TABLE t3g;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- pk - default, sc - multipart
 box.execute('CREATE TABLE qms1 (w VARCHAR(5) PRIMARY KEY, n VARCHAR(5), q VARCHAR(5), s INTEGER);')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute('CREATE INDEX iqms1 ON qms1 (w collate "unicode_ci", n);')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO qms1 VALUES ('www', 'nnn', 'qqq', 1);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO qms1 VALUES ('WWW', 'nnn', 'qqq', 2);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("SELECT * FROM qms1;")
 ---
@@ -981,23 +981,23 @@ box.execute("SELECT * FROM qms1;")
 ...
 box.execute("DROP TABLE qms1;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute('CREATE TABLE qms2 (w VARCHAR(5) PRIMARY KEY, n VARCHAR(5), q VARCHAR(5), s INTEGER);')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute('CREATE INDEX iqms2 ON qms2 (w collate "unicode", n);')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO qms2 VALUES ('www', 'nnn', 'qqq', 1);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO qms2 VALUES ('WWW', 'nnn', 'qqq', 2);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("SELECT * FROM qms2;")
 ---
@@ -1016,24 +1016,24 @@ box.execute("SELECT * FROM qms2;")
 ...
 box.execute("DROP TABLE qms2;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- pk - multipart, sc overlaps with pk
 box.execute('CREATE TABLE qms3 (w VARCHAR(5), n VARCHAR(5), q VARCHAR(5), s INTEGER, CONSTRAINT pk_qms3 PRIMARY KEY(w, n, q));')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute('CREATE INDEX iqms3 ON qms3 (w collate "unicode_ci", s);')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO qms3 VALUES ('www', 'nnn', 'qqq', 1);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO qms3 VALUES ('WWW', 'nnn', 'qqq', 2);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("SELECT * FROM qms3;")
 ---
@@ -1052,23 +1052,23 @@ box.execute("SELECT * FROM qms3;")
 ...
 box.execute("DROP TABLE qms3;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute('CREATE TABLE qms4 (w VARCHAR(5), n VARCHAR(5), q VARCHAR(5), s INTEGER, CONSTRAINT pk_qms4 PRIMARY KEY(w, n, q));')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute('CREATE INDEX iqms4 ON qms4 (w collate "unicode", s);')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO qms4 VALUES ('www', 'nnn', 'qqq', 1);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO qms4 VALUES ('WWW', 'nnn', 'qqq', 2);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("SELECT * FROM qms4;")
 ---
@@ -1087,18 +1087,18 @@ box.execute("SELECT * FROM qms4;")
 ...
 box.execute("DROP TABLE qms4;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- gh-3932: make sure set build-in functions derive collation
 -- from their arguments.
 --
 box.execute("CREATE TABLE jj (s1 INT PRIMARY KEY, s2 VARCHAR(3) COLLATE \"unicode_ci\");")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO jj VALUES (1,'A'), (2,'a')")
 ---
-- rowcount: 2
+- row_count: 2
 ...
 box.execute("SELECT DISTINCT trim(s2) FROM jj;")
 ---
@@ -1110,7 +1110,7 @@ box.execute("SELECT DISTINCT trim(s2) FROM jj;")
 ...
 box.execute("INSERT INTO jj VALUES (3, 'aS'), (4, 'AS');")
 ---
-- rowcount: 2
+- row_count: 2
 ...
 box.execute("SELECT DISTINCT replace(s2, 'S', 's') FROM jj;")
 ---
diff --git a/test/sql/delete-multiple-idx.result b/test/sql/delete-multiple-idx.result
index 9614ead..9485d32 100644
--- a/test/sql/delete-multiple-idx.result
+++ b/test/sql/delete-multiple-idx.result
@@ -6,41 +6,41 @@ engine = test_run:get_cfg('engine')
 ...
 box.execute('pragma sql_default_engine=\''..engine..'\'')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 -- box.cfg()
 -- Create space.
 box.execute("CREATE TABLE t3(id INT primary key,x INT,y INT);");
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE UNIQUE INDEX t3y ON t3(y);");
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Debug.
 -- box.execute("PRAGMA vdbe_debug=ON ; INSERT INTO zoobar VALUES (111, 222, 'c3', 444)")
 -- Seed entries.
 box.execute("INSERT INTO t3 VALUES (1, 1, NULL);");
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t3 VALUES(2,9,NULL);");
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t3 VALUES(3,5,NULL);");
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t3 VALUES(6, 234,567);");
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Delete should be done from both trees..
 box.execute("DELETE FROM t3 WHERE y IS NULL;");
 ---
-- rowcount: 3
+- row_count: 3
 ...
 -- Verify.
 box.execute("SELECT * FROM t3;");
@@ -58,11 +58,11 @@ box.execute("SELECT * FROM t3;");
 -- Cleanup.
 box.execute("DROP INDEX t3y ON t3");
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP TABLE t3;");
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Debug.
 -- require("console").start()
diff --git a/test/sql/delete.result b/test/sql/delete.result
index f4b5962..cc16e58 100644
--- a/test/sql/delete.result
+++ b/test/sql/delete.result
@@ -6,33 +6,33 @@ engine = test_run:get_cfg('engine')
 ...
 box.execute('pragma sql_default_engine=\''..engine..'\'')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 -- box.cfg()
 -- create space
 box.execute("CREATE TABLE t1(a INT, b INT, PRIMARY KEY(a, b));");
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Debug
 -- box.execute("PRAGMA vdbe_debug=ON ; INSERT INTO zoobar VALUES (111, 222, 'c3', 444)")
 -- Seed entries
 box.execute("INSERT INTO t1 VALUES(1, 2);");
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t1 VALUES(2, 4);");
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t1 VALUES(1, 5);");
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Two rows to be removed.
 box.execute("DELETE FROM t1 WHERE a=1;");
 ---
-- rowcount: 2
+- row_count: 2
 ...
 -- Verify
 box.execute("SELECT * FROM t1;");
@@ -48,7 +48,7 @@ box.execute("SELECT * FROM t1;");
 -- Cleanup
 box.execute("DROP TABLE t1;");
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Debug
 -- require("console").start()
@@ -61,11 +61,11 @@ box.execute("DELETE FROM t1;")
 ...
 box.execute("CREATE TABLE t2 (s1 INT PRIMARY KEY);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE TRIGGER t2 BEFORE INSERT ON t2 BEGIN DELETE FROM t1; END;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t2 VALUES (0);")
 ---
@@ -73,7 +73,7 @@ box.execute("INSERT INTO t2 VALUES (0);")
 ...
 box.execute("DROP TABLE t2;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 --
 -- gh-2201: TRUNCATE TABLE operation.
@@ -85,28 +85,28 @@ box.execute("TRUNCATE TABLE \"_sql_stat1\";")
 ...
 box.execute("CREATE TABLE t1(id INT PRIMARY KEY, a INT, b TEXT);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t1 VALUES(1, 1, 'one');")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t1 VALUES(2, 2, 'two');")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Truncate rollback
 box.execute("START TRANSACTION")
 ---
-- rowcount: 0
+- row_count: 0
 ...
 box.execute("TRUNCATE TABLE t1;")
 ---
-- rowcount: 0
+- row_count: 0
 ...
 box.execute("ROLLBACK")
 ---
-- rowcount: 0
+- row_count: 0
 ...
 box.execute("SELECT * FROM t1")
 ---
@@ -124,7 +124,7 @@ box.execute("SELECT * FROM t1")
 -- Can't truncate view.
 box.execute("CREATE VIEW v1 AS SELECT * FROM t1;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("TRUNCATE TABLE v1;")
 ---
@@ -133,7 +133,7 @@ box.execute("TRUNCATE TABLE v1;")
 -- Can't truncate table with FK.
 box.execute("CREATE TABLE t2(x INT PRIMARY KEY REFERENCES t1(id));")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("TRUNCATE TABLE t1;")
 ---
@@ -143,19 +143,19 @@ box.execute("TRUNCATE TABLE t1;")
 -- Table triggers should be ignored.
 box.execute("DROP TABLE t2;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE TABLE t2(x INT PRIMARY KEY);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE TRIGGER trig2 BEFORE DELETE ON t1 BEGIN INSERT INTO t2 VALUES(old.x); END;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("TRUNCATE TABLE t1;")
 ---
-- rowcount: 0
+- row_count: 0
 ...
 box.execute("SELECT * FROM t1;")
 ---
@@ -178,13 +178,13 @@ box.execute("SELECT * FROM t2;")
 -- Cleanup.
 box.execute("DROP VIEW v1");
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP TABLE t1;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP TABLE t2;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
diff --git a/test/sql/drop-index.result b/test/sql/drop-index.result
index 7693f9e..1104b5f 100644
--- a/test/sql/drop-index.result
+++ b/test/sql/drop-index.result
@@ -6,55 +6,55 @@ engine = test_run:get_cfg('engine')
 ...
 box.execute('pragma sql_default_engine=\''..engine..'\'')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 -- box.cfg()
 -- create space
 box.execute("CREATE TABLE zzoobar (c1 FLOAT, c2 INT PRIMARY KEY, c3 TEXT, c4 FLOAT)")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE UNIQUE INDEX zoobar2 ON zzoobar(c1, c4)")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE        INDEX zoobar3 ON zzoobar(c3)")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Debug
 -- box.execute("PRAGMA vdbe_debug=ON ; INSERT INTO zzoobar VALUES (111, 222, 'c3', 444)")
 -- Dummy entry
 box.execute("INSERT INTO zzoobar VALUES (111, 222, 'c3', 444)")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP INDEX zoobar2 ON zzoobar")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP INDEX zoobar3 On zzoobar")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- zoobar2 is dropped - should be OK
 box.execute("INSERT INTO zzoobar VALUES (111, 223, 'c3', 444)")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- zoobar2 was dropped. Re-creation should  be OK
 box.execute("CREATE INDEX zoobar2 ON zzoobar(c3)")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Cleanup
 box.execute("DROP INDEX zoobar2 ON zzoobar")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP TABLE zzoobar")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Debug
 -- require("console").start()
diff --git a/test/sql/drop-table.result b/test/sql/drop-table.result
index f752a92..48b0010 100644
--- a/test/sql/drop-table.result
+++ b/test/sql/drop-table.result
@@ -6,28 +6,28 @@ engine = test_run:get_cfg('engine')
 ...
 box.execute('pragma sql_default_engine=\''..engine..'\'')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 -- box.cfg()
 -- create space
 box.execute("CREATE TABLE zzzoobar (c1 INT, c2 INT PRIMARY KEY, c3 TEXT, c4 INT)")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Debug
 -- box.execute("PRAGMA vdbe_debug=ON ; INSERT INTO zzzoobar VALUES (111, 222, 'c3', 444)")
 box.execute("CREATE INDEX zb ON zzzoobar(c1, c3)")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Dummy entry
 box.execute("INSERT INTO zzzoobar VALUES (111, 222, 'c3', 444)")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP TABLE zzzoobar")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Table does not exist anymore. Should error here.
 box.execute("INSERT INTO zzzoobar VALUES (111, 222, 'c3', 444)")
@@ -39,13 +39,13 @@ box.execute("INSERT INTO zzzoobar VALUES (111, 222, 'c3', 444)")
 --
 box.execute("CREATE TABLE t1 (id INT PRIMARY KEY AUTOINCREMENT);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t1 VALUES (NULL);")
 ---
 - autoincrement_ids:
   - 1
-  rowcount: 1
+  row_count: 1
 ...
 box.snapshot()
 ---
@@ -54,7 +54,7 @@ box.snapshot()
 test_run:cmd('restart server default')
 box.execute("DROP TABLE t1;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Cleanup
 -- DROP TABLE should do the job
@@ -173,7 +173,7 @@ box.session.su('tmp')
 ...
 box.execute('CREATE TABLE t3(a INTEGER PRIMARY KEY);')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 --
 -- Error: Failed to create foreign key constraint.
@@ -185,7 +185,7 @@ box.execute('CREATE TABLE t4(x INTEGER PRIMARY KEY REFERENCES t3, a INT UNIQUE,
 ...
 box.execute('DROP TABLE t3;')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 --
 -- Check that _space, _index and _sequence have the same number of
diff --git a/test/sql/engine.result b/test/sql/engine.result
index bfbde14..cee9f7f 100644
--- a/test/sql/engine.result
+++ b/test/sql/engine.result
@@ -6,23 +6,23 @@ test_run = env.new()
 ...
 box.execute("pragma sql_default_engine='vinyl'")
 ---
-- rowcount: 0
+- row_count: 0
 ...
 box.execute("CREATE TABLE t1_vinyl(a INT PRIMARY KEY, b INT, c INT);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE TABLE t2_vinyl(a INT PRIMARY KEY, b INT, c INT);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("pragma sql_default_engine='memtx'")
 ---
-- rowcount: 0
+- row_count: 0
 ...
 box.execute("CREATE TABLE t3_memtx(a INT PRIMARY KEY, b INT, c INT);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 assert(box.space.T1_VINYL.engine == 'vinyl')
 ---
@@ -38,13 +38,13 @@ assert(box.space.T3_MEMTX.engine == 'memtx')
 ...
 box.execute("DROP TABLE t1_vinyl;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP TABLE t2_vinyl;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP TABLE t3_memtx;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
diff --git a/test/sql/errinj.result b/test/sql/errinj.result
index ebea128..71df9f3 100644
--- a/test/sql/errinj.result
+++ b/test/sql/errinj.result
@@ -9,7 +9,7 @@ engine = test_run:get_cfg('engine')
 ...
 box.execute('pragma sql_default_engine=\''..engine..'\'')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 errinj = box.error.injection
 ---
@@ -21,19 +21,19 @@ fiber = require('fiber')
 -- reused.
 box.execute("CREATE TABLE t4 (id INTEGER PRIMARY KEY, a INTEGER);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t4 VALUES (1,1)")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t4 VALUES (2,1)")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t4 VALUES (3,2)")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 errinj.set('ERRINJ_TUPLE_FORMAT_COUNT', 200)
 ---
@@ -56,11 +56,11 @@ errinj.set('ERRINJ_TUPLE_FORMAT_COUNT', -1)
 ...
 box.execute('DROP TABLE t4')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute('create table test (id int primary key, a float, b text)')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.schema.user.grant('guest','read,write,execute', 'universe')
 ---
@@ -116,7 +116,7 @@ while f1:status() ~= 'dead' do fiber.sleep(0) end
 ...
 insert_res
 ---
-- rowcount: 1
+- row_count: 1
 ...
 select_res
 ---
@@ -131,7 +131,7 @@ cn:close()
 ...
 box.execute('drop table test')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 --
 -- gh-3326: after the iproto start using new buffers rotation
@@ -140,7 +140,7 @@ box.execute('drop table test')
 --
 box.execute('CREATE TABLE test (id integer primary key)')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 cn = remote.connect(box.cfg.listen)
 ---
@@ -167,7 +167,7 @@ errinj.set("ERRINJ_IPROTO_TX_DELAY", false)
 ...
 box.execute('DROP TABLE test')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.schema.user.revoke('guest', 'read,write,execute', 'universe')
 ---
@@ -177,11 +177,11 @@ box.schema.user.revoke('guest', 'read,write,execute', 'universe')
 ----
 box.execute("CREATE TABLE t1(id INTEGER PRIMARY KEY, a INTEGER);");
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE TABLE t2(id INTEGER PRIMARY KEY, a INTEGER);");
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.error.injection.set("ERRINJ_WAL_IO", true)
 ---
@@ -201,11 +201,11 @@ box.error.injection.set("ERRINJ_WAL_IO", false)
 ...
 box.execute("CREATE TRIGGER t1t INSERT ON t1 BEGIN INSERT INTO t2 VALUES (1, 1); END;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t1 VALUES (3, 3);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("SELECT * from t1");
 ---
@@ -265,15 +265,15 @@ box.error.injection.set("ERRINJ_WAL_IO", false)
 ...
 box.execute("DELETE FROM t1;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DELETE FROM t2;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t1 VALUES (3, 3);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("SELECT * from t1");
 ---
@@ -297,18 +297,18 @@ box.execute("SELECT * from t2");
 ...
 box.execute("DROP TABLE t1;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP TABLE t2;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Tests which are aimed at verifying work of commit/rollback
 -- triggers on _fk_constraint space.
 --
 box.execute("CREATE TABLE t3 (id FLOAT PRIMARY KEY, a INT REFERENCES t3, b INT UNIQUE);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 t = box.space._fk_constraint:select{}[1]:totable()
 ---
@@ -350,11 +350,11 @@ errinj.set("ERRINJ_WAL_IO", false)
 ...
 box.execute("INSERT INTO t3 VALUES(1, 1, 3);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DELETE FROM t3;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.snapshot()
 ---
@@ -362,7 +362,7 @@ box.snapshot()
 ...
 box.execute("ALTER TABLE t3 ADD CONSTRAINT fk1 FOREIGN KEY (b) REFERENCES t3;")
 ---
-- rowcount: 0
+- row_count: 0
 ...
 box.execute("INSERT INTO t3 VALUES(1, 1, 3);")
 ---
@@ -386,7 +386,7 @@ errinj.set("ERRINJ_WAL_IO", false)
 ...
 box.execute("DROP TABLE t3;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- gh-3780: space without PK raises error if
 -- it is used in SQL queries.
@@ -399,11 +399,11 @@ fiber = require('fiber')
 ...
 box.execute("CREATE TABLE t (id INT PRIMARY KEY);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t VALUES (1);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 errinj.set("ERRINJ_WAL_DELAY", true)
 ---
diff --git a/test/sql/foreign-keys.result b/test/sql/foreign-keys.result
index afd75c1..2331c59 100644
--- a/test/sql/foreign-keys.result
+++ b/test/sql/foreign-keys.result
@@ -10,19 +10,19 @@ test_run:cmd('restart server default with cleanup=1')
 --
 box.execute("CREATE TABLE t1 (id INT PRIMARY KEY, a INT, b INT);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE UNIQUE INDEX i1 ON t1(a);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE TABLE t2 (a INT, b INT, id INT PRIMARY KEY);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE VIEW v1 AS SELECT * FROM t1;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Parent and child spaces must exist.
 --
@@ -62,7 +62,7 @@ box.space._fk_constraint:insert(t)
 ...
 box.execute("DROP VIEW v1;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Match clause can be only one of: simple, partial, full.
 --
@@ -94,7 +94,7 @@ box.space._fk_constraint:insert(t)
 --
 box.execute("INSERT INTO t2 VALUES (1, 2, 3);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 t = {'fk_1', child_id, parent_id, false, 'simple', 'restrict', 'restrict', {2}, {1}}
 ---
@@ -106,7 +106,7 @@ box.space._fk_constraint:insert(t)
 ...
 box.execute("DELETE FROM t2;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Links must be specififed correctly.
 --
@@ -223,11 +223,11 @@ box.space.T1:drop()
 --
 box.execute("CREATE TABLE child (id INT PRIMARY KEY, a INT);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE TABLE parent (a INT, id INT PRIMARY KEY);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 parent_id = box.space._space.index.name:select('PARENT')[1]['id']
 ---
@@ -342,15 +342,15 @@ box.space.PARENT:drop()
 --
 box.execute('CREATE TABLE tp (id INT PRIMARY KEY, a INT UNIQUE)')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute('CREATE TABLE tc (id INT PRIMARY KEY, a INT REFERENCES tp(a) MATCH FULL ON DELETE SET NULL)')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute('ALTER TABLE tc ADD CONSTRAINT fk1 FOREIGN KEY (id) REFERENCES tp(id) MATCH PARTIAL ON DELETE CASCADE ON UPDATE SET NULL')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 box.space._fk_constraint:select{}
 ---
@@ -360,17 +360,17 @@ box.space._fk_constraint:select{}
 ...
 box.execute('DROP TABLE tc')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute('DROP TABLE tp')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- gh-3475: ON UPDATE and ON DELETE clauses must appear once;
 -- MATCH clause must come first.
 box.execute('CREATE TABLE t1 (id INT PRIMARY KEY);')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute('CREATE TABLE t2 (id INT PRIMARY KEY REFERENCES t2 ON DELETE CASCADE ON DELETE RESTRICT);')
 ---
@@ -397,7 +397,7 @@ box.space.T1:drop()
 --
 box.execute("CREATE TABLE t4 (id INT PRIMARY KEY REFERENCES t4);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.space.T4:drop()
 ---
diff --git a/test/sql/func-recreate.result b/test/sql/func-recreate.result
index 85c2c9c..90182e7 100644
--- a/test/sql/func-recreate.result
+++ b/test/sql/func-recreate.result
@@ -6,7 +6,7 @@ engine = test_run:get_cfg('engine')
 ...
 box.execute('pragma sql_default_engine=\''..engine..'\'')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 -- Check errors during function create process
 fiber = require('fiber')
diff --git a/test/sql/gh-2347-max-int-literals.result b/test/sql/gh-2347-max-int-literals.result
index c3fe48f..537bcfb 100644
--- a/test/sql/gh-2347-max-int-literals.result
+++ b/test/sql/gh-2347-max-int-literals.result
@@ -6,7 +6,7 @@ engine = test_run:get_cfg('engine')
 ...
 box.execute('pragma sql_default_engine=\''..engine..'\'')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 box.cfg{}
 ---
diff --git a/test/sql/gh-2362-select-access-rights.result b/test/sql/gh-2362-select-access-rights.result
index c6026c1..edaa6db 100644
--- a/test/sql/gh-2362-select-access-rights.result
+++ b/test/sql/gh-2362-select-access-rights.result
@@ -9,23 +9,23 @@ nb = require('net.box')
 ...
 box.execute("PRAGMA sql_default_engine='"..engine.."'")
 ---
-- rowcount: 0
+- row_count: 0
 ...
 box.execute("CREATE TABLE t1 (s1 INT PRIMARY KEY, s2 INT UNIQUE);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE TABLE t2 (s1 INT PRIMARY KEY);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t1 VALUES (1, 1);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t2 VALUES (1);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.schema.user.grant('guest','read', 'space', 'T1')
 ---
@@ -65,7 +65,7 @@ c:execute('SELECT * FROM t1, t2 WHERE t1.s1 = t2.s1')
 ...
 box.execute("CREATE VIEW v AS SELECT * FROM t1")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.schema.user.grant('guest','read', 'space', 'V')
 ---
@@ -79,7 +79,7 @@ c:execute('SELECT * FROM v')
 ...
 box.execute('CREATE TABLE t3 (s1 INT PRIMARY KEY, fk INT, FOREIGN KEY (fk) REFERENCES t1(s2))')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.schema.user.grant('guest','read','space', 'T3')
 ---
@@ -103,17 +103,17 @@ box.schema.user.revoke('guest','read','space', 'T3')
 ...
 box.execute('DROP VIEW v')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute('DROP TABLE t3')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute('DROP TABLE t2')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP TABLE t1")
 ---
-- rowcount: 1
+- row_count: 1
 ...
diff --git a/test/sql/gh-2929-primary-key.result b/test/sql/gh-2929-primary-key.result
index 25d4149..abb38fb 100644
--- a/test/sql/gh-2929-primary-key.result
+++ b/test/sql/gh-2929-primary-key.result
@@ -6,7 +6,7 @@ engine = test_run:get_cfg('engine')
 ...
 box.execute('pragma sql_default_engine=\''..engine..'\'')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 -- All tables in SQL are now WITHOUT ROW ID, so if user
 -- tries to create table without a primary key, an appropriate error message
@@ -16,7 +16,7 @@ box.cfg{}
 ...
 box.execute("CREATE TABLE t1(a INT PRIMARY KEY, b INT UNIQUE)")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE TABLE t2(a INT UNIQUE, b INT)")
 ---
@@ -36,7 +36,7 @@ box.execute("CREATE TABLE t5(a FLOAT, b FLOAT UNIQUE)")
 ...
 box.execute("DROP TABLE t1")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 --
 -- gh-3522: invalid primary key name
diff --git a/test/sql/gh-2981-check-autoinc.result b/test/sql/gh-2981-check-autoinc.result
index ee5ab4c..9e347ca 100644
--- a/test/sql/gh-2981-check-autoinc.result
+++ b/test/sql/gh-2981-check-autoinc.result
@@ -6,26 +6,26 @@ engine = test_run:get_cfg('engine')
 ...
 box.execute('pragma sql_default_engine=\''..engine..'\'')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 box.cfg{}
 ---
 ...
 box.execute("CREATE TABLE t1 (s1 INTEGER PRIMARY KEY AUTOINCREMENT, s2 INTEGER, CHECK (s1 <> 19));");
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE TABLE t2 (s1 INTEGER PRIMARY KEY AUTOINCREMENT, s2 INTEGER, CHECK (s1 <> 19 AND s1 <> 25));");
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE TABLE t3 (s1 INTEGER PRIMARY KEY AUTOINCREMENT, s2 INTEGER, CHECK (s1 < 10));");
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("insert into t1 values (18, null);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("insert into t1(s2) values (null);")
 ---
@@ -33,7 +33,7 @@ box.execute("insert into t1(s2) values (null);")
 ...
 box.execute("insert into t2 values (18, null);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("insert into t2(s2) values (null);")
 ---
@@ -41,7 +41,7 @@ box.execute("insert into t2(s2) values (null);")
 ...
 box.execute("insert into t2 values (24, null);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("insert into t2(s2) values (null);")
 ---
@@ -49,7 +49,7 @@ box.execute("insert into t2(s2) values (null);")
 ...
 box.execute("insert into t3 values (9, null)")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("insert into t3(s2) values (null)")
 ---
@@ -57,13 +57,13 @@ box.execute("insert into t3(s2) values (null)")
 ...
 box.execute("DROP TABLE t1")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP TABLE t2")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP TABLE t3")
 ---
-- rowcount: 1
+- row_count: 1
 ...
diff --git a/test/sql/gh-3199-no-mem-leaks.result b/test/sql/gh-3199-no-mem-leaks.result
index 759645b..8ccad6d 100644
--- a/test/sql/gh-3199-no-mem-leaks.result
+++ b/test/sql/gh-3199-no-mem-leaks.result
@@ -6,7 +6,7 @@ engine = test_run:get_cfg('engine')
 ...
 box.execute('pragma sql_default_engine=\''..engine..'\'')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 fiber = require('fiber')
 ---
@@ -17,11 +17,11 @@ fiber = require('fiber')
 -- box.cfg()
 box.execute('CREATE TABLE test (id INT PRIMARY KEY, x INTEGER, y INTEGER)')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute('INSERT INTO test VALUES (1, 1, 1), (2, 2, 2)')
 ---
-- rowcount: 2
+- row_count: 2
 ...
 box.execute('SELECT x, y, x + y FROM test ORDER BY y')
 ---
@@ -98,15 +98,15 @@ fiber.info()[fiber.self().id()].memory.used
 ...
 box.execute('CREATE TABLE test2 (id INT PRIMARY KEY, a TEXT, b INTEGER)')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute('INSERT INTO test2 VALUES (1, \'abc\', 1), (2, \'hello\', 2)')
 ---
-- rowcount: 2
+- row_count: 2
 ...
 box.execute('INSERT INTO test2 VALUES (3, \'test\', 3), (4, \'xx\', 4)')
 ---
-- rowcount: 2
+- row_count: 2
 ...
 box.execute('SELECT a, id + 2, b FROM test2 WHERE b < id * 2 ORDER BY a ')
 ---
@@ -222,9 +222,9 @@ fiber.info()[fiber.self().id()].memory.used
 -- Cleanup
 box.execute('DROP TABLE test')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute('DROP TABLE test2')
 ---
-- rowcount: 1
+- row_count: 1
 ...
diff --git a/test/sql/gh-3613-idx-alter-update-2.result b/test/sql/gh-3613-idx-alter-update-2.result
index d899121..ff63eb2 100644
--- a/test/sql/gh-3613-idx-alter-update-2.result
+++ b/test/sql/gh-3613-idx-alter-update-2.result
@@ -6,29 +6,29 @@ engine = test_run:get_cfg('engine')
 ...
 box.execute('pragma sql_default_engine=\''..engine..'\'')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 box.execute('CREATE TABLE t (s1 INT PRIMARY KEY)')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute('CREATE INDEX i ON t (s1)')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute('ALTER TABLE t RENAME TO j3')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 -- After gh-3613 fix, bug in cmp_def was discovered.
 -- Comparison didn't take .opts.sql into account.
 test_run:cmd('restart server default')
 box.execute('DROP INDEX i ON j3')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Cleanup
 box.execute('DROP TABLE j3')
 ---
-- rowcount: 1
+- row_count: 1
 ...
diff --git a/test/sql/gh-3613-idx-alter-update.result b/test/sql/gh-3613-idx-alter-update.result
index 85078df..20315df 100644
--- a/test/sql/gh-3613-idx-alter-update.result
+++ b/test/sql/gh-3613-idx-alter-update.result
@@ -6,24 +6,24 @@ engine = test_run:get_cfg('engine')
 ...
 box.execute('pragma sql_default_engine=\''..engine..'\'')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 box.execute('CREATE TABLE t (s1 INT PRIMARY KEY)')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute('CREATE INDEX i ON t (s1)')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute('ALTER TABLE t RENAME TO j3')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 -- Due to gh-3613, next stmt caused segfault
 box.execute('DROP INDEX i ON j3')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Make sure that no artifacts remain after restart.
 box.snapshot()
@@ -37,7 +37,7 @@ box.execute('DROP INDEX i ON j3')
 ...
 box.execute('CREATE INDEX i ON j3 (s1)')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Check that _index was altered properly
 box.snapshot()
@@ -47,10 +47,10 @@ box.snapshot()
 test_run:cmd('restart server default')
 box.execute('DROP INDEX i ON j3')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Cleanup
 box.execute('DROP TABLE j3')
 ---
-- rowcount: 1
+- row_count: 1
 ...
diff --git a/test/sql/gh-3888-values-blob-assert.result b/test/sql/gh-3888-values-blob-assert.result
index e7f3e38..3fee884 100644
--- a/test/sql/gh-3888-values-blob-assert.result
+++ b/test/sql/gh-3888-values-blob-assert.result
@@ -12,7 +12,7 @@ engine = test_run:get_cfg('engine')
 ...
 box.execute('pragma sql_default_engine=\''..engine..'\'')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 -- check 'VALUES' against typedef keywords (should fail)
 box.execute('VALUES(scalar)')
diff --git a/test/sql/gh2141-delete-trigger-drop-table.result b/test/sql/gh2141-delete-trigger-drop-table.result
index f1fefc7..7c50454 100644
--- a/test/sql/gh2141-delete-trigger-drop-table.result
+++ b/test/sql/gh2141-delete-trigger-drop-table.result
@@ -6,36 +6,36 @@ engine = test_run:get_cfg('engine')
 ...
 box.execute('pragma sql_default_engine=\''..engine..'\'')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 -- create space
 box.execute("CREATE TABLE t(id INT PRIMARY KEY)")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE TRIGGER tt_bu BEFORE UPDATE ON t BEGIN SELECT 1; END")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE TRIGGER tt_au AFTER UPDATE ON t BEGIN SELECT 1; END")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE TRIGGER tt_bi BEFORE INSERT ON t BEGIN SELECT 1; END")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE TRIGGER tt_ai AFTER INSERT ON t BEGIN SELECT 1; END")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE TRIGGER tt_bd BEFORE DELETE ON t BEGIN SELECT 1; END")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE TRIGGER tt_ad AFTER DELETE ON t BEGIN SELECT 1; END")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- check that these triggers exist
 box.execute("SELECT \"name\", \"opts\" FROM \"_trigger\"")
@@ -56,7 +56,7 @@ box.execute("SELECT \"name\", \"opts\" FROM \"_trigger\"")
 -- drop table
 box.execute("DROP TABLE t")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- check that triggers were dropped with deleted table
 box.execute("SELECT \"name\", \"opts\" FROM \"_trigger\"")
diff --git a/test/sql/gh2251-multiple-update.result b/test/sql/gh2251-multiple-update.result
index cc1a4c8..73e7269 100644
--- a/test/sql/gh2251-multiple-update.result
+++ b/test/sql/gh2251-multiple-update.result
@@ -7,24 +7,24 @@ engine = test_run:get_cfg('engine')
 ...
 box.execute('pragma sql_default_engine=\''..engine..'\'')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 -- box.cfg()
 box.execute("CREATE TABLE t1(a integer primary key, b INT UNIQUE, e INT);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t1 VALUES(1,4,6);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t1 VALUES(2,5,7);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("UPDATE t1 SET e=e+1 WHERE b IN (SELECT b FROM t1);")
 ---
-- rowcount: 2
+- row_count: 2
 ...
 box.execute("SELECT e FROM t1")
 ---
@@ -37,19 +37,19 @@ box.execute("SELECT e FROM t1")
 ...
 box.execute("CREATE TABLE t2(a integer primary key, b INT UNIQUE, c FLOAT, d FLOAT, e INT,  UNIQUE(c,d));")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t2 VALUES(1,2,3,4,5);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t2 VALUES(2,3,4,4,6);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("UPDATE t2 SET e=e+1 WHERE b IN (SELECT b FROM t2);")
 ---
-- rowcount: 2
+- row_count: 2
 ...
 box.execute("SELECT e FROM t2")
 ---
@@ -62,11 +62,11 @@ box.execute("SELECT e FROM t2")
 ...
 box.execute("DROP TABLE t1")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP TABLE t2")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Debug
 -- require("console").start()
diff --git a/test/sql/gh2483-remote-persistency-check.result b/test/sql/gh2483-remote-persistency-check.result
index 0a45db4..85c0620 100644
--- a/test/sql/gh2483-remote-persistency-check.result
+++ b/test/sql/gh2483-remote-persistency-check.result
@@ -10,7 +10,7 @@ engine = test_run:get_cfg('engine')
 ...
 box.execute('pragma sql_default_engine=\''..engine..'\'')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 box.schema.user.grant('guest', 'read,write,execute', 'universe')
 ---
@@ -18,11 +18,11 @@ box.schema.user.grant('guest', 'read,write,execute', 'universe')
 -- Create a table and insert a datum
 box.execute([[CREATE TABLE t(id int PRIMARY KEY)]])
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute([[INSERT INTO t (id) VALUES (1)]])
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Sanity check
 box.execute([[SELECT * FROM t]])
@@ -48,7 +48,7 @@ c:eval([[ return box.execute('SELECT * FROM t') ]])
 -- sql.execute([[SELECT * FROM t]])
 box.execute([[DROP TABLE t]])
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.schema.user.revoke('guest', 'read,write,execute', 'universe')
 ---
diff --git a/test/sql/gh2808-inline-unique-persistency-check.result b/test/sql/gh2808-inline-unique-persistency-check.result
index d2440da..ea04c4a 100644
--- a/test/sql/gh2808-inline-unique-persistency-check.result
+++ b/test/sql/gh2808-inline-unique-persistency-check.result
@@ -10,16 +10,16 @@ engine = test_run:get_cfg('engine')
 ...
 box.execute('pragma sql_default_engine=\''..engine..'\'')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 -- Create a table and insert a datum
 box.execute([[CREATE TABLE t1(a INT PRIMARY KEY, b INT, UNIQUE(b));]])
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute([[INSERT INTO t1 VALUES(1,2);]])
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Sanity check
 box.execute([[SELECT * FROM t1]])
@@ -38,7 +38,7 @@ test_run:cmd('restart server default');
 -- correctly after restart (#2808)
 box.execute([[INSERT INTO t1 VALUES(2,3);]])
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Sanity check
 box.execute([[SELECT * FROM t1]])
@@ -55,5 +55,5 @@ box.execute([[SELECT * FROM t1]])
 -- Cleanup
 box.execute([[drop table t1;]])
 ---
-- rowcount: 1
+- row_count: 1
 ...
diff --git a/test/sql/icu-upper-lower.result b/test/sql/icu-upper-lower.result
index c062beb..fffe2f3 100644
--- a/test/sql/icu-upper-lower.result
+++ b/test/sql/icu-upper-lower.result
@@ -6,7 +6,7 @@ engine = test_run:get_cfg('engine')
 ...
 box.execute('pragma sql_default_engine=\''..engine..'\'')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 test_run:cmd("setopt delimiter ';'")
 ---
diff --git a/test/sql/insert-unique.result b/test/sql/insert-unique.result
index 75354de..61b35a3 100644
--- a/test/sql/insert-unique.result
+++ b/test/sql/insert-unique.result
@@ -6,24 +6,24 @@ engine = test_run:get_cfg('engine')
 ...
 box.execute('pragma sql_default_engine=\''..engine..'\'')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 -- box.cfg()
 -- create space
 box.execute("CREATE TABLE zoobar (c1 INT, c2 INT PRIMARY KEY, c3 TEXT, c4 INT)")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE UNIQUE INDEX zoobar2 ON zoobar(c1, c4)")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Debug
 -- box.execute("PRAGMA vdbe_debug=ON ; INSERT INTO zoobar VALUES (111, 222, 'c3', 444)")
 -- Seed entry
 box.execute("INSERT INTO zoobar VALUES (111, 222, 'c3', 444)")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- PK must be unique
 box.execute("INSERT INTO zoobar VALUES (112, 222, 'c3', 444)")
@@ -40,11 +40,11 @@ box.execute("INSERT INTO zoobar VALUES (111, 223, 'c3', 444)")
 -- Cleanup
 box.execute("DROP INDEX zoobar2 ON zoobar")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP TABLE zoobar")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Debug
 -- require("console").start()
diff --git a/test/sql/integer-overflow.result b/test/sql/integer-overflow.result
index 622e9a2..d6ca66e 100644
--- a/test/sql/integer-overflow.result
+++ b/test/sql/integer-overflow.result
@@ -6,7 +6,7 @@ engine = test_run:get_cfg('engine')
 ...
 box.execute('pragma sql_default_engine=\''..engine..'\'')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 -- gh-3735: make sure that integer overflows errors are
 -- handled during VDBE execution.
@@ -66,7 +66,7 @@ box.execute('SELECT CAST(9223372036854775807.0 AS INTEGER);')
 --
 box.execute('CREATE TABLE t (id INT PRIMARY KEY);')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.space.T:insert({9223372036854775809})
 ---
diff --git a/test/sql/iproto.result b/test/sql/iproto.result
index 112225b..5f9e6a5 100644
--- a/test/sql/iproto.result
+++ b/test/sql/iproto.result
@@ -9,11 +9,11 @@ engine = test_run:get_cfg('engine')
 ...
 box.execute('pragma sql_default_engine=\''..engine..'\'')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 box.execute('create table test (id int primary key, a float, b text)')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 space = box.space.TEST
 ---
@@ -82,22 +82,22 @@ type(ret.rows[1])
 ---
 - cdata
 ...
--- Operation with rowcount result.
+-- Operation with row_count result.
 cn:execute('insert into test values (10, 11, NULL)')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 cn:execute('delete from test where a = 5')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 cn:execute('insert into test values (11, 12, NULL), (12, 12, NULL), (13, 12, NULL)')
 ---
-- rowcount: 3
+- row_count: 3
 ...
 cn:execute('delete from test where a = 12')
 ---
-- rowcount: 3
+- row_count: 3
 ...
 -- SQL errors.
 cn:execute('insert into not_existing_table values ("kek")')
@@ -201,7 +201,7 @@ cn:execute('select * from test limit 1 offset ?', {'Hello'})
 -- gh-2608 SQL iproto DDL
 cn:execute('create table test2(id int primary key, a int, b int, c int)')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.space.TEST2.name
 ---
@@ -209,7 +209,7 @@ box.space.TEST2.name
 ...
 cn:execute('insert into test2 values (1, 1, 1, 1)')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 cn:execute('select * from test2')
 ---
@@ -227,7 +227,7 @@ cn:execute('select * from test2')
 ...
 cn:execute('create index test2_a_b_index on test2(a, b)')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 #box.space.TEST2.index
 ---
@@ -235,7 +235,7 @@ cn:execute('create index test2_a_b_index on test2(a, b)')
 ...
 cn:execute('drop table test2')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.space.TEST2
 ---
@@ -245,100 +245,100 @@ box.space.TEST2
 -- Test CREATE [IF NOT EXISTS] TABLE.
 cn:execute('create table test3(id int primary key, a int, b int)')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Rowcount = 1, although two tuples were created:
 -- for _space and for _index.
 cn:execute('insert into test3 values (1, 1, 1), (2, 2, 2), (3, 3, 3)')
 ---
-- rowcount: 3
+- row_count: 3
 ...
 cn:execute('create table if not exists test3(id int primary key)')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 -- Test CREATE VIEW [IF NOT EXISTS] and
 --      DROP   VIEW [IF EXISTS].
 cn:execute('create view test3_view(id) as select id from test3')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 cn:execute('create view if not exists test3_view(id) as select id from test3')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 cn:execute('drop view test3_view')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 cn:execute('drop view if exists test3_view')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 -- Test CREATE INDEX [IF NOT EXISTS] and
 --      DROP   INDEX [IF EXISTS].
 cn:execute('create index test3_sec on test3(a, b)')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 cn:execute('create index if not exists test3_sec on test3(a, b)')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 cn:execute('drop index test3_sec on test3')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 cn:execute('drop index if exists test3_sec on test3')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 -- Test CREATE TRIGGER [IF NOT EXISTS] and
 --      DROP   TRIGGER [IF EXISTS].
 cn:execute('create trigger trig INSERT ON test3 BEGIN SELECT * FROM test3; END;')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 cn:execute('create trigger if not exists trig INSERT ON test3 BEGIN SELECT * FROM test3; END;')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 cn:execute('drop trigger trig')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 cn:execute('drop trigger if exists trig')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 -- Test DROP TABLE [IF EXISTS].
 -- Create more indexes, triggers and _truncate tuple.
 cn:execute('create index idx1 on test3(a)')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 cn:execute('create index idx2 on test3(b)')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.space.TEST3:truncate()
 ---
 ...
 cn:execute('create trigger trig INSERT ON test3 BEGIN SELECT * FROM test3; END;')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 cn:execute('insert into test3 values (1, 1, 1), (2, 2, 2), (3, 3, 3)')
 ---
-- rowcount: 3
+- row_count: 3
 ...
 cn:execute('drop table test3')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 cn:execute('drop table if exists test3')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 --
 -- gh-2948: sql: remove unnecessary templates for binding
@@ -406,7 +406,7 @@ res.metadata
 ...
 box.execute('drop table test')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 cn:close()
 ---
@@ -419,7 +419,7 @@ cn = remote.connect(box.cfg.listen)
 ...
 cn:execute('create table test (id integer primary key, a integer, b integer)')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 future1 = cn:execute('insert into test values (1, 1, 1)', nil, nil, {is_async = true})
 ---
@@ -432,7 +432,7 @@ future3 = cn:execute('insert into test values (2, 2, 2), (3, 3, 3)', nil, nil, {
 ...
 future1:wait_result()
 ---
-- rowcount: 1
+- row_count: 1
 ...
 future2:wait_result()
 ---
@@ -442,7 +442,7 @@ future2:wait_result()
 ...
 future3:wait_result()
 ---
-- rowcount: 2
+- row_count: 2
 ...
 future4 = cn:execute('select * from test', nil, nil, {is_async = true})
 ---
@@ -466,37 +466,37 @@ cn:close()
 ...
 box.execute('drop table test')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- gh-2618 Return generated columns after INSERT in IPROTO.
 -- Return all ids generated in current INSERT statement.
 box.execute('create table test (id integer primary key autoincrement, a integer)')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 cn = remote.connect(box.cfg.listen)
 ---
 ...
 cn:execute('insert into test values (1, 1)')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 cn:execute('insert into test values (null, 2)')
 ---
 - autoincrement_ids:
   - 2
-  rowcount: 1
+  row_count: 1
 ...
 cn:execute('update test set a = 11 where id == 1')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 cn:execute('insert into test values (100, 1), (null, 1), (120, 1), (null, 1)')
 ---
 - autoincrement_ids:
   - 101
   - 121
-  rowcount: 4
+  row_count: 4
 ...
 cn:execute('insert into test values (null, 1), (null, 1), (null, 1), (null, 1), (null, 1)')
 ---
@@ -506,7 +506,7 @@ cn:execute('insert into test values (null, 1), (null, 1), (null, 1), (null, 1),
   - 124
   - 125
   - 126
-  rowcount: 5
+  row_count: 5
 ...
 cn:execute('select * from test')
 ---
@@ -549,11 +549,11 @@ cn:execute('insert into test values (null, 1)')
   - 127
   - 1
   - 2
-  rowcount: 1
+  row_count: 1
 ...
 box.execute('create table test3 (id int primary key autoincrement)')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.schema.sequence.alter('TEST3', {min=-10000, step=-10})
 ---
@@ -565,11 +565,11 @@ cn:execute('insert into TEST3 values (null), (null), (null), (null)')
   - -9
   - -19
   - -29
-  rowcount: 4
+  row_count: 4
 ...
 box.execute('drop table test')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 s:drop()
 ---
@@ -579,38 +579,38 @@ sq:drop()
 ...
 box.execute('drop table test3')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 --
--- Ensure that FK inside CREATE TABLE does not affect rowcount.
+-- Ensure that FK inside CREATE TABLE does not affect row_count.
 --
 cn:execute('create table test (id integer primary key, a integer)')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 cn:execute('create table test2 (id integer primary key, ref integer references test(id))')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 cn:execute('drop table test2')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 --
--- Ensure that REPLACE is accounted twice in rowcount. As delete +
+-- Ensure that REPLACE is accounted twice in row_count. As delete +
 -- insert.
 --
 cn:execute('insert into test values(1, 1)')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 cn:execute('insert or replace into test values(1, 2)')
 ---
-- rowcount: 2
+- row_count: 2
 ...
 cn:execute('drop table test')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- SELECT returns unpacked msgpack.
 format = {{name = 'id', type = 'integer'}, {name = 'x', type = 'any'}}
@@ -650,7 +650,7 @@ cn = remote.connect(box.cfg.listen)
 ...
 box.execute('CREATE TABLE t1(id INTEGER PRIMARY KEY AUTOINCREMENT)')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 for i = 0, 1000 do cn:execute("INSERT INTO t1 VALUES (null)") end
 ---
@@ -660,7 +660,7 @@ _ = cn:execute("INSERT INTO t1 SELECT NULL from t1")
 ...
 box.execute('DROP TABLE t1')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 cn:close()
 ---
@@ -668,7 +668,7 @@ cn:close()
 -- gh-3832: Some statements do not return column type
 box.execute('CREATE TABLE t1(id INTEGER PRIMARY KEY)')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 cn = remote.connect(box.cfg.listen)
 ---
@@ -734,7 +734,7 @@ res.metadata
 -- result has a column type.
 cn:execute("PRAGMA count_changes = 1;")
 ---
-- rowcount: 0
+- row_count: 0
 ...
 cn:execute("INSERT INTO t1 VALUES (1), (2), (3);")
 ---
@@ -765,7 +765,7 @@ cn:close()
 ...
 box.execute('DROP TABLE t1')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.schema.user.revoke('guest', 'read,write,execute', 'universe')
 ---
diff --git a/test/sql/iproto.test.lua b/test/sql/iproto.test.lua
index fc27ca6..b6ab068 100644
--- a/test/sql/iproto.test.lua
+++ b/test/sql/iproto.test.lua
@@ -23,7 +23,7 @@ ret = cn:execute('select * from test')
 ret
 type(ret.rows[1])
 
--- Operation with rowcount result.
+-- Operation with row_count result.
 cn:execute('insert into test values (10, 11, NULL)')
 cn:execute('delete from test where a = 5')
 cn:execute('insert into test values (11, 12, NULL), (12, 12, NULL), (13, 12, NULL)')
@@ -174,14 +174,14 @@ sq:drop()
 box.execute('drop table test3')
 
 --
--- Ensure that FK inside CREATE TABLE does not affect rowcount.
+-- Ensure that FK inside CREATE TABLE does not affect row_count.
 --
 cn:execute('create table test (id integer primary key, a integer)')
 cn:execute('create table test2 (id integer primary key, ref integer references test(id))')
 cn:execute('drop table test2')
 
 --
--- Ensure that REPLACE is accounted twice in rowcount. As delete +
+-- Ensure that REPLACE is accounted twice in row_count. As delete +
 -- insert.
 --
 cn:execute('insert into test values(1, 1)')
diff --git a/test/sql/max-on-index.result b/test/sql/max-on-index.result
index de1fbb3..e79dee3 100644
--- a/test/sql/max-on-index.result
+++ b/test/sql/max-on-index.result
@@ -6,46 +6,46 @@ engine = test_run:get_cfg('engine')
 ...
 box.execute('pragma sql_default_engine=\''..engine..'\'')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 -- box.cfg()
 -- create space
 -- scalar affinity
 box.execute("CREATE TABLE test1 (f1 INT, f2 INT, PRIMARY KEY(f1))")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE INDEX test1_index ON test1 (f2)")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- integer affinity
 box.execute("CREATE TABLE test2 (f1 INT, f2 INT, PRIMARY KEY(f1))")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Debug
 -- box.execute("PRAGMA vdbe_debug=ON ; INSERT INTO zoobar VALUES (111, 222, 'c3', 444)")
 -- Seed entries
 box.execute("INSERT INTO test1 VALUES(1, 2)");
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO test1 VALUES(2, NULL)");
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO test1 VALUES(3, NULL)");
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO test1 VALUES(4, 3)");
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO test2 VALUES(1, 2)");
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Select must return properly decoded `NULL`
 box.execute("SELECT MAX(f1) FROM test1")
@@ -75,15 +75,15 @@ box.execute("SELECT MAX(f1) FROM test2")
 -- Cleanup
 box.execute("DROP INDEX test1_index ON test1")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP TABLE test1")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP TABLE test2")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Debug
 -- require("console").start()
diff --git a/test/sql/message-func-indexes.result b/test/sql/message-func-indexes.result
index 04e7a52..eb2d6c7 100644
--- a/test/sql/message-func-indexes.result
+++ b/test/sql/message-func-indexes.result
@@ -6,16 +6,16 @@ engine = test_run:get_cfg('engine')
 ...
 box.execute('pragma sql_default_engine=\''..engine..'\'')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 -- Creating tables.
 box.execute("CREATE TABLE t1(id INTEGER PRIMARY KEY, a INTEGER)")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE TABLE t2(object INTEGER PRIMARY KEY, price INTEGER, count INTEGER)")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Expressions that're supposed to create functional indexes
 -- should return certain message.
@@ -25,7 +25,7 @@ box.execute("CREATE INDEX i1 ON t1(a+1)")
 ...
 box.execute("CREATE INDEX i2 ON t1(a)")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE INDEX i3 ON t2(price + 100)")
 ---
@@ -33,7 +33,7 @@ box.execute("CREATE INDEX i3 ON t2(price + 100)")
 ...
 box.execute("CREATE INDEX i4 ON t2(price)")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE INDEX i5 ON t2(count + 1)")
 ---
@@ -46,9 +46,9 @@ box.execute("CREATE INDEX i6 ON t2(count * price)")
 -- Cleaning up.
 box.execute("DROP TABLE t1")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP TABLE t2")
 ---
-- rowcount: 1
+- row_count: 1
 ...
diff --git a/test/sql/misc.result b/test/sql/misc.result
index bc6e19f..c8a0e57 100644
--- a/test/sql/misc.result
+++ b/test/sql/misc.result
@@ -6,7 +6,7 @@ engine = test_run:get_cfg('engine')
 ...
 box.execute('pragma sql_default_engine=\''..engine..'\'')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 -- Forbid multistatement queries.
 box.execute('select 1;')
diff --git a/test/sql/no-pk-space.result b/test/sql/no-pk-space.result
index b270b1f..f4f6059 100644
--- a/test/sql/no-pk-space.result
+++ b/test/sql/no-pk-space.result
@@ -6,7 +6,7 @@ engine = test_run:get_cfg('engine')
 ...
 box.execute('pragma sql_default_engine=\''..engine..'\'')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 format = {}
 ---
@@ -42,11 +42,11 @@ s:drop()
 --
 box.execute("CREATE TABLE t1 (id INT PRIMARY KEY);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE VIEW v1 AS SELECT * FROM t1;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.space.T1:drop()
 ---
diff --git a/test/sql/on-conflict.result b/test/sql/on-conflict.result
index 253b356..47f15dc 100644
--- a/test/sql/on-conflict.result
+++ b/test/sql/on-conflict.result
@@ -6,7 +6,7 @@ engine = test_run:get_cfg('engine')
 ...
 box.execute('pragma sql_default_engine=\''..engine..'\'')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 --
 -- Check that original sql ON CONFLICT clause is really
@@ -70,15 +70,15 @@ box.execute("CREATE TABLE test (a int, b int NULL, c int, PRIMARY KEY(a, b, c))"
 --
 box.execute("CREATE TABLE a (id INT PRIMARY KEY, a INT NOT NULL ON CONFLICT REPLACE DEFAULT 1, b INT NOT NULL ON CONFLICT REPLACE DEFAULT 2);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO a VALUES(1, NULL, NULL);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO a VALUES(2, NULL, NULL);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("SELECT * FROM a;")
 ---
@@ -95,25 +95,25 @@ box.execute("SELECT * FROM a;")
 ...
 box.execute("DROP TABLE a;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- gh-3566: UPDATE OR IGNORE causes deletion of old entry.
 --
 box.execute("CREATE TABLE tj (s0 INT PRIMARY KEY, s1 INT UNIQUE, s2 INT);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO tj VALUES (1, 1, 2), (2, 2, 3);")
 ---
-- rowcount: 2
+- row_count: 2
 ...
 box.execute("CREATE UNIQUE INDEX i ON tj (s2);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("UPDATE OR IGNORE tj SET s1 = s1 + 1;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("SELECT s1, s2 FROM tj;")
 ---
@@ -128,7 +128,7 @@ box.execute("SELECT s1, s2 FROM tj;")
 ...
 box.execute("UPDATE OR IGNORE tj SET s2 = s2 + 1;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("SELECT s1, s2 FROM tj;")
 ---
@@ -145,23 +145,23 @@ box.execute("SELECT s1, s2 FROM tj;")
 --
 box.execute("DROP TABLE tj;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE TABLE tj (s1 INT PRIMARY KEY, s2 INT);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO tj VALUES (1, 2),(2, 3);")
 ---
-- rowcount: 2
+- row_count: 2
 ...
 box.execute("CREATE UNIQUE INDEX i ON tj (s2);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("REPLACE INTO tj VALUES (1, 3);")
 ---
-- rowcount: 3
+- row_count: 3
 ...
 box.execute("SELECT * FROM tj;")
 ---
@@ -175,11 +175,11 @@ box.execute("SELECT * FROM tj;")
 ...
 box.execute("INSERT INTO tj VALUES (2, 4), (3, 5);")
 ---
-- rowcount: 2
+- row_count: 2
 ...
 box.execute("UPDATE OR REPLACE tj SET s2 = s2 + 1;")
 ---
-- rowcount: 5
+- row_count: 5
 ...
 box.execute("SELECT * FROM tj;")
 ---
@@ -194,5 +194,5 @@ box.execute("SELECT * FROM tj;")
 ...
 box.execute("DROP TABLE tj;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
diff --git a/test/sql/persistency.result b/test/sql/persistency.result
index 8ba42cb..63fa8a5 100644
--- a/test/sql/persistency.result
+++ b/test/sql/persistency.result
@@ -9,25 +9,25 @@ engine = test_run:get_cfg('engine')
 ...
 box.execute('pragma sql_default_engine=\''..engine..'\'')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 -- create space
 box.execute("CREATE TABLE foobar (foo INT PRIMARY KEY, bar TEXT)")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- prepare data
 box.execute("INSERT INTO foobar VALUES (1, 'foo')")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO foobar VALUES (2, 'bar')")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO foobar VALUES (1000, 'foobar')")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO foobar VALUES (1, 'duplicate')")
 ---
@@ -259,7 +259,7 @@ box.execute("SELECT bar, foo, 42, 'awesome' FROM foobar ORDER BY bar DESC")
 -- updates
 box.execute("REPLACE INTO foobar VALUES (1, 'cacodaemon')")
 ---
-- rowcount: 2
+- row_count: 2
 ...
 box.execute("SELECT COUNT(*) FROM foobar WHERE foo=1")
 ---
@@ -279,7 +279,7 @@ box.execute("SELECT COUNT(*) FROM foobar WHERE bar='cacodaemon'")
 ...
 box.execute("DELETE FROM foobar WHERE bar='cacodaemon'")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("SELECT COUNT(*) FROM foobar WHERE bar='cacodaemon'")
 ---
@@ -293,29 +293,29 @@ box.execute("SELECT COUNT(*) FROM foobar WHERE bar='cacodaemon'")
 -- create space
 box.execute("CREATE TABLE barfoo (bar TEXT, foo FLOAT PRIMARY KEY)")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE UNIQUE INDEX barfoo2 ON barfoo(bar)")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- prepare data
 box.execute("INSERT INTO barfoo VALUES ('foo', 1)")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO barfoo VALUES ('bar', 2)")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO barfoo VALUES ('foobar', 1000)")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- create a trigger
 box.execute("CREATE TRIGGER tfoobar AFTER INSERT ON foobar BEGIN INSERT INTO barfoo VALUES ('trigger test', 9999); END")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("SELECT \"name\", \"opts\" FROM \"_trigger\"");
 ---
@@ -331,11 +331,11 @@ box.execute("SELECT \"name\", \"opts\" FROM \"_trigger\"");
 -- Many entries
 box.execute("CREATE TABLE t1(a INT,b INT,c INT,PRIMARY KEY(b,c));")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("WITH RECURSIVE cnt(x) AS (VALUES(1) UNION ALL SELECT x+1 FROM cnt WHERE x<1000) INSERT INTO t1 SELECT x, x%40, x/40 FROM cnt;")
 ---
-- rowcount: 1000
+- row_count: 1000
 ...
 box.execute("SELECT a FROM t1 ORDER BY b, a LIMIT 10 OFFSET 20;");
 ---
@@ -396,7 +396,7 @@ box.execute("SELECT \"name\", \"opts\" FROM \"_trigger\"")
 -- and can be dropped just once
 box.execute("DROP TRIGGER tfoobar")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Should error
 box.execute("DROP TRIGGER tfoobar")
@@ -462,13 +462,13 @@ box.execute("SELECT a FROM t1 ORDER BY b, a LIMIT 10 OFFSET 20;");
 -- cleanup
 box.execute("DROP TABLE foobar")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP TABLE barfoo")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP TABLE t1")
 ---
-- rowcount: 1
+- row_count: 1
 ...
diff --git a/test/sql/row-count.result b/test/sql/row-count.result
index 8aa77e3..a41012a 100644
--- a/test/sql/row-count.result
+++ b/test/sql/row-count.result
@@ -6,13 +6,13 @@ engine = test_run:get_cfg('engine')
 ...
 box.execute('pragma sql_default_engine=\''..engine..'\'')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 -- Test cases concerning row count calculations.
 --
 box.execute("CREATE TABLE t1 (s1 VARCHAR(10) PRIMARY KEY);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("SELECT ROW_COUNT();")
 ---
@@ -32,7 +32,7 @@ box.execute("SELECT ROW_COUNT();")
 ...
 box.execute("CREATE TABLE t2 (s1 VARCHAR(10) PRIMARY KEY, s2 VARCHAR(10) REFERENCES t1 ON DELETE CASCADE);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("SELECT ROW_COUNT();")
 ---
@@ -44,11 +44,11 @@ box.execute("SELECT ROW_COUNT();")
 ...
 box.execute("CREATE TABLE t3 (i1 INT UNIQUE, i2 INT, i3 INT PRIMARY KEY);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t3 VALUES (0, 0, 0);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("SELECT ROW_COUNT();")
 ---
@@ -60,7 +60,7 @@ box.execute("SELECT ROW_COUNT();")
 ...
 box.execute("CREATE TRIGGER x AFTER DELETE ON t1 FOR EACH ROW BEGIN UPDATE t3 SET i1 = i1 + ROW_COUNT(); END;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("SELECT ROW_COUNT();")
 ---
@@ -72,7 +72,7 @@ box.execute("SELECT ROW_COUNT();")
 ...
 box.execute("INSERT INTO t1 VALUES ('a');")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("SELECT ROW_COUNT();")
 ---
@@ -84,7 +84,7 @@ box.execute("SELECT ROW_COUNT();")
 ...
 box.execute("INSERT INTO t2 VALUES ('a','a');")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("SELECT ROW_COUNT();")
 ---
@@ -96,7 +96,7 @@ box.execute("SELECT ROW_COUNT();")
 ...
 box.execute("INSERT INTO t1 VALUES ('b'), ('c'), ('d');")
 ---
-- rowcount: 3
+- row_count: 3
 ...
 box.execute("SELECT ROW_COUNT();")
 ---
@@ -109,7 +109,7 @@ box.execute("SELECT ROW_COUNT();")
 -- REPLACE is accounted for two operations: DELETE + INSERT.
 box.execute("REPLACE INTO t2 VALUES('a', 'c');")
 ---
-- rowcount: 2
+- row_count: 2
 ...
 box.execute("SELECT ROW_COUNT();")
 ---
@@ -121,7 +121,7 @@ box.execute("SELECT ROW_COUNT();")
 ...
 box.execute("DELETE FROM t1;")
 ---
-- rowcount: 4
+- row_count: 4
 ...
 box.execute("SELECT ROW_COUNT();")
 ---
@@ -133,11 +133,11 @@ box.execute("SELECT ROW_COUNT();")
 ...
 box.execute("INSERT INTO t3 VALUES (1, 1, 1), (2, 2, 2), (3, 3, 3);")
 ---
-- rowcount: 3
+- row_count: 3
 ...
 box.execute("TRUNCATE TABLE t3;")
 ---
-- rowcount: 0
+- row_count: 0
 ...
 box.execute("SELECT ROW_COUNT();")
 ---
@@ -149,11 +149,11 @@ box.execute("SELECT ROW_COUNT();")
 ...
 box.execute("INSERT INTO t3 VALUES (1, 1, 1), (2, 2, 2), (3, 3, 3);")
 ---
-- rowcount: 3
+- row_count: 3
 ...
 box.execute("UPDATE t3 SET i2 = 666;")
 ---
-- rowcount: 3
+- row_count: 3
 ...
 box.execute("SELECT ROW_COUNT();")
 ---
@@ -168,7 +168,7 @@ box.execute("SELECT ROW_COUNT();")
 --
 box.execute("DELETE FROM t3 WHERE 0 = 0;")
 ---
-- rowcount: 3
+- row_count: 3
 ...
 box.execute("SELECT ROW_COUNT();")
 ---
@@ -180,11 +180,11 @@ box.execute("SELECT ROW_COUNT();")
 ...
 box.execute("INSERT INTO t3 VALUES (1, 1, 1), (2, 2, 2), (3, 3, 3);")
 ---
-- rowcount: 3
+- row_count: 3
 ...
 box.execute("DELETE FROM t3")
 ---
-- rowcount: 3
+- row_count: 3
 ...
 box.execute("SELECT ROW_COUNT();")
 ---
@@ -198,27 +198,27 @@ box.execute("SELECT ROW_COUNT();")
 --
 box.execute("CREATE TABLE tt1 (id INT PRIMARY KEY);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE TABLE tt2 (id INT PRIMARY KEY);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE TRIGGER tr1 AFTER DELETE ON tt1 BEGIN DELETE FROM tt2; END;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO tt1 VALUES (1), (2), (3);")
 ---
-- rowcount: 3
+- row_count: 3
 ...
 box.execute("INSERT INTO tt2 VALUES (1), (2), (3);")
 ---
-- rowcount: 3
+- row_count: 3
 ...
 box.execute("DELETE FROM tt1 WHERE id = 2;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("SELECT ROW_COUNT();")
 ---
@@ -237,18 +237,18 @@ box.execute("SELECT * FROM tt2;")
 ...
 box.execute("DROP TABLE tt1;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP TABLE tt2;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- All statements which are not accounted as DML should
 -- return 0 (zero) as a row count.
 --
 box.execute("START TRANSACTION;")
 ---
-- rowcount: 0
+- row_count: 0
 ...
 box.execute("SELECT ROW_COUNT();")
 ---
@@ -260,7 +260,7 @@ box.execute("SELECT ROW_COUNT();")
 ...
 box.execute("COMMIT;")
 ---
-- rowcount: 0
+- row_count: 0
 ...
 box.execute("SELECT ROW_COUNT();")
 ---
@@ -325,13 +325,13 @@ box.execute('PRAGMA recursive_triggers')
 --
 box.execute("DROP TABLE t2;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP TABLE t3;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP TABLE t1;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
diff --git a/test/sql/savepoints.result b/test/sql/savepoints.result
index 3cebc65..2f943bd 100644
--- a/test/sql/savepoints.result
+++ b/test/sql/savepoints.result
@@ -6,7 +6,7 @@ engine = test_run:get_cfg('engine')
 ...
 box.execute('pragma sql_default_engine=\''..engine..'\'')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 -- These tests check that SQL savepoints properly work outside
 -- transactions as well as inside transactions started in Lua.
diff --git a/test/sql/select-null.result b/test/sql/select-null.result
index 948d53d..2de9c13 100644
--- a/test/sql/select-null.result
+++ b/test/sql/select-null.result
@@ -6,24 +6,24 @@ engine = test_run:get_cfg('engine')
 ...
 box.execute('pragma sql_default_engine=\''..engine..'\'')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 -- box.cfg()
 -- create space
 box.execute("CREATE TABLE t3(id INT, a text, b TEXT, PRIMARY KEY(id))")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Debug
 -- box.execute("PRAGMA vdbe_debug=ON ; INSERT INTO zoobar VALUES (111, 222, 'c3', 444)")
 -- Seed entries
 box.execute("INSERT INTO t3 VALUES(1, 'abc',NULL)");
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t3 VALUES(2, NULL,'xyz')");
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Select must return properly decoded `NULL`
 box.execute("SELECT * FROM t3")
@@ -42,7 +42,7 @@ box.execute("SELECT * FROM t3")
 -- Cleanup
 box.execute("DROP TABLE t3")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Debug
 -- require("console").start()
diff --git a/test/sql/sql-debug.result b/test/sql/sql-debug.result
index a2aca8b..32c65cc 100644
--- a/test/sql/sql-debug.result
+++ b/test/sql/sql-debug.result
@@ -13,7 +13,7 @@ result = box.execute('PRAGMA parser_trace').rows
 ...
 box.execute('PRAGMA parser_trace = 1')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 box.execute('PRAGMA parser_trace')
 ---
@@ -25,7 +25,7 @@ box.execute('PRAGMA parser_trace')
 ...
 box.execute('PRAGMA parser_trace = '.. result[1][1])
 ---
-- rowcount: 0
+- row_count: 0
 ...
 --
 -- Make PRAGMA command return the result as a result set.
diff --git a/test/sql/sql-statN-index-drop.result b/test/sql/sql-statN-index-drop.result
index 0636cd9..b2a4458 100644
--- a/test/sql/sql-statN-index-drop.result
+++ b/test/sql/sql-statN-index-drop.result
@@ -6,37 +6,37 @@ engine = test_run:get_cfg('engine')
 ...
 box.execute('pragma sql_default_engine=\''..engine..'\'')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 -- Initializing some things.
 box.execute("CREATE TABLE t1(id INT PRIMARY KEY, a INT);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE TABLE t2(id INT PRIMARY KEY, a INT);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE INDEX i1 ON t1(a);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE INDEX i1 ON t2(a);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t1 VALUES(1, 2);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t2 VALUES(1, 2);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Analyze.
 box.execute("ANALYZE;")
 ---
-- rowcount: 0
+- row_count: 0
 ...
 -- Checking the data.
 box.execute("SELECT * FROM \"_sql_stat4\";")
@@ -78,7 +78,7 @@ box.execute("SELECT * FROM \"_sql_stat1\";")
 -- Dropping an index.
 box.execute("DROP INDEX i1 ON t1;")
 ---
-- rowcount: 3
+- row_count: 3
 ...
 -- Checking the DROP INDEX results.
 box.execute("SELECT * FROM \"_sql_stat4\";")
@@ -118,41 +118,41 @@ box.execute("SELECT * FROM \"_sql_stat1\";")
 --Cleaning up.
 box.execute("DROP TABLE t1;")
 ---
-- rowcount: 3
+- row_count: 3
 ...
 box.execute("DROP TABLE t2;")
 ---
-- rowcount: 5
+- row_count: 5
 ...
 -- Same test but dropping an INDEX ON t2.
 box.execute("CREATE TABLE t1(id INT PRIMARY KEY, a INT);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE TABLE t2(id INT PRIMARY KEY, a INT);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE INDEX i1 ON t1(a);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE INDEX i1 ON t2(a);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t1 VALUES(1, 2);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t2 VALUES(1, 2);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Analyze.
 box.execute("ANALYZE;")
 ---
-- rowcount: 0
+- row_count: 0
 ...
 -- Checking the data.
 box.execute("SELECT * FROM \"_sql_stat4\";")
@@ -194,7 +194,7 @@ box.execute("SELECT * FROM \"_sql_stat1\";")
 -- Dropping an index.
 box.execute("DROP INDEX i1 ON t2;")
 ---
-- rowcount: 3
+- row_count: 3
 ...
 -- Checking the DROP INDEX results.
 box.execute("SELECT * FROM \"_sql_stat4\";")
@@ -234,9 +234,9 @@ box.execute("SELECT * FROM \"_sql_stat1\";")
 --Cleaning up.
 box.execute("DROP TABLE t1;")
 ---
-- rowcount: 5
+- row_count: 5
 ...
 box.execute("DROP TABLE t2;")
 ---
-- rowcount: 3
+- row_count: 3
 ...
diff --git a/test/sql/tokenizer.result b/test/sql/tokenizer.result
index 47fb9d4..1ae9ef2 100644
--- a/test/sql/tokenizer.result
+++ b/test/sql/tokenizer.result
@@ -9,7 +9,7 @@ engine = test_run:get_cfg('engine')
 ...
 box.execute('pragma sql_default_engine=\''..engine..'\'')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 sql_tokenizer = require('sql_tokenizer')
 ---
diff --git a/test/sql/transition.result b/test/sql/transition.result
index dc8ef79..e457061 100644
--- a/test/sql/transition.result
+++ b/test/sql/transition.result
@@ -6,25 +6,25 @@ engine = test_run:get_cfg('engine')
 ...
 box.execute('pragma sql_default_engine=\''..engine..'\'')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 -- create space
 box.execute("CREATE TABLE foobar (foo INT PRIMARY KEY, bar TEXT)")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- prepare data
 box.execute("INSERT INTO foobar VALUES (1, 'foo')")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO foobar VALUES (2, 'bar')")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO foobar VALUES (1000, 'foobar')")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO foobar VALUES (1, 'duplicate')")
 ---
@@ -256,7 +256,7 @@ box.execute("SELECT bar, foo, 42, 'awesome' FROM foobar ORDER BY bar DESC")
 -- updates
 box.execute("REPLACE INTO foobar VALUES (1, 'cacodaemon')")
 ---
-- rowcount: 2
+- row_count: 2
 ...
 box.execute("SELECT COUNT(*) FROM foobar WHERE foo=1")
 ---
@@ -276,7 +276,7 @@ box.execute("SELECT COUNT(*) FROM foobar WHERE bar='cacodaemon'")
 ...
 box.execute("DELETE FROM foobar WHERE bar='cacodaemon'")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("SELECT COUNT(*) FROM foobar WHERE bar='cacodaemon'")
 ---
@@ -290,24 +290,24 @@ box.execute("SELECT COUNT(*) FROM foobar WHERE bar='cacodaemon'")
 -- create space
 box.execute("CREATE TABLE barfoo (bar TEXT, foo FLOAT PRIMARY KEY)")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE UNIQUE INDEX barfoo2 ON barfoo(bar)")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- prepare data
 box.execute("INSERT INTO barfoo VALUES ('foo', 1)")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO barfoo VALUES ('bar', 2)")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO barfoo VALUES ('foobar', 1000)")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- prove barfoo2 was created
 box.execute("INSERT INTO barfoo VALUES ('xfoo', 1)")
@@ -372,15 +372,15 @@ box.execute("SELECT foo, bar FROM barfoo WHERE foo<=2")
 -- cleanup
 box.execute("DROP INDEX barfoo2 ON barfoo")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP TABLE foobar")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP TABLE barfoo")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- attempt to create a table lacking PRIMARY KEY
 box.execute("CREATE TABLE without_rowid_lacking_primary_key(x SCALAR)")
@@ -391,9 +391,9 @@ box.execute("CREATE TABLE without_rowid_lacking_primary_key(x SCALAR)")
 -- create a table with implicit indices (used to SEGFAULT)
 box.execute("CREATE TABLE implicit_indices(a INT PRIMARY KEY,b INT,c INT,d TEXT UNIQUE)")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP TABLE implicit_indices")
 ---
-- rowcount: 1
+- row_count: 1
 ...
diff --git a/test/sql/transitive-transactions.result b/test/sql/transitive-transactions.result
index 72b19d2..883cc00 100644
--- a/test/sql/transitive-transactions.result
+++ b/test/sql/transitive-transactions.result
@@ -6,7 +6,7 @@ engine = test_run:get_cfg('engine')
 ...
 box.execute("pragma sql_default_engine=\'"..engine.."\'")
 ---
-- rowcount: 0
+- row_count: 0
 ...
 test_run:cmd("setopt delimiter ';'")
 ---
@@ -30,11 +30,11 @@ box.execute('START TRANSACTION;') box.rollback();
 ...
 box.execute('CREATE TABLE parent(id INT PRIMARY KEY, y INT UNIQUE);');
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute('CREATE TABLE child(id INT PRIMARY KEY, x INT REFERENCES parent(y) DEFERRABLE INITIALLY DEFERRED);');
 ---
-- rowcount: 1
+- row_count: 1
 ...
 fk_violation_1 = function()
     box.begin()
@@ -132,5 +132,5 @@ box.execute('DROP TABLE child;');
 ...
 box.execute('DROP TABLE parent;');
 ---
-- rowcount: 1
+- row_count: 1
 ...
diff --git a/test/sql/triggers.result b/test/sql/triggers.result
index 9c5d5dd..2a22289 100644
--- a/test/sql/triggers.result
+++ b/test/sql/triggers.result
@@ -9,7 +9,7 @@ engine = test_run:get_cfg('engine')
 ...
 box.execute('pragma sql_default_engine=\''..engine..'\'')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 -- Get invariant part of the tuple; name and opts don't change.
  function immutable_part(data) local r = {} for i, l in pairs(data) do table.insert(r, {l.name, l.opts}) end return r end
@@ -20,15 +20,15 @@ box.execute('pragma sql_default_engine=\''..engine..'\'')
 --
 box.execute("CREATE TABLE t1(x INTEGER PRIMARY KEY);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE TABLE t2(x INTEGER PRIMARY KEY);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute([[CREATE TRIGGER t1t AFTER INSERT ON t1 BEGIN INSERT INTO t2 VALUES(1); END; ]])
 ---
-- rowcount: 1
+- row_count: 1
 ...
 immutable_part(box.space._trigger:select())
 ---
@@ -70,7 +70,7 @@ immutable_part(box.space._trigger:select())
 ...
 box.execute("DROP TABLE T1;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 immutable_part(box.space._trigger:select())
 ---
@@ -78,11 +78,11 @@ immutable_part(box.space._trigger:select())
 ...
 box.execute("CREATE TABLE t1(x INTEGER PRIMARY KEY);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute([[CREATE TRIGGER t1t AFTER INSERT ON t1 BEGIN INSERT INTO t2 VALUES(1); END; ]])
 ---
-- rowcount: 1
+- row_count: 1
 ...
 immutable_part(box.space._trigger:select())
 ---
@@ -96,7 +96,7 @@ space_id = box.space._space.index["name"]:get('T1').id
 -- Test, didn't trigger t1t degrade.
 box.execute("INSERT INTO t1 VALUES(1);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("SELECT * FROM t2;")
 ---
@@ -108,7 +108,7 @@ box.execute("SELECT * FROM t2;")
 ...
 box.execute("DELETE FROM t2;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Test triggers.
 tuple = {"T2T", space_id, {sql = "CREATE TRIGGER t2t AFTER INSERT ON t1 BEGIN INSERT INTO t2 VALUES(2); END;"}}
@@ -137,7 +137,7 @@ immutable_part(box.space._trigger:select())
 ...
 box.execute("INSERT INTO t1 VALUES(2);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("SELECT * FROM t2;")
 ---
@@ -151,12 +151,12 @@ box.execute("SELECT * FROM t2;")
 ...
 box.execute("DELETE FROM t2;")
 ---
-- rowcount: 3
+- row_count: 3
 ...
 -- Test t1t after t2t and t3t drop.
 box.execute("DROP TRIGGER T2T;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 _ = box.space._trigger:delete("T3T")
 ---
@@ -169,7 +169,7 @@ immutable_part(box.space._trigger:select())
 ...
 box.execute("INSERT INTO t1 VALUES(3);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("SELECT * FROM t2;")
 ---
@@ -181,16 +181,16 @@ box.execute("SELECT * FROM t2;")
 ...
 box.execute("DELETE FROM t2;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Insert new SQL t2t and t3t.
 box.execute([[CREATE TRIGGER t2t AFTER INSERT ON t1 BEGIN INSERT INTO t2 VALUES(2); END; ]])
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute([[CREATE TRIGGER t3t AFTER INSERT ON t1 BEGIN INSERT INTO t2 VALUES(3); END; ]])
 ---
-- rowcount: 1
+- row_count: 1
 ...
 immutable_part(box.space._trigger:select())
 ---
@@ -206,7 +206,7 @@ immutable_part(box.space._trigger:select())
 ...
 box.execute("INSERT INTO t1 VALUES(4);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("SELECT * FROM t2;")
 ---
@@ -221,11 +221,11 @@ box.execute("SELECT * FROM t2;")
 -- Clean up.
 box.execute("DROP TABLE t1;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP TABLE t2;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 immutable_part(box.space._trigger:select())
 ---
@@ -234,7 +234,7 @@ immutable_part(box.space._trigger:select())
 -- Test target tables restricts.
 box.execute("CREATE TABLE t1(a INT PRIMARY KEY,b INT);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 space_id = box.space.T1.id
 ---
@@ -248,7 +248,7 @@ box.space._trigger:insert(tuple)
 ...
 box.execute("CREATE VIEW V1 AS SELECT * FROM t1;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 space_id = box.space.V1.id
 ---
@@ -279,11 +279,11 @@ box.space._trigger:insert(tuple)
 ...
 box.execute("DROP VIEW V1;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP TABLE T1;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 --
 -- gh-3531: Assertion with trigger and two storage engines
@@ -291,31 +291,31 @@ box.execute("DROP TABLE T1;")
 -- Case 1: Src 'vinyl' table; Dst 'memtx' table
 box.execute("PRAGMA sql_default_engine ('vinyl');")
 ---
-- rowcount: 0
+- row_count: 0
 ...
 box.execute("CREATE TABLE m (s0 INT PRIMARY KEY, s1 TEXT UNIQUE);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE TRIGGER m1 BEFORE UPDATE ON m FOR EACH ROW BEGIN UPDATE n SET s2 = 'now'; END;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("PRAGMA sql_default_engine('memtx');")
 ---
-- rowcount: 0
+- row_count: 0
 ...
 box.execute("CREATE TABLE n (s0 INT PRIMARY KEY, s1 TEXT UNIQUE, s2 REAL);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO m VALUES (0, '0');")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO n VALUES (0, '',null);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("UPDATE m SET s1 = 'The Rain In Spain';")
 ---
@@ -325,40 +325,40 @@ box.execute("UPDATE m SET s1 = 'The Rain In Spain';")
 -- box.sql.execute("ANALYZE m;")
 box.execute("DROP TABLE m;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP TABLE n;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Case 2: Src 'memtx' table; Dst 'vinyl' table
 box.execute("PRAGMA sql_default_engine ('memtx');")
 ---
-- rowcount: 0
+- row_count: 0
 ...
 box.execute("CREATE TABLE m (s0 INT PRIMARY KEY, s1 TEXT UNIQUE);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE TRIGGER m1 BEFORE UPDATE ON m FOR EACH ROW BEGIN UPDATE n SET s2 = 'now'; END;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("PRAGMA sql_default_engine('vinyl');")
 ---
-- rowcount: 0
+- row_count: 0
 ...
 box.execute("CREATE TABLE n (s0 INT PRIMARY KEY, s1 TEXT UNIQUE, s2 REAL);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO m VALUES (0, '0');")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO n VALUES (0, '',null);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("UPDATE m SET s1 = 'The Rain In Spain';")
 ---
@@ -368,40 +368,40 @@ box.execute("UPDATE m SET s1 = 'The Rain In Spain';")
 -- box.sql.execute("ANALYZE n;")
 box.execute("DROP TABLE m;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP TABLE n;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Test SQL Transaction with LUA
 box.execute("PRAGMA sql_default_engine ('memtx');")
 ---
-- rowcount: 0
+- row_count: 0
 ...
 box.execute("CREATE TABLE test (id INT PRIMARY KEY)")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("PRAGMA sql_default_engine='vinyl'")
 ---
-- rowcount: 0
+- row_count: 0
 ...
 box.execute("CREATE TABLE test2 (id INT PRIMARY KEY)")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO test2 VALUES (2)")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("START TRANSACTION")
 ---
-- rowcount: 0
+- row_count: 0
 ...
 box.execute("INSERT INTO test VALUES (1)")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("SELECT * FROM test2")
 ---
@@ -409,42 +409,42 @@ box.execute("SELECT * FROM test2")
 ...
 box.execute("ROLLBACK;")
 ---
-- rowcount: 0
+- row_count: 0
 ...
 box.execute("DROP TABLE test;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP TABLE test2;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 --
 -- gh-3536: Some triggers cause error messages and/or half-finished updates
 --
 box.execute("CREATE TABLE t (s1 INT, s2 INT, s3 INT, s4 INT PRIMARY KEY);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE VIEW v AS SELECT s1, s2 FROM t;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE TRIGGER tv INSTEAD OF UPDATE ON v BEGIN UPDATE t SET s3 = new.s1 WHERE s1 = old.s1; END;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t VALUES (1,1,1,1);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("UPDATE v SET s2 = s1 + 1;")
 ---
-- rowcount: 0
+- row_count: 0
 ...
 box.execute("UPDATE v SET s1 = s1 + 5;")
 ---
-- rowcount: 0
+- row_count: 0
 ...
 box.execute("SELECT * FROM t;")
 ---
@@ -462,18 +462,18 @@ box.execute("SELECT * FROM t;")
 ...
 box.execute("DROP VIEW v;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP TABLE t;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 --
 -- gh-3653: Dissallow bindings for DDL
 --
 box.execute("CREATE TABLE t1(a INT PRIMARY KEY, b INT);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 space_id = box.space.T1.id
 ---
@@ -491,5 +491,5 @@ box.space._trigger:insert(tuple)
 ...
 box.execute("DROP TABLE t1;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
diff --git a/test/sql/types.result b/test/sql/types.result
index a0a1ba9..5e83af4 100644
--- a/test/sql/types.result
+++ b/test/sql/types.result
@@ -33,7 +33,7 @@ box.execute("CREATE TABLE t1 (id INT PRIMARY KEY, a INT, b UNIQUE);")
 --
 box.execute("CREATE TABLE t1 (id TEXT PRIMARY KEY, a REAL, b INT, c TEXT, d SCALAR);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.space.T1:format()
 ---
@@ -45,7 +45,7 @@ box.space.T1:format()
 ...
 box.execute("CREATE VIEW v1 AS SELECT b + a, b - a FROM t1;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.space.V1:format()
 ---
@@ -56,19 +56,19 @@ box.space.V1:format()
 --
 box.execute("CREATE INDEX i1 ON t1 (a);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE INDEX i2 ON t1 (b);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE INDEX i3 ON t1 (c);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE INDEX i4 ON t1 (id, c, b, a, d);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.space.T1.index.I1.parts
 ---
@@ -108,11 +108,11 @@ box.space.T1.index.I4.parts
 ...
 box.execute("DROP VIEW v1;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP TABLE t1;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- gh-3906: data of type BOOL is displayed as should
 -- during SQL SELECT.
@@ -194,11 +194,11 @@ box.execute("VALUES (TYPEOF(randomblob(5) || zeroblob(5)));")
 --
 box.execute("CREATE TABLE t1 (s SCALAR PRIMARY KEY);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t1 VALUES (randomblob(5));")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("SELECT * FROM t1 WHERE s LIKE 'blob';")
 ---
@@ -222,11 +222,11 @@ box.execute("SELECT s LIKE NULL FROM t1;")
 ...
 box.execute("DELETE FROM t1;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t1 VALUES (1);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("SELECT * FROM t1 WHERE s LIKE 'int';")
 ---
diff --git a/test/sql/update-with-nested-select.result b/test/sql/update-with-nested-select.result
index 0a93243..cdd5669 100644
--- a/test/sql/update-with-nested-select.result
+++ b/test/sql/update-with-nested-select.result
@@ -6,29 +6,29 @@ engine = test_run:get_cfg('engine')
 ...
 box.execute('pragma sql_default_engine=\''..engine..'\'')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 -- box.cfg()
 -- create space
 box.execute("CREATE TABLE t1(a integer primary key, b INT UNIQUE, e INT);");
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Debug
 -- box.execute("PRAGMA vdbe_debug=ON ; INSERT INTO zoobar VALUES (111, 222, 'c3', 444)")
 -- Seed entries
 box.execute("INSERT INTO t1 VALUES(1,4,6);");
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("INSERT INTO t1 VALUES(2,5,7);");
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Both entries must be updated
 box.execute("UPDATE t1 SET e=e+1 WHERE b IN (SELECT b FROM t1);");
 ---
-- rowcount: 2
+- row_count: 2
 ...
 -- Check
 box.execute("SELECT e FROM t1");
@@ -43,7 +43,7 @@ box.execute("SELECT e FROM t1");
 -- Cleanup
 box.execute("DROP TABLE t1;");
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Debug
 -- require("console").start()
diff --git a/test/sql/upgrade.result b/test/sql/upgrade.result
index 980ac05..f51172d 100644
--- a/test/sql/upgrade.result
+++ b/test/sql/upgrade.result
@@ -6,7 +6,7 @@ engine = test_run:get_cfg('engine')
 ...
 box.execute('pragma sql_default_engine=\''..engine..'\'')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 work_dir = 'sql/upgrade/1.10/'
 ---
@@ -69,19 +69,19 @@ box.space._index:get({box.space._space.index['name']:get('T1').id, 0})
 -- test system tables functionality
 box.execute("CREATE TABLE t(x INTEGER PRIMARY KEY);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE TABLE t_out(x INTEGER PRIMARY KEY);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE TRIGGER t1t AFTER INSERT ON t BEGIN INSERT INTO t_out VALUES(1); END;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE TRIGGER t2t AFTER INSERT ON t BEGIN INSERT INTO t_out VALUES(2); END;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.space._space.index['name']:get('T')
 ---
@@ -127,7 +127,7 @@ assert(t1t.space_id == box.space.T.id)
 ...
 box.execute("INSERT INTO T VALUES(1);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.space.T:select()
 ---
@@ -156,11 +156,11 @@ box.execute("SELECT * FROM T")
 ...
 box.execute("DROP TABLE T;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP TABLE T_OUT;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 test_run:switch('default')
 ---
diff --git a/test/sql/view.result b/test/sql/view.result
index 5c689ca..cbc80db 100644
--- a/test/sql/view.result
+++ b/test/sql/view.result
@@ -6,18 +6,18 @@ engine = test_run:get_cfg('engine')
 ...
 box.execute('pragma sql_default_engine=\''..engine..'\'')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 -- Verify that constraints on 'view' option are working.
 -- box.cfg()
 -- Create space and view.
 box.execute("CREATE TABLE t1(a INT, b INT, PRIMARY KEY(a, b));");
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE VIEW v1 AS SELECT a+b FROM t1;");
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- View can't have any indexes.
 box.execute("CREATE INDEX i1 on v1(a);");
@@ -119,11 +119,11 @@ sp = box.space._space:replace(raw_sp);
 -- Can't drop space via Lua if at least one view refers to it.
 box.execute('CREATE TABLE t2(id INT PRIMARY KEY);');
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute('CREATE VIEW v2 AS SELECT * FROM t2;');
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.space.T2:drop();
 ---
@@ -131,20 +131,20 @@ box.space.T2:drop();
 ...
 box.execute('DROP VIEW v2;');
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute('DROP TABLE t2;');
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- Check that alter transfers reference counter.
 box.execute("CREATE TABLE t2(id INTEGER PRIMARY KEY);");
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE VIEW v2 AS SELECT * FROM t2;");
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP TABLE t2;");
 ---
@@ -162,45 +162,45 @@ box.execute("DROP TABLE t2;");
 ...
 box.execute("DROP VIEW v2;");
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP TABLE t2;");
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- gh-3849: failed to create VIEW in form of AS VALUES (const);
 --
 box.execute("CREATE VIEW cv AS VALUES(1);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE VIEW cv1 AS VALUES('k', 1);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE VIEW cv2 AS VALUES((VALUES((SELECT 1))));")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE VIEW cv3 AS VALUES(1+2, 1+2);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP VIEW cv;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP VIEW cv1;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP VIEW cv2;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP VIEW cv3;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- gh-3815: AS VALUES syntax didn't incerement VIEW reference
 -- counter. Moreover, tables within sub-select were not accounted
@@ -208,11 +208,11 @@ box.execute("DROP VIEW cv3;")
 --
 box.execute("CREATE TABLE b (s1 INT PRIMARY KEY);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE VIEW bv (wombat) AS VALUES ((SELECT 'k' FROM b));")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP TABLE b;")
 ---
@@ -220,23 +220,23 @@ box.execute("DROP TABLE b;")
 ...
 box.execute("DROP VIEW bv;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP TABLE b;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE TABLE b (s1 INT PRIMARY KEY);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE TABLE c (s1 INT PRIMARY KEY);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE VIEW bcv AS SELECT * FROM b WHERE s1 IN (SELECT * FROM c);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP TABLE c;")
 ---
@@ -244,19 +244,19 @@ box.execute("DROP TABLE c;")
 ...
 box.execute("DROP VIEW bcv;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP TABLE c;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE TABLE c (s1 INT PRIMARY KEY);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE VIEW bcv(x, y) AS VALUES((SELECT 'k' FROM b), (VALUES((SELECT 1 FROM b WHERE s1 IN (VALUES((SELECT 1 + c.s1 FROM c)))))))")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP TABLE c;")
 ---
@@ -267,11 +267,11 @@ box.space.BCV:drop()
 ...
 box.execute("DROP TABLE c;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP TABLE b;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 -- gh-3814: make sure that recovery of view processed without
 -- unexpected errors.
@@ -282,11 +282,11 @@ box.snapshot()
 ...
 box.execute("CREATE TABLE t2 (id INT PRIMARY KEY);")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("CREATE VIEW v2 AS SELECT * FROM t2;")
 ---
-- rowcount: 1
+- row_count: 1
 ...
 test_run:cmd('restart server default')
 box.execute("DROP TABLE t2;")
@@ -309,9 +309,9 @@ box.space.T2:drop()
 -- Cleanup
 box.execute("DROP VIEW v1;");
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute("DROP TABLE t1;");
 ---
-- rowcount: 1
+- row_count: 1
 ...
diff --git a/test/sql/view_delayed_wal.result b/test/sql/view_delayed_wal.result
index ff0c70f..5197949 100644
--- a/test/sql/view_delayed_wal.result
+++ b/test/sql/view_delayed_wal.result
@@ -6,7 +6,7 @@ engine = test_run:get_cfg('engine')
 ...
 box.execute('pragma sql_default_engine=\''..engine..'\'')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 fiber = require('fiber')
 ---
@@ -18,7 +18,7 @@ fiber = require('fiber')
 --
 box.execute('CREATE TABLE t1(id INT PRIMARY KEY)')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 function create_view() box.execute('CREATE VIEW v1 AS SELECT * FROM t1') end
 ---
@@ -64,11 +64,11 @@ box.space.V1
 --
 box.execute('CREATE TABLE t2 (id INT PRIMARY KEY)')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.execute('CREATE VIEW view2 AS SELECT * FROM t2')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 function drop_view() box.space._space:delete{box.space.VIEW2.id} end
 ---
diff --git a/test/sql/vinyl-opts.result b/test/sql/vinyl-opts.result
index 19769f8..10a649a 100644
--- a/test/sql/vinyl-opts.result
+++ b/test/sql/vinyl-opts.result
@@ -15,11 +15,11 @@ test_run:cmd("switch test")
 ...
 box.execute('pragma sql_default_engine= \'vinyl\'')
 ---
-- rowcount: 0
+- row_count: 0
 ...
 box.execute('CREATE TABLE v1 (id INT PRIMARY KEY, b INT);')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.space.V1.index[0].options
 ---
@@ -31,7 +31,7 @@ box.space.V1.index[0].options
 ...
 box.execute('CREATE INDEX i1 ON v1(b);')
 ---
-- rowcount: 1
+- row_count: 1
 ...
 box.space.V1.index[1].options
 ---
-- 
2.7.4





More information about the Tarantool-patches mailing list