mariadb/mysql-test/suite/innodb_gis/t/0.test
Alexey Botchkov 9fc46b8857 MDEV-38372 ASAN error in InnoDB on malformed WKB
Geometry::is_binary_valid() method added, and
used to check WKB before storing in the engine.
2025-12-26 23:49:46 +01:00

57 lines
1.3 KiB
Text

--source include/have_innodb.inc
SET default_storage_engine=innodb;
--source include/gis_generic.inc
--source include/gis_keys.inc
#
# Bug #15680 (SPATIAL key in innodb)
#
#--error ER_TABLE_CANT_HANDLE_SPKEYS
create table t1 (g geometry not null, spatial gk(g)) engine=innodb;
DROP TABLE t1;
# Test read uncommitted
create table t1 (c1 int, c2 geometry not null, spatial index (c2))engine=innodb;
connect (a,localhost,root,,);
connection a;
start transaction;
insert into t1 values(1, Point(1,1));
connect (con1,localhost,root,,);
connection con1;
set @g1 = ST_GeomFromText('Polygon((0 0,0 100,100 100,100 0,0 0))');
set transaction isolation level read uncommitted;
--disable_ps2_protocol
select count(*) from t1 where ST_Within(t1.c2, @g1);
--enable_ps2_protocol
disconnect con1;
--source include/wait_until_disconnected.inc
connection a;
commit;
disconnect a;
--source include/wait_until_disconnected.inc
connection default;
drop table t1;
--echo #
--echo # MDEV-38372 ASAN error in InnoDB on malformed WKB
--echo #
create table t1 (
id int auto_increment primary key,
geom geometry not null,
spatial index (geom)
) engine=innodb;
--error ER_CANT_CREATE_GEOMETRY_OBJECT
insert t1 (geom) values (X'000000000107000000FF000000');
drop table t1;
--echo # End of 10.6 tests