summaryrefslogtreecommitdiff
path: root/mysql-test/suite/versioning
diff options
context:
space:
mode:
authorAleksey Midenkov <midenok@gmail.com>2020-04-02 20:48:38 +0300
committerAleksey Midenkov <midenok@gmail.com>2020-04-02 20:48:38 +0300
commit44c6c7a9236dbbe35e8fda22b36466b6000038d6 (patch)
tree3e1034cd58bf9b8388ad80e19cc4e991453f0e1d /mysql-test/suite/versioning
parent9149017bb838e9efbef40c5f2807894c38b3412f (diff)
downloadmariadb-git-44c6c7a9236dbbe35e8fda22b36466b6000038d6.tar.gz
MDEV-21342 Assertion in set_ok_status() upon spatial field error on system-versioned table
SQL_SELECT::check_quick() returns error status only test_quick_select() returns -1. Fix error handling when lower frames throw error, but it is ignored by test_quick_select(). Fix return status for out-of-memory errors which are obviously must be processed as error in upper frames.
Diffstat (limited to 'mysql-test/suite/versioning')
-rw-r--r--mysql-test/suite/versioning/r/update.result7
-rw-r--r--mysql-test/suite/versioning/t/update.test10
2 files changed, 17 insertions, 0 deletions
diff --git a/mysql-test/suite/versioning/r/update.result b/mysql-test/suite/versioning/r/update.result
index a2ec02a7ec1..f7901d11d2a 100644
--- a/mysql-test/suite/versioning/r/update.result
+++ b/mysql-test/suite/versioning/r/update.result
@@ -312,3 +312,10 @@ ERROR 42S22: Unknown column 'xx' in 'field list'
drop procedure sp;
drop view v1;
drop table t1;
+#
+# MDEV-21342 Assertion in set_ok_status() upon spatial field error on system-versioned table
+#
+create or replace table t1 (f point, key(f)) with system versioning engine=myisam;
+update t1 set f = null where f = 'foo';
+ERROR 22003: Cannot get geometry object from data you send to the GEOMETRY field
+drop table t1;
diff --git a/mysql-test/suite/versioning/t/update.test b/mysql-test/suite/versioning/t/update.test
index 71e946e6c2b..5b0a9eb5c42 100644
--- a/mysql-test/suite/versioning/t/update.test
+++ b/mysql-test/suite/versioning/t/update.test
@@ -235,4 +235,14 @@ drop procedure sp;
drop view v1;
drop table t1;
+--echo #
+--echo # MDEV-21342 Assertion in set_ok_status() upon spatial field error on system-versioned table
+--echo #
+create or replace table t1 (f point, key(f)) with system versioning engine=myisam;
+--error ER_CANT_CREATE_GEOMETRY_OBJECT
+update t1 set f = null where f = 'foo';
+
+# cleanup
+drop table t1;
+
source suite/versioning/common_finish.inc;