fix version check and several bugs

This commit is contained in:
wu-xingying
2024-06-25 12:22:07 +00:00
committed by ob-robot
parent 18c10196ae
commit 861547704d
13 changed files with 198 additions and 18 deletions

View File

@ -645,3 +645,13 @@ create TABLE t1(pt POINT);
CREATE VIEW v1 AS (SELECT * FROM t1 ) UNION (SELECT * FROM t1 );
drop table t1;
drop view v1;
bugfix: 57363484
drop table if exists t1;
create table t1 (c1 int primary key,j json, g GEOMETRY NOT NULL SRID 4326, SPATIAL INDEX(g));
insert into t1 values (1,'{"b":2}', ST_GeomFromText('POINT(1 1)', 4326));
insert into t1 values (2, '{"b":2}', ST_GeomFromText('POINT(-1 1)', 4326));
insert into t1 values (3,'{"b":2}', ST_GeomFromText('POINT(-1 -1)', 4326));
delete from t1 where c1 = 3;
alter table t1 drop column j;
delete from t1 where c1 = 2;
drop table t1;

View File

@ -253,3 +253,65 @@ select i1, st_astext(g) from spatial_index_dml;
i1 st_astext(g)
1 POINT(0 0)
drop table spatial_index_dml;
drop table if exists t1;
Warnings:
Note 1051 Unknown table 'test.t1'
create table t1 (c1 int primary key,j json, g GEOMETRY NOT NULL SRID 4326, SPATIAL INDEX(g));
insert into t1 values (1,'{"b":2}', ST_GeomFromText('POINT(1 1)', 4326));
insert into t1 values (2, '{"b":2}', ST_GeomFromText('POINT(-1 1)', 4326));
insert into t1 values (3,'{"b":2}', ST_GeomFromText('POINT(-1 -1)', 4326));
insert into t1 values (4, '{"b":2}', ST_GeomFromText('POINT(1 -1)', 4326));
insert into t1 values (5,'{"b":2}', ST_GeomFromText('POLYGON((0 0, 1 0, 1 -1, 0 -1, 0 0))', 4326));
insert into t1 values (6, '{"b":2}', ST_GeomFromText('LINESTRING(-1 -1, 3 3)', 4326));
insert into t1 values (7, '{"b":2}', ST_GeomFromText('POLYGON((1 1, -1 1, -1 -1, 1 -1, 1 1))', 4326));
insert into t1 values (8,'{"b":2}', ST_GeomFromText('POLYGON((0 0, 0 2, 2 2, 2 0, 0 0))', 4326));
explain SELECT /*+ index(t1 g) */ * from t1 where ST_INTERSECTS(g,ST_GeomFromText('POINT(-1 -1)', 4326));
Query Plan
================================================
|ID|OPERATOR |NAME |EST.ROWS|EST.TIME(us)|
------------------------------------------------
|0 |TABLE FULL SCAN|t1(g)|1 |159 |
================================================
Outputs & filters:
-------------------------------------
0 - output([t1.c1], [t1.j], [t1.g]), filter([ST_INTERSECTS(t1.g, ST_GeomFromText('POINT(-1 -1)', 4326))])
access([t1.c1], [t1.g], [t1.j]), partitions(p0)
is_index_back=true, is_global_index=false, filter_before_indexback[false],
range_key([t1.__cellid_18], [t1.__mbr_18], [t1.c1]), range(383950835169648260,MIN,MIN ; 383950835169648260,MAX,MAX), (383950835169648272,MIN,MIN ;
383950835169648272,MAX,MAX), (383950835169648320,MIN,MIN ; 383950835169648320,MAX,MAX), (383950835169648384,MIN,MIN ; 383950835169648384,MAX,MAX), (383950835169647616,
MIN,MIN ; 383950835169647616,MAX,MAX), (383950835169644544,MIN,MIN ; 383950835169644544,MAX,MAX), (383950835169640448,MIN,MIN ; 383950835169640448,MAX,MAX),
(383950835169689600,MIN,MIN ; 383950835169689600,MAX,MAX), (383950835169886208,MIN,MIN ; 383950835169886208,MAX,MAX), (383950835170672640,MIN,MIN ; 383950835170672640,
MAX,MAX), (383950835173818368,MIN,MIN ; 383950835173818368,MAX,MAX), (383950835161235456,MIN,MIN ; 383950835161235456,MAX,MAX), (383950835144458240,MIN,
MIN ; 383950835144458240,MAX,MAX), (383950835077349376,MIN,MIN ; 383950835077349376,MAX,MAX), (383950835882655744,MIN,MIN ; 383950835882655744,MAX,MAX),
(383950839103881216,MIN,MIN ; 383950839103881216,MAX,MAX), (383950851988783104,MIN,MIN ; 383950851988783104,MAX,MAX), (383950903528390656,MIN,MIN ; 383950903528390656,
MAX,MAX), (383950834808913920,MIN,MIN ; 383950834808913920,MAX,MAX), (383950559931006976,MIN,MIN ; 383950559931006976,MAX,MAX), (383953858465890304,MIN,
MIN ; 383953858465890304,MAX,MAX), (383949460419379200,MIN,MIN ; 383949460419379200,MAX,MAX), (384002236977512448,MIN,MIN ; 384002236977512448,MAX,MAX),
(384213343210045440,MIN,MIN ; 384213343210045440,MAX,MAX), (383931868233334784,MIN,MIN ; 383931868233334784,MAX,MAX), (382805968326492160,MIN,MIN ; 382805968326492160,
MAX,MAX), (378302368699121664,MIN,MIN ; 378302368699121664,MAX,MAX), (360287970189639680,MIN,MIN ; 360287970189639680,MAX,MAX), (288230376151711744,MIN,
MIN ; 288230376151711744,MAX,MAX), (1152921504606846976,MIN,MIN ; 1152921504606846976,MAX,MAX), (383950835169648257,MIN,MIN ; 383950835169648257,MAX,MAX)
alter table t1 drop column j;
explain SELECT /*+ index(t1 g) */ * from t1 where ST_INTERSECTS(g,ST_GeomFromText('POINT(-1 -1)', 4326));
Query Plan
================================================
|ID|OPERATOR |NAME |EST.ROWS|EST.TIME(us)|
------------------------------------------------
|0 |TABLE FULL SCAN|t1(g)|1 |159 |
================================================
Outputs & filters:
-------------------------------------
0 - output([t1.c1], [t1.g]), filter([ST_INTERSECTS(t1.g, ST_GeomFromText('POINT(-1 -1)', 4326))])
access([t1.c1], [t1.g]), partitions(p0)
is_index_back=true, is_global_index=false, filter_before_indexback[false],
range_key([t1.__cellid_18], [t1.__mbr_18], [t1.c1]), range(383950835169648260,MIN,MIN ; 383950835169648260,MAX,MAX), (383950835169648272,MIN,MIN ;
383950835169648272,MAX,MAX), (383950835169648320,MIN,MIN ; 383950835169648320,MAX,MAX), (383950835169648384,MIN,MIN ; 383950835169648384,MAX,MAX), (383950835169647616,
MIN,MIN ; 383950835169647616,MAX,MAX), (383950835169644544,MIN,MIN ; 383950835169644544,MAX,MAX), (383950835169640448,MIN,MIN ; 383950835169640448,MAX,MAX),
(383950835169689600,MIN,MIN ; 383950835169689600,MAX,MAX), (383950835169886208,MIN,MIN ; 383950835169886208,MAX,MAX), (383950835170672640,MIN,MIN ; 383950835170672640,
MAX,MAX), (383950835173818368,MIN,MIN ; 383950835173818368,MAX,MAX), (383950835161235456,MIN,MIN ; 383950835161235456,MAX,MAX), (383950835144458240,MIN,
MIN ; 383950835144458240,MAX,MAX), (383950835077349376,MIN,MIN ; 383950835077349376,MAX,MAX), (383950835882655744,MIN,MIN ; 383950835882655744,MAX,MAX),
(383950839103881216,MIN,MIN ; 383950839103881216,MAX,MAX), (383950851988783104,MIN,MIN ; 383950851988783104,MAX,MAX), (383950903528390656,MIN,MIN ; 383950903528390656,
MAX,MAX), (383950834808913920,MIN,MIN ; 383950834808913920,MAX,MAX), (383950559931006976,MIN,MIN ; 383950559931006976,MAX,MAX), (383953858465890304,MIN,
MIN ; 383953858465890304,MAX,MAX), (383949460419379200,MIN,MIN ; 383949460419379200,MAX,MAX), (384002236977512448,MIN,MIN ; 384002236977512448,MAX,MAX),
(384213343210045440,MIN,MIN ; 384213343210045440,MAX,MAX), (383931868233334784,MIN,MIN ; 383931868233334784,MAX,MAX), (382805968326492160,MIN,MIN ; 382805968326492160,
MAX,MAX), (378302368699121664,MIN,MIN ; 378302368699121664,MAX,MAX), (360287970189639680,MIN,MIN ; 360287970189639680,MAX,MAX), (288230376151711744,MIN,
MIN ; 288230376151711744,MAX,MAX), (1152921504606846976,MIN,MIN ; 1152921504606846976,MAX,MAX), (383950835169648257,MIN,MIN ; 383950835169648257,MAX,MAX)
drop table t1;