1
0
mirror of https://github.com/MariaDB/server.git synced 2025-08-05 13:16:09 +03:00

An after-fix for MDEV-14008 Assertion failing: `!is_set() || (m_status == DA_OK_BULK && is_bulk_op())

Fixing an additional failure discovered after a merge to 10.2
This commit is contained in:
Alexander Barkov
2017-12-20 13:49:27 +04:00
parent f7f5c710e4
commit cb121a047b
3 changed files with 19 additions and 1 deletions

View File

@@ -1360,3 +1360,9 @@ SELECT * FROM t1;
c1 c1
1e19 1e19
DROP TABLE t1; DROP TABLE t1;
CREATE TABLE t1 (a DOUBLE PRIMARY KEY AUTO_INCREMENT) ENGINE=InnoDB;
INSERT INTO t1 VALUES (-1);
SELECT * FROM t1;
a
-1
DROP TABLE t1;

View File

@@ -692,3 +692,8 @@ CREATE TABLE t1 (
INSERT INTO t1 VALUES (); INSERT INTO t1 VALUES ();
SELECT * FROM t1; SELECT * FROM t1;
DROP TABLE t1; DROP TABLE t1;
CREATE TABLE t1 (a DOUBLE PRIMARY KEY AUTO_INCREMENT) ENGINE=InnoDB;
INSERT INTO t1 VALUES (-1);
SELECT * FROM t1;
DROP TABLE t1;

View File

@@ -4399,7 +4399,14 @@ longlong Field_double::val_int_from_real(bool want_unsigned_result)
float8get(j,ptr); float8get(j,ptr);
res= double_to_longlong(j, want_unsigned_result, &error); res= double_to_longlong(j, want_unsigned_result, &error);
if (error) /*
Note, val_uint() is currently used for auto_increment purposes only,
and we want to suppress all warnings in such cases.
If we ever start using val_uint() for other purposes,
val_int_from_real() will need a new separate parameter to
suppress warnings.
*/
if (error && !want_unsigned_result)
{ {
ErrConvDouble err(j); ErrConvDouble err(j);
push_warning_printf(current_thd, Sql_condition::WARN_LEVEL_WARN, push_warning_printf(current_thd, Sql_condition::WARN_LEVEL_WARN,