mirror of
https://github.com/MariaDB/server.git
synced 2025-01-25 00:04:33 +01:00
branches/5.1: Fix bug#29507 TRUNCATE shows to many rows effected
In InnoDB, the row count is only a rough estimate used by SQL optimization. InnoDB is now return row count 0 for TRUNCATE operation.
This commit is contained in:
parent
0b9ab341a8
commit
6ac1930117
3 changed files with 33 additions and 0 deletions
|
@ -5782,6 +5782,13 @@ ha_innobase::info(
|
|||
n_rows++;
|
||||
}
|
||||
|
||||
/* Fix bug#29507: TRUNCATE shows too many rows affected.
|
||||
Do not show the estimates for TRUNCATE command. */
|
||||
if (thd_sql_command(user_thd) == SQLCOM_TRUNCATE) {
|
||||
|
||||
n_rows = 0;
|
||||
}
|
||||
|
||||
stats.records = (ha_rows)n_rows;
|
||||
stats.deleted = 0;
|
||||
stats.data_file_length = ((ulonglong)
|
||||
|
|
|
@ -3264,3 +3264,14 @@ AUTO_INCREMENT
|
|||
200
|
||||
DROP TABLE t2;
|
||||
DROP TABLE t1;
|
||||
CREATE TABLE t1 (c1 int default NULL,
|
||||
c2 int default NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
|
||||
TRUNCATE TABLE t1;
|
||||
affected rows: 0
|
||||
INSERT INTO t1 VALUES (1, 1), (2, 2), (3, 3), (4, 4), (5, 5);
|
||||
affected rows: 5
|
||||
info: Records: 5 Duplicates: 0 Warnings: 0
|
||||
TRUNCATE TABLE t1;
|
||||
affected rows: 0
|
||||
DROP TABLE t1;
|
||||
|
|
|
@ -2458,7 +2458,22 @@ SELECT AUTO_INCREMENT FROM INFORMATION_SCHEMA.TABLES WHERE table_name = 't2';
|
|||
DROP TABLE t2;
|
||||
DROP TABLE t1;
|
||||
# End 34920 test
|
||||
# Bug #29507 TRUNCATE shows to many rows effected
|
||||
#
|
||||
CONNECTION default;
|
||||
CREATE TABLE t1 (c1 int default NULL,
|
||||
c2 int default NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
|
||||
|
||||
--enable_info
|
||||
TRUNCATE TABLE t1;
|
||||
|
||||
INSERT INTO t1 VALUES (1, 1), (2, 2), (3, 3), (4, 4), (5, 5);
|
||||
TRUNCATE TABLE t1;
|
||||
|
||||
--disable_info
|
||||
DROP TABLE t1;
|
||||
#
|
||||
#######################################################################
|
||||
# #
|
||||
# Please, DO NOT TOUCH this file as well as the innodb.result file. #
|
||||
|
|
Loading…
Add table
Reference in a new issue