mirror of
https://github.com/MariaDB/server.git
synced 2025-01-16 03:52:35 +01:00
Adjust storage_engine suite according to server changes in 10.2
This commit is contained in:
parent
aad8cefd2d
commit
36e020a5d6
35 changed files with 348 additions and 850 deletions
|
@ -13,7 +13,7 @@ ALTER TABLE t1 ALTER COLUMN a SET DEFAULT '0';
|
|||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT '0',
|
||||
`a` int(11) DEFAULT 0,
|
||||
`c` char(8) DEFAULT NULL,
|
||||
`b` int(11) DEFAULT NULL
|
||||
) ENGINE=<STORAGE_ENGINE> DEFAULT CHARSET=latin1
|
||||
|
|
|
@ -10,7 +10,7 @@ a
|
|||
2
|
||||
ALTER TABLE t1 DISCARD TABLESPACE;
|
||||
SELECT a FROM t1;
|
||||
ERROR HY000: Tablespace has been discarded for table 't1'
|
||||
ERROR HY000: Tablespace has been discarded for table `t1`
|
||||
ALTER TABLE t1 IMPORT TABLESPACE;
|
||||
Warnings:
|
||||
Warning 1810 IO Read error: (2, No such file or directory) Error opening './test/t1.cfg', will attempt to import without schema verification
|
||||
|
|
|
@ -27,7 +27,7 @@ CREATE TABLE t1 ENGINE=<STORAGE_ENGINE> <CUSTOM_TABLE_OPTIONS> AS SELECT 1 UNION
|
|||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`1` bigint(20) NOT NULL DEFAULT '0'
|
||||
`1` bigint(20) NOT NULL DEFAULT 0
|
||||
) ENGINE=<STORAGE_ENGINE> DEFAULT CHARSET=latin1
|
||||
SELECT * FROM t1;
|
||||
1
|
||||
|
|
|
@ -0,0 +1,12 @@
|
|||
alter_table_online : MDEV-9705 - Field type conversion warnings have changed to worse
|
||||
col_opt_null : MDEV-10252 - Row count in 'out of range' warnings is off
|
||||
col_opt_not_null : MDEV-10252 - Row count in 'out of range' warnings is off
|
||||
col_opt_unsigned : MDEV-10252 - Row count in 'out of range' warnings is off
|
||||
col_opt_zerofill : MDEV-10252 - Row count in 'out of range' warnings is off
|
||||
type_binary : MDEV-10252 - Row count in 'out of range' warnings is off
|
||||
type_char : MDEV-10252 - Row count in 'out of range' warnings is off
|
||||
type_fixed : MDEV-10252 - Row count in 'out of range' warnings is off
|
||||
type_float : MDEV-10252 - Row count in 'out of range' warnings is off
|
||||
type_int : MDEV-10252 - Row count in 'out of range' warnings is off
|
||||
type_varbinary : MDEV-10252 - Row count in 'out of range' warnings is off
|
||||
type_varchar : MDEV-10252 - Row count in 'out of range' warnings is off
|
|
@ -1,4 +1,4 @@
|
|||
#
|
||||
#
|
||||
# INSERT DELAYED
|
||||
#
|
||||
|
||||
|
|
|
@ -91,6 +91,9 @@ if ($have_default_index)
|
|||
call mtr.add_suppression(" '\..test.t1'");
|
||||
call mtr.add_suppression("Couldn't repair table: test.t1");
|
||||
|
||||
# In 10.2 with log_warnings=2 the error message is printed to the error log
|
||||
call mtr.add_suppression("Table 't1' is marked as crashed.*");
|
||||
|
||||
--let $create_definition = a $int_indexed_col, b $char_col, $default_index (a)
|
||||
--source create_table.inc
|
||||
REPAIR TABLE t1;
|
||||
|
|
|
@ -59,6 +59,7 @@ call mtr.add_suppression("Got an error from thread_id=.*");
|
|||
call mtr.add_suppression("MySQL thread id .*, query id .* localhost.*root Checking table");
|
||||
call mtr.add_suppression(" '\..test.t1'");
|
||||
call mtr.add_suppression("Couldn't repair table: test.t1");
|
||||
call mtr.add_suppression("Table 't1' is marked as crashed.*");
|
||||
CREATE TABLE t1 (a <INT_COLUMN>, b <CHAR_COLUMN>, <CUSTOM_INDEX> (a)) ENGINE=<STORAGE_ENGINE> <CUSTOM_TABLE_OPTIONS>;
|
||||
REPAIR TABLE t1;
|
||||
Table Op Msg_type Msg_text
|
||||
|
@ -85,7 +86,7 @@ Table Op Msg_type Msg_text
|
|||
test.t1 check error Size of datafile is: 39 Should be: 65
|
||||
test.t1 check error Corrupt
|
||||
SELECT a,b FROM t1;
|
||||
ERROR HY000: Incorrect key file for table 't1'; try to repair it
|
||||
ERROR HY000: Index for table 't1' is corrupt; try to repair it
|
||||
# Statement ended with one of expected results (0,ER_NOT_KEYFILE,144).
|
||||
# If you got a difference in error message, just add it to rdiff file
|
||||
INSERT INTO t1 (a,b) VALUES (14,'n'),(15,'o');
|
||||
|
|
|
@ -1,16 +1,19 @@
|
|||
DROP TABLE IF EXISTS t1;
|
||||
# Running CREATE TABLE .. DATA DIRECTORY = <>
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL,
|
||||
`b` char(8) DEFAULT NULL
|
||||
) ENGINE=<STORAGE_ENGINE> DEFAULT CHARSET=latin1 DATA DIRECTORY='<DATA_DIR>' INDEX DIRECTORY='<INDEX_DIR>'
|
||||
) ENGINE=<STORAGE_ENGINE> DEFAULT CHARSET=latin1 DATA DIRECTORY='<DATA_DIR_1>'
|
||||
# For ALTER TABLE the option is ignored
|
||||
# Running ALTER TABLE .. DATA DIRECTORY = <>
|
||||
Warnings:
|
||||
Warning 1618 <INDEX DIRECTORY> option ignored
|
||||
Warning 1618 <DATA DIRECTORY> option ignored
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL,
|
||||
`b` char(8) DEFAULT NULL
|
||||
) ENGINE=<STORAGE_ENGINE> DEFAULT CHARSET=latin1 DATA DIRECTORY='<DATA_DIR>' INDEX DIRECTORY='<INDEX_DIR>'
|
||||
) ENGINE=<STORAGE_ENGINE> DEFAULT CHARSET=latin1 DATA DIRECTORY='<DATA_DIR_1>'
|
||||
DROP TABLE t1;
|
52
mysql-test/suite/storage_engine/tbl_opt_data_dir.test
Normal file
52
mysql-test/suite/storage_engine/tbl_opt_data_dir.test
Normal file
|
@ -0,0 +1,52 @@
|
|||
#
|
||||
# Check whether DATA DIRECTORY is supported in CREATE and ALTER TABLE
|
||||
#
|
||||
# Note: the test does not check whether the option
|
||||
# has any real effect on the table, only that it is accepted
|
||||
#
|
||||
|
||||
--source include/have_symlink.inc
|
||||
--source have_engine.inc
|
||||
|
||||
--let $data_dir1 = $MYSQLTEST_VARDIR/storage_engine_data_dir1/
|
||||
--let $data_dir2 = $MYSQLTEST_VARDIR/storage_engine_data_dir2/
|
||||
--mkdir $data_dir1
|
||||
--mkdir $data_dir2
|
||||
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS t1;
|
||||
--enable_warnings
|
||||
|
||||
--let $table_options = DATA DIRECTORY = '$data_dir1'
|
||||
# We cannot mask the folder name here and further, but we can switch off query logging
|
||||
--let $disable_query_log = 1
|
||||
--echo # Running CREATE TABLE .. DATA DIRECTORY = <>
|
||||
--source create_table.inc
|
||||
|
||||
--source mask_engine.inc
|
||||
--replace_result $data_dir1 <DATA_DIR_1>
|
||||
SHOW CREATE TABLE t1;
|
||||
|
||||
--echo # For ALTER TABLE the option is ignored
|
||||
|
||||
--let $alter_definition = DATA DIRECTORY = '$data_dir2'
|
||||
--disable_query_log
|
||||
--echo # Running ALTER TABLE .. DATA DIRECTORY = <>
|
||||
--source alter_table.inc
|
||||
if ($mysql_errname)
|
||||
{
|
||||
--let $my_last_stmt = $alter_statement
|
||||
--let $functionality = ALTER TABLE
|
||||
--source unexpected_result.inc
|
||||
}
|
||||
--enable_query_log
|
||||
--source mask_engine.inc
|
||||
--replace_result $data_dir1 <DATA_DIR_1>
|
||||
SHOW CREATE TABLE t1;
|
||||
|
||||
DROP TABLE t1;
|
||||
|
||||
--source cleanup_engine.inc
|
||||
|
||||
--rmdir $data_dir1
|
||||
--rmdir $data_dir2
|
|
@ -1,52 +0,0 @@
|
|||
#
|
||||
# Check whether DATA DIRECTORY and INDEX DIRECTORY
|
||||
# are supported in CREATE and ALTER TABLE
|
||||
#
|
||||
# Note: the test does not check whether the options
|
||||
# have any real effect on the table, only
|
||||
# that they are accepted
|
||||
#
|
||||
|
||||
--source include/have_symlink.inc
|
||||
--source have_engine.inc
|
||||
|
||||
--let $data_dir = $MYSQLTEST_VARDIR/storage_engine_data_dir/
|
||||
--let $index_dir = $MYSQLTEST_VARDIR/storage_engine_index_dir/
|
||||
--mkdir $data_dir
|
||||
--mkdir $index_dir
|
||||
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS t1;
|
||||
--enable_warnings
|
||||
|
||||
--let $table_options = DATA DIRECTORY = '$data_dir' INDEX DIRECTORY = '$index_dir'
|
||||
# We cannot mask the folders name here, but we can switch off query logging
|
||||
--let $disable_query_log = 1
|
||||
--source create_table.inc
|
||||
|
||||
--source mask_engine.inc
|
||||
--replace_result $data_dir <DATA_DIR> $index_dir <INDEX_DIR>
|
||||
SHOW CREATE TABLE t1;
|
||||
|
||||
--let $alter_definition = INDEX DIRECTORY = '$data_dir'
|
||||
--disable_query_log
|
||||
--source alter_table.inc
|
||||
if ($mysql_errname)
|
||||
{
|
||||
--let $my_last_stmt = $alter_statement
|
||||
--let $functionality = ALTER TABLE
|
||||
--source unexpected_result.inc
|
||||
}
|
||||
--enable_query_log
|
||||
--source mask_engine.inc
|
||||
--replace_result $data_dir <DATA_DIR> $index_dir <INDEX_DIR>
|
||||
SHOW CREATE TABLE t1;
|
||||
|
||||
DROP TABLE t1;
|
||||
|
||||
--source cleanup_engine.inc
|
||||
|
||||
--rmdir $data_dir
|
||||
--rmdir $index_dir
|
||||
|
||||
|
19
mysql-test/suite/storage_engine/tbl_opt_index_dir.result
Normal file
19
mysql-test/suite/storage_engine/tbl_opt_index_dir.result
Normal file
|
@ -0,0 +1,19 @@
|
|||
DROP TABLE IF EXISTS t1;
|
||||
# Running CREATE TABLE .. INDEX DIRECTORY = <>
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL,
|
||||
`b` char(8) DEFAULT NULL
|
||||
) ENGINE=<STORAGE_ENGINE> DEFAULT CHARSET=latin1 INDEX DIRECTORY='<INDEX_DIR_1>'
|
||||
# For ALTER TABLE the option is ignored
|
||||
# Running ALTER TABLE .. INDEX DIRECTORY = <>
|
||||
Warnings:
|
||||
Warning 1618 <INDEX DIRECTORY> option ignored
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL,
|
||||
`b` char(8) DEFAULT NULL
|
||||
) ENGINE=<STORAGE_ENGINE> DEFAULT CHARSET=latin1 INDEX DIRECTORY='<INDEX_DIR_1>'
|
||||
DROP TABLE t1;
|
52
mysql-test/suite/storage_engine/tbl_opt_index_dir.test
Normal file
52
mysql-test/suite/storage_engine/tbl_opt_index_dir.test
Normal file
|
@ -0,0 +1,52 @@
|
|||
#
|
||||
# Check whether INDEX DIRECTORY is supported in CREATE and ALTER TABLE
|
||||
#
|
||||
# Note: the test does not check whether the option
|
||||
# has any real effect on the table, only that it is accepted
|
||||
#
|
||||
|
||||
--source include/have_symlink.inc
|
||||
--source have_engine.inc
|
||||
|
||||
--let $index_dir1 = $MYSQLTEST_VARDIR/storage_engine_index_dir1/
|
||||
--let $index_dir2 = $MYSQLTEST_VARDIR/storage_engine_index_dir2/
|
||||
--mkdir $index_dir1
|
||||
--mkdir $index_dir2
|
||||
|
||||
--disable_warnings
|
||||
DROP TABLE IF EXISTS t1;
|
||||
--enable_warnings
|
||||
|
||||
--let $table_options = INDEX DIRECTORY = '$index_dir1'
|
||||
# We cannot mask the folder name here and further, but we can switch off query logging
|
||||
--let $disable_query_log = 1
|
||||
--echo # Running CREATE TABLE .. INDEX DIRECTORY = <>
|
||||
--source create_table.inc
|
||||
|
||||
--source mask_engine.inc
|
||||
--replace_result $index_dir1 <INDEX_DIR_1>
|
||||
SHOW CREATE TABLE t1;
|
||||
|
||||
--echo # For ALTER TABLE the option is ignored
|
||||
|
||||
--let $alter_definition = INDEX DIRECTORY = '$index_dir2'
|
||||
--disable_query_log
|
||||
--echo # Running ALTER TABLE .. INDEX DIRECTORY = <>
|
||||
--source alter_table.inc
|
||||
if ($mysql_errname)
|
||||
{
|
||||
--let $my_last_stmt = $alter_statement
|
||||
--let $functionality = ALTER TABLE
|
||||
--source unexpected_result.inc
|
||||
}
|
||||
--enable_query_log
|
||||
--source mask_engine.inc
|
||||
--replace_result $index_dir1 <INDEX_DIR_1>
|
||||
SHOW CREATE TABLE t1;
|
||||
|
||||
DROP TABLE t1;
|
||||
|
||||
--source cleanup_engine.inc
|
||||
|
||||
--rmdir $index_dir1
|
||||
--rmdir $index_dir2
|
|
@ -1,16 +1,30 @@
|
|||
DROP TABLE IF EXISTS t1;
|
||||
CREATE TABLE t1 (a <INT_COLUMN>, b <CHAR_COLUMN>) ENGINE=<STORAGE_ENGINE> <CUSTOM_TABLE_OPTIONS> ROW_FORMAT=FIXED;
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL,
|
||||
`b` char(8) DEFAULT NULL
|
||||
) ENGINE=<STORAGE_ENGINE> DEFAULT CHARSET=latin1 ROW_FORMAT=FIXED
|
||||
ALTER TABLE t1 ROW_FORMAT=DYNAMIC;
|
||||
CREATE TABLE t1 (a <INT_COLUMN>, b <CHAR_COLUMN>) ENGINE=<STORAGE_ENGINE> <CUSTOM_TABLE_OPTIONS> ROW_FORMAT=DYNAMIC;
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL,
|
||||
`b` char(8) DEFAULT NULL
|
||||
) ENGINE=<STORAGE_ENGINE> DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC
|
||||
ALTER TABLE t1 ROW_FORMAT=FIXED;
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL,
|
||||
`b` char(8) DEFAULT NULL
|
||||
) ENGINE=<STORAGE_ENGINE> DEFAULT CHARSET=latin1 ROW_FORMAT=FIXED
|
||||
ALTER TABLE t1 ROW_FORMAT=PAGE;
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL,
|
||||
`b` char(8) DEFAULT NULL
|
||||
) ENGINE=<STORAGE_ENGINE> DEFAULT CHARSET=latin1 ROW_FORMAT=PAGE
|
||||
ALTER TABLE t1 ROW_FORMAT=COMPACT;
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL,
|
||||
`b` char(8) DEFAULT NULL
|
||||
) ENGINE=<STORAGE_ENGINE> DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT
|
||||
DROP TABLE t1;
|
||||
|
|
|
@ -13,12 +13,12 @@
|
|||
DROP TABLE IF EXISTS t1;
|
||||
--enable_warnings
|
||||
|
||||
--let $table_options = ROW_FORMAT=FIXED
|
||||
--let $table_options = ROW_FORMAT=DYNAMIC
|
||||
--source create_table.inc
|
||||
--source mask_engine.inc
|
||||
SHOW CREATE TABLE t1;
|
||||
|
||||
--let $alter_definition = ROW_FORMAT=DYNAMIC
|
||||
--let $alter_definition = ROW_FORMAT=FIXED
|
||||
--source alter_table.inc
|
||||
if ($mysql_errname)
|
||||
{
|
||||
|
@ -29,6 +29,30 @@ if ($mysql_errname)
|
|||
--source mask_engine.inc
|
||||
SHOW CREATE TABLE t1;
|
||||
|
||||
--let $alter_definition = ROW_FORMAT=PAGE
|
||||
--source alter_table.inc
|
||||
if ($mysql_errname)
|
||||
{
|
||||
--let $my_last_stmt = $alter_statement
|
||||
--let $functionality = ALTER TABLE
|
||||
--source unexpected_result.inc
|
||||
}
|
||||
--source mask_engine.inc
|
||||
SHOW CREATE TABLE t1;
|
||||
|
||||
|
||||
--let $alter_definition = ROW_FORMAT=COMPACT
|
||||
--source alter_table.inc
|
||||
if ($mysql_errname)
|
||||
{
|
||||
--let $my_last_stmt = $alter_statement
|
||||
--let $functionality = ALTER TABLE
|
||||
--source unexpected_result.inc
|
||||
}
|
||||
--source mask_engine.inc
|
||||
SHOW CREATE TABLE t1;
|
||||
|
||||
|
||||
DROP TABLE t1;
|
||||
|
||||
--source cleanup_engine.inc
|
||||
|
|
|
@ -97,7 +97,7 @@ varchar2b 1
|
|||
varchar3b 1
|
||||
SET SESSION optimizer_switch = 'engine_condition_pushdown=on';
|
||||
Warnings:
|
||||
Warning 1681 'engine_condition_pushdown=on' is deprecated and will be removed in a future release.
|
||||
Warning 1681 'engine_condition_pushdown=on' is deprecated and will be removed in a future release
|
||||
EXPLAIN SELECT c,c20,v16,v128 FROM t1 WHERE c > 'a';
|
||||
id select_type table type possible_keys key key_len ref rows Extra
|
||||
# # # range c_v c_v # # # Using index condition
|
||||
|
|
|
@ -13,7 +13,7 @@ SHOW COLUMNS IN t1;
|
|||
Field Type Null Key Default Extra
|
||||
d date # # #
|
||||
dt datetime # # #
|
||||
ts timestamp # # # on update CURRENT_TIMESTAMP
|
||||
ts timestamp # # # on update current_timestamp()
|
||||
t time # # #
|
||||
y year(4) # # #
|
||||
y4 year(4) # # #
|
||||
|
|
|
@ -3,12 +3,12 @@ CREATE TABLE t1 (a <INT_COLUMN>, b <INT_COLUMN> GENERATED ALWAYS AS (a+1)) ENGIN
|
|||
SHOW COLUMNS IN t1;
|
||||
Field Type Null Key Default Extra
|
||||
a int(11) # #
|
||||
b int(11) # # VIRTUAL
|
||||
b int(11) # # VIRTUAL GENERATED
|
||||
INSERT INTO t1 (a) VALUES (1),(2);
|
||||
INSERT INTO t1 (a,b) VALUES (3,3),(4,4);
|
||||
Warnings:
|
||||
Warning 1906 The value specified for computed column 'b' in table 't1' ignored
|
||||
Warning 1906 The value specified for computed column 'b' in table 't1' ignored
|
||||
Warning 1906 The value specified for generated column 'b' in table 't1' ignored
|
||||
Warning 1906 The value specified for generated column 'b' in table 't1' ignored
|
||||
SELECT a,b FROM t1;
|
||||
a b
|
||||
1 2
|
||||
|
@ -20,12 +20,12 @@ CREATE TABLE t1 (a <INT_COLUMN>, b <INT_COLUMN> GENERATED ALWAYS AS (a+1) PERSIS
|
|||
SHOW COLUMNS IN t1;
|
||||
Field Type Null Key Default Extra
|
||||
a int(11) # #
|
||||
b int(11) # # PERSISTENT
|
||||
b int(11) # # STORED GENERATED
|
||||
INSERT INTO t1 (a) VALUES (1),(2);
|
||||
INSERT INTO t1 (a,b) VALUES (3,3),(4,4);
|
||||
Warnings:
|
||||
Warning 1906 The value specified for computed column 'b' in table 't1' ignored
|
||||
Warning 1906 The value specified for computed column 'b' in table 't1' ignored
|
||||
Warning 1906 The value specified for generated column 'b' in table 't1' ignored
|
||||
Warning 1906 The value specified for generated column 'b' in table 't1' ignored
|
||||
SELECT a,b FROM t1;
|
||||
a b
|
||||
1 2
|
||||
|
@ -37,12 +37,12 @@ CREATE TABLE t1 (a <INT_COLUMN>, b <INT_COLUMN> GENERATED ALWAYS AS (a+1) VIRTUA
|
|||
SHOW COLUMNS IN t1;
|
||||
Field Type Null Key Default Extra
|
||||
a int(11) # #
|
||||
b int(11) # # VIRTUAL
|
||||
b int(11) # # VIRTUAL GENERATED
|
||||
INSERT INTO t1 (a) VALUES (1),(2);
|
||||
INSERT INTO t1 (a,b) VALUES (3,3),(4,4);
|
||||
Warnings:
|
||||
Warning 1906 The value specified for computed column 'b' in table 't1' ignored
|
||||
Warning 1906 The value specified for computed column 'b' in table 't1' ignored
|
||||
Warning 1906 The value specified for generated column 'b' in table 't1' ignored
|
||||
Warning 1906 The value specified for generated column 'b' in table 't1' ignored
|
||||
SELECT a,b FROM t1;
|
||||
a b
|
||||
1 2
|
||||
|
@ -54,12 +54,12 @@ CREATE TABLE t1 (a <INT_COLUMN>, b <INT_COLUMN> AS (a+1) PERSISTENT) ENGINE=<STO
|
|||
SHOW COLUMNS IN t1;
|
||||
Field Type Null Key Default Extra
|
||||
a int(11) # #
|
||||
b int(11) # # PERSISTENT
|
||||
b int(11) # # STORED GENERATED
|
||||
INSERT INTO t1 (a) VALUES (1),(2);
|
||||
INSERT INTO t1 (a,b) VALUES (3,3),(4,4);
|
||||
Warnings:
|
||||
Warning 1906 The value specified for computed column 'b' in table 't1' ignored
|
||||
Warning 1906 The value specified for computed column 'b' in table 't1' ignored
|
||||
Warning 1906 The value specified for generated column 'b' in table 't1' ignored
|
||||
Warning 1906 The value specified for generated column 'b' in table 't1' ignored
|
||||
SELECT a,b FROM t1;
|
||||
a b
|
||||
1 2
|
||||
|
|
|
@ -4,4 +4,6 @@ insert_high_prio : InnoDB does not use table-level locking
|
|||
insert_low_prio : InnoDB does not use table-level locking
|
||||
select_high_prio : InnoDB does not use table-level locking
|
||||
update_low_prio : InnoDB does not use table-level locking
|
||||
|
||||
insert_delayed : MDEV-12880 - INSERT DELAYED is not detected as inapplicable to a table under lock
|
||||
lock_concurrent : MDEV-12882 - Assertion failure
|
||||
tbl_opt_index_dir : INDEX DIRECTORY option is not supported anymore
|
||||
|
|
|
@ -111,7 +111,7 @@
|
|||
-test.t1 check error Corrupt
|
||||
+test.t1 check status OK
|
||||
SELECT a,b FROM t1;
|
||||
-ERROR HY000: Incorrect key file for table 't1'; try to repair it
|
||||
-ERROR HY000: Index for table 't1' is corrupt; try to repair it
|
||||
-# Statement ended with one of expected results (0,ER_NOT_KEYFILE,144).
|
||||
-# If you got a difference in error message, just add it to rdiff file
|
||||
-INSERT INTO t1 (a,b) VALUES (14,'n'),(15,'o');
|
||||
|
|
|
@ -1 +1 @@
|
|||
--innodb --ignore-builtin-innodb --plugin-load=ha_innodb
|
||||
--innodb
|
||||
|
|
|
@ -1,10 +1,44 @@
|
|||
--- suite/storage_engine/tbl_opt_row_format.result 2012-06-24 23:55:19.539380000 +0400
|
||||
+++ suite/storage_engine/tbl_opt_row_format.reject 2012-07-15 19:26:02.235049157 +0400
|
||||
@@ -1,5 +1,7 @@
|
||||
DROP TABLE IF EXISTS t1;
|
||||
CREATE TABLE t1 (a <INT_COLUMN>, b <CHAR_COLUMN>) ENGINE=<STORAGE_ENGINE> <CUSTOM_TABLE_OPTIONS> ROW_FORMAT=FIXED;
|
||||
+Warnings:
|
||||
+Warning 1478 <STORAGE_ENGINE>: assuming ROW_FORMAT=COMPACT.
|
||||
--- ../storage/innobase/mysql-test/storage_engine/tbl_opt_row_format.result~ 2017-05-24 00:40:12.854181048 +0300
|
||||
+++ ../storage/innobase/mysql-test/storage_engine/tbl_opt_row_format.reject 2017-05-24 00:49:06.578191030 +0300
|
||||
@@ -7,19 +7,39 @@
|
||||
`b` char(8) DEFAULT NULL
|
||||
) ENGINE=<STORAGE_ENGINE> DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC
|
||||
ALTER TABLE t1 ROW_FORMAT=FIXED;
|
||||
+ERROR HY000: Table storage engine '<STORAGE_ENGINE>' does not support the create option 'ROW_TYPE'
|
||||
+# ERROR: Statement ended with errno 1478, errname ER_ILLEGAL_HA_CREATE_OPTION (expected to succeed)
|
||||
+# ------------ UNEXPECTED RESULT ------------
|
||||
+# [ ALTER TABLE t1 ROW_FORMAT=FIXED ]
|
||||
+# The statement|command finished with ER_ILLEGAL_HA_CREATE_OPTION.
|
||||
+# ALTER TABLE or the mix could be unsupported|malfunctioning, or the problem was caused by previous errors.
|
||||
+# You can change the engine code, or create an rdiff, or disable the test by adding it to disabled.def.
|
||||
+# Further in this test, the message might sometimes be suppressed; a part of the test might be skipped.
|
||||
+# Also, this problem may cause a chain effect (more errors of different kinds in the test).
|
||||
+# -------------------------------------------
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL,
|
||||
`b` char(8) DEFAULT NULL
|
||||
-) ENGINE=<STORAGE_ENGINE> DEFAULT CHARSET=latin1 ROW_FORMAT=FIXED
|
||||
+) ENGINE=<STORAGE_ENGINE> DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC
|
||||
ALTER TABLE t1 ROW_FORMAT=PAGE;
|
||||
+ERROR HY000: Table storage engine '<STORAGE_ENGINE>' does not support the create option 'ROW_TYPE'
|
||||
+# ERROR: Statement ended with errno 1478, errname ER_ILLEGAL_HA_CREATE_OPTION (expected to succeed)
|
||||
+# ------------ UNEXPECTED RESULT ------------
|
||||
+# [ ALTER TABLE t1 ROW_FORMAT=PAGE ]
|
||||
+# The statement|command finished with ER_ILLEGAL_HA_CREATE_OPTION.
|
||||
+# ALTER TABLE or the mix could be unsupported|malfunctioning, or the problem was caused by previous errors.
|
||||
+# You can change the engine code, or create an rdiff, or disable the test by adding it to disabled.def.
|
||||
+# Further in this test, the message might sometimes be suppressed; a part of the test might be skipped.
|
||||
+# Also, this problem may cause a chain effect (more errors of different kinds in the test).
|
||||
+# -------------------------------------------
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL,
|
||||
`b` char(8) DEFAULT NULL
|
||||
-) ENGINE=<STORAGE_ENGINE> DEFAULT CHARSET=latin1 ROW_FORMAT=PAGE
|
||||
+) ENGINE=<STORAGE_ENGINE> DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC
|
||||
ALTER TABLE t1 ROW_FORMAT=COMPACT;
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
|
|
|
@ -1,712 +0,0 @@
|
|||
--- suite/storage_engine/type_spatial_indexes.result 2013-08-05 18:08:49.000000000 +0400
|
||||
+++ suite/storage_engine/type_spatial_indexes.reject 2013-08-05 18:25:24.000000000 +0400
|
||||
@@ -702,699 +702,15 @@
|
||||
DROP DATABASE IF EXISTS gis_ogs;
|
||||
CREATE DATABASE gis_ogs;
|
||||
CREATE TABLE gis_point (fid <INT_COLUMN>, g POINT NOT NULL, SPATIAL INDEX(g)) ENGINE=<STORAGE_ENGINE> <CUSTOM_TABLE_OPTIONS>;
|
||||
-CREATE TABLE gis_line (fid <INT_COLUMN>, g LINESTRING NOT NULL, SPATIAL INDEX(g)) ENGINE=<STORAGE_ENGINE> <CUSTOM_TABLE_OPTIONS>;
|
||||
-CREATE TABLE gis_polygon (fid <INT_COLUMN>, g POLYGON NOT NULL, SPATIAL INDEX(g)) ENGINE=<STORAGE_ENGINE> <CUSTOM_TABLE_OPTIONS>;
|
||||
-CREATE TABLE gis_multi_point (fid <INT_COLUMN>, g MULTIPOINT NOT NULL, SPATIAL INDEX(g)) ENGINE=<STORAGE_ENGINE> <CUSTOM_TABLE_OPTIONS>;
|
||||
-CREATE TABLE gis_multi_line (fid <INT_COLUMN>, g MULTILINESTRING NOT NULL, SPATIAL INDEX(g)) ENGINE=<STORAGE_ENGINE> <CUSTOM_TABLE_OPTIONS>;
|
||||
-CREATE TABLE gis_multi_polygon (fid <INT_COLUMN>, g MULTIPOLYGON NOT NULL, SPATIAL INDEX(g)) ENGINE=<STORAGE_ENGINE> <CUSTOM_TABLE_OPTIONS>;
|
||||
-CREATE TABLE gis_geometrycollection (fid <INT_COLUMN>, g GEOMETRYCOLLECTION NOT NULL, SPATIAL INDEX(g)) ENGINE=<STORAGE_ENGINE> <CUSTOM_TABLE_OPTIONS>;
|
||||
-CREATE TABLE gis_geometry (fid <INT_COLUMN>, g GEOMETRY NOT NULL) ENGINE=<STORAGE_ENGINE> <CUSTOM_TABLE_OPTIONS>;
|
||||
-USE gis_ogs;
|
||||
-CREATE TABLE lakes (fid INT <CUSTOM_COL_OPTIONS>,
|
||||
-name CHAR(64) <CUSTOM_COL_OPTIONS>,
|
||||
-shore POLYGON NOT NULL, SPATIAL INDEX s(shore)) ENGINE=<STORAGE_ENGINE> <CUSTOM_TABLE_OPTIONS>;
|
||||
-CREATE TABLE road_segments (fid INT <CUSTOM_COL_OPTIONS>,
|
||||
-name CHAR(64) <CUSTOM_COL_OPTIONS>,
|
||||
-aliases CHAR(64) <CUSTOM_COL_OPTIONS>,
|
||||
-num_lanes INT <CUSTOM_COL_OPTIONS>,
|
||||
-centerline LINESTRING NOT NULL, SPATIAL INDEX c(centerline)) ENGINE=<STORAGE_ENGINE> <CUSTOM_TABLE_OPTIONS>;
|
||||
-CREATE TABLE divided_routes (fid INT <CUSTOM_COL_OPTIONS>,
|
||||
-name CHAR(64) <CUSTOM_COL_OPTIONS>,
|
||||
-num_lanes INT <CUSTOM_COL_OPTIONS>,
|
||||
-centerlines MULTILINESTRING NOT NULL, SPATIAL INDEX c(centerlines)) ENGINE=<STORAGE_ENGINE> <CUSTOM_TABLE_OPTIONS>;
|
||||
-CREATE TABLE forests (fid INT <CUSTOM_COL_OPTIONS>,
|
||||
-name CHAR(64) <CUSTOM_COL_OPTIONS>,
|
||||
-boundary MULTIPOLYGON NOT NULL, SPATIAL INDEX b(boundary)) ENGINE=<STORAGE_ENGINE> <CUSTOM_TABLE_OPTIONS>;
|
||||
-CREATE TABLE bridges (fid INT <CUSTOM_COL_OPTIONS>,
|
||||
-name CHAR(64) <CUSTOM_COL_OPTIONS>,
|
||||
-position POINT NOT NULL, SPATIAL INDEX p(position)) ENGINE=<STORAGE_ENGINE> <CUSTOM_TABLE_OPTIONS>;
|
||||
-CREATE TABLE streams (fid INT <CUSTOM_COL_OPTIONS>,
|
||||
-name CHAR(64) <CUSTOM_COL_OPTIONS>,
|
||||
-centerline LINESTRING NOT NULL, SPATIAL INDEX c(centerline)) ENGINE=<STORAGE_ENGINE> <CUSTOM_TABLE_OPTIONS>;
|
||||
-CREATE TABLE buildings (fid INT <CUSTOM_COL_OPTIONS>,
|
||||
-name CHAR(64) <CUSTOM_COL_OPTIONS>,
|
||||
-position POINT NOT NULL,
|
||||
-footprint POLYGON NOT NULL, SPATIAL INDEX p(position), SPATIAL INDEX f(footprint)) ENGINE=<STORAGE_ENGINE> <CUSTOM_TABLE_OPTIONS>;
|
||||
-CREATE TABLE ponds (fid INT <CUSTOM_COL_OPTIONS>,
|
||||
-name CHAR(64) <CUSTOM_COL_OPTIONS>,
|
||||
-type CHAR(64) <CUSTOM_COL_OPTIONS>,
|
||||
-shores MULTIPOLYGON NOT NULL, SPATIAL INDEX s(shores)) ENGINE=<STORAGE_ENGINE> <CUSTOM_TABLE_OPTIONS>;
|
||||
-CREATE TABLE named_places (fid INT <CUSTOM_COL_OPTIONS>,
|
||||
-name CHAR(64) <CUSTOM_COL_OPTIONS>,
|
||||
-boundary POLYGON NOT NULL, SPATIAL INDEX b(boundary)) ENGINE=<STORAGE_ENGINE> <CUSTOM_TABLE_OPTIONS>;
|
||||
-CREATE TABLE map_neatlines (fid INT <CUSTOM_COL_OPTIONS>,
|
||||
-neatline POLYGON NOT NULL, SPATIAL INDEX n(neatline)) ENGINE=<STORAGE_ENGINE> <CUSTOM_TABLE_OPTIONS>;
|
||||
-USE test;
|
||||
-SHOW FIELDS FROM gis_point;
|
||||
-Field Type Null Key Default Extra
|
||||
-fid int(11) YES NULL
|
||||
-g point NO MUL NULL
|
||||
-SHOW FIELDS FROM gis_line;
|
||||
-Field Type Null Key Default Extra
|
||||
-fid int(11) YES NULL
|
||||
-g linestring NO MUL NULL
|
||||
-SHOW FIELDS FROM gis_polygon;
|
||||
-Field Type Null Key Default Extra
|
||||
-fid int(11) YES NULL
|
||||
-g polygon NO MUL NULL
|
||||
-SHOW FIELDS FROM gis_multi_point;
|
||||
-Field Type Null Key Default Extra
|
||||
-fid int(11) YES NULL
|
||||
-g multipoint NO MUL NULL
|
||||
-SHOW FIELDS FROM gis_multi_line;
|
||||
-Field Type Null Key Default Extra
|
||||
-fid int(11) YES NULL
|
||||
-g multilinestring NO MUL NULL
|
||||
-SHOW FIELDS FROM gis_multi_polygon;
|
||||
-Field Type Null Key Default Extra
|
||||
-fid int(11) YES NULL
|
||||
-g multipolygon NO MUL NULL
|
||||
-SHOW FIELDS FROM gis_geometrycollection;
|
||||
-Field Type Null Key Default Extra
|
||||
-fid int(11) YES NULL
|
||||
-g geometrycollection NO MUL NULL
|
||||
-SHOW FIELDS FROM gis_geometry;
|
||||
-Field Type Null Key Default Extra
|
||||
-fid int(11) YES NULL
|
||||
-g geometry NO NULL
|
||||
-INSERT INTO gis_point (fid,g) VALUES
|
||||
-(101, PointFromText('POINT(10 10)')),
|
||||
-(102, PointFromText('POINT(20 10)')),
|
||||
-(103, PointFromText('POINT(20 20)')),
|
||||
-(104, PointFromWKB(AsWKB(PointFromText('POINT(10 20)'))));
|
||||
-INSERT INTO gis_line (fid,g) VALUES
|
||||
-(105, LineFromText('LINESTRING(0 0,0 10,10 0)')),
|
||||
-(106, LineStringFromText('LINESTRING(10 10,20 10,20 20,10 20,10 10)')),
|
||||
-(107, LineStringFromWKB(AsWKB(LineString(Point(10, 10), Point(40, 10)))));
|
||||
-INSERT INTO gis_polygon (fid,g) VALUES
|
||||
-(108, PolygonFromText('POLYGON((10 10,20 10,20 20,10 20,10 10))')),
|
||||
-(109, PolyFromText('POLYGON((0 0,50 0,50 50,0 50,0 0), (10 10,20 10,20 20,10 20,10 10))')),
|
||||
-(110, PolyFromWKB(AsWKB(Polygon(LineString(Point(0, 0), Point(30, 0), Point(30, 30), Point(0, 0))))));
|
||||
-INSERT INTO gis_multi_point (fid,g) VALUES
|
||||
-(111, MultiPointFromText('MULTIPOINT(0 0,10 10,10 20,20 20)')),
|
||||
-(112, MPointFromText('MULTIPOINT(1 1,11 11,11 21,21 21)')),
|
||||
-(113, MPointFromWKB(AsWKB(MultiPoint(Point(3, 6), Point(4, 10)))));
|
||||
-INSERT INTO gis_multi_line (fid,g) VALUES
|
||||
-(114, MultiLineStringFromText('MULTILINESTRING((10 48,10 21,10 0),(16 0,16 23,16 48))')),
|
||||
-(115, MLineFromText('MULTILINESTRING((10 48,10 21,10 0))')),
|
||||
-(116, MLineFromWKB(AsWKB(MultiLineString(LineString(Point(1, 2), Point(3, 5)), LineString(Point(2, 5), Point(5, 8), Point(21, 7))))));
|
||||
-INSERT INTO gis_multi_polygon (fid,g) VALUES
|
||||
-(117, MultiPolygonFromText('MULTIPOLYGON(((28 26,28 0,84 0,84 42,28 26),(52 18,66 23,73 9,48 6,52 18)),((59 18,67 18,67 13,59 13,59 18)))')),
|
||||
-(118, MPolyFromText('MULTIPOLYGON(((28 26,28 0,84 0,84 42,28 26),(52 18,66 23,73 9,48 6,52 18)),((59 18,67 18,67 13,59 13,59 18)))')),
|
||||
-(119, MPolyFromWKB(AsWKB(MultiPolygon(Polygon(LineString(Point(0, 3), Point(3, 3), Point(3, 0), Point(0, 3)))))));
|
||||
-INSERT INTO gis_geometrycollection (fid,g) VALUES
|
||||
-(120, GeomCollFromText('GEOMETRYCOLLECTION(POINT(0 0), LINESTRING(0 0,10 10))')),
|
||||
-(121, GeometryFromWKB(AsWKB(GeometryCollection(Point(44, 6), LineString(Point(3, 6), Point(7, 9)))))),
|
||||
-(122, GeomFromText('GeometryCollection()')),
|
||||
-(123, GeomFromText('GeometryCollection EMPTY'));
|
||||
-INSERT into gis_geometry (fid,g) SELECT fid,g FROM gis_point;
|
||||
-INSERT into gis_geometry (fid,g) SELECT fid,g FROM gis_line;
|
||||
-INSERT into gis_geometry (fid,g) SELECT fid,g FROM gis_polygon;
|
||||
-INSERT into gis_geometry (fid,g) SELECT fid,g FROM gis_multi_point;
|
||||
-INSERT into gis_geometry (fid,g) SELECT fid,g FROM gis_multi_line;
|
||||
-INSERT into gis_geometry (fid,g) SELECT fid,g FROM gis_multi_polygon;
|
||||
-INSERT into gis_geometry (fid,g) SELECT fid,g FROM gis_geometrycollection;
|
||||
-SELECT fid, AsText(g) FROM gis_point;
|
||||
-fid AsText(g)
|
||||
-101 POINT(10 10)
|
||||
-102 POINT(20 10)
|
||||
-103 POINT(20 20)
|
||||
-104 POINT(10 20)
|
||||
-SELECT fid, AsText(g) FROM gis_line;
|
||||
-fid AsText(g)
|
||||
-105 LINESTRING(0 0,0 10,10 0)
|
||||
-106 LINESTRING(10 10,20 10,20 20,10 20,10 10)
|
||||
-107 LINESTRING(10 10,40 10)
|
||||
-SELECT fid, AsText(g) FROM gis_polygon;
|
||||
-fid AsText(g)
|
||||
-108 POLYGON((10 10,20 10,20 20,10 20,10 10))
|
||||
-109 POLYGON((0 0,50 0,50 50,0 50,0 0),(10 10,20 10,20 20,10 20,10 10))
|
||||
-110 POLYGON((0 0,30 0,30 30,0 0))
|
||||
-SELECT fid, AsText(g) FROM gis_multi_point;
|
||||
-fid AsText(g)
|
||||
-111 MULTIPOINT(0 0,10 10,10 20,20 20)
|
||||
-112 MULTIPOINT(1 1,11 11,11 21,21 21)
|
||||
-113 MULTIPOINT(3 6,4 10)
|
||||
-SELECT fid, AsText(g) FROM gis_multi_line;
|
||||
-fid AsText(g)
|
||||
-114 MULTILINESTRING((10 48,10 21,10 0),(16 0,16 23,16 48))
|
||||
-115 MULTILINESTRING((10 48,10 21,10 0))
|
||||
-116 MULTILINESTRING((1 2,3 5),(2 5,5 8,21 7))
|
||||
-SELECT fid, AsText(g) FROM gis_multi_polygon;
|
||||
-fid AsText(g)
|
||||
-117 MULTIPOLYGON(((28 26,28 0,84 0,84 42,28 26),(52 18,66 23,73 9,48 6,52 18)),((59 18,67 18,67 13,59 13,59 18)))
|
||||
-118 MULTIPOLYGON(((28 26,28 0,84 0,84 42,28 26),(52 18,66 23,73 9,48 6,52 18)),((59 18,67 18,67 13,59 13,59 18)))
|
||||
-119 MULTIPOLYGON(((0 3,3 3,3 0,0 3)))
|
||||
-SELECT fid, AsText(g) FROM gis_geometrycollection;
|
||||
-fid AsText(g)
|
||||
-120 GEOMETRYCOLLECTION(POINT(0 0),LINESTRING(0 0,10 10))
|
||||
-121 GEOMETRYCOLLECTION(POINT(44 6),LINESTRING(3 6,7 9))
|
||||
-122 GEOMETRYCOLLECTION EMPTY
|
||||
-123 GEOMETRYCOLLECTION EMPTY
|
||||
-SELECT fid, AsText(g) FROM gis_geometry;
|
||||
-fid AsText(g)
|
||||
-101 POINT(10 10)
|
||||
-102 POINT(20 10)
|
||||
-103 POINT(20 20)
|
||||
-104 POINT(10 20)
|
||||
-105 LINESTRING(0 0,0 10,10 0)
|
||||
-106 LINESTRING(10 10,20 10,20 20,10 20,10 10)
|
||||
-107 LINESTRING(10 10,40 10)
|
||||
-108 POLYGON((10 10,20 10,20 20,10 20,10 10))
|
||||
-109 POLYGON((0 0,50 0,50 50,0 50,0 0),(10 10,20 10,20 20,10 20,10 10))
|
||||
-110 POLYGON((0 0,30 0,30 30,0 0))
|
||||
-111 MULTIPOINT(0 0,10 10,10 20,20 20)
|
||||
-112 MULTIPOINT(1 1,11 11,11 21,21 21)
|
||||
-113 MULTIPOINT(3 6,4 10)
|
||||
-114 MULTILINESTRING((10 48,10 21,10 0),(16 0,16 23,16 48))
|
||||
-115 MULTILINESTRING((10 48,10 21,10 0))
|
||||
-116 MULTILINESTRING((1 2,3 5),(2 5,5 8,21 7))
|
||||
-117 MULTIPOLYGON(((28 26,28 0,84 0,84 42,28 26),(52 18,66 23,73 9,48 6,52 18)),((59 18,67 18,67 13,59 13,59 18)))
|
||||
-118 MULTIPOLYGON(((28 26,28 0,84 0,84 42,28 26),(52 18,66 23,73 9,48 6,52 18)),((59 18,67 18,67 13,59 13,59 18)))
|
||||
-119 MULTIPOLYGON(((0 3,3 3,3 0,0 3)))
|
||||
-120 GEOMETRYCOLLECTION(POINT(0 0),LINESTRING(0 0,10 10))
|
||||
-121 GEOMETRYCOLLECTION(POINT(44 6),LINESTRING(3 6,7 9))
|
||||
-122 GEOMETRYCOLLECTION EMPTY
|
||||
-123 GEOMETRYCOLLECTION EMPTY
|
||||
-SELECT fid, Dimension(g) FROM gis_geometry;
|
||||
-fid Dimension(g)
|
||||
-101 0
|
||||
-102 0
|
||||
-103 0
|
||||
-104 0
|
||||
-105 1
|
||||
-106 1
|
||||
-107 1
|
||||
-108 2
|
||||
-109 2
|
||||
-110 2
|
||||
-111 0
|
||||
-112 0
|
||||
-113 0
|
||||
-114 1
|
||||
-115 1
|
||||
-116 1
|
||||
-117 2
|
||||
-118 2
|
||||
-119 2
|
||||
-120 1
|
||||
-121 1
|
||||
-122 0
|
||||
-123 0
|
||||
-SELECT fid, GeometryType(g) FROM gis_geometry;
|
||||
-fid GeometryType(g)
|
||||
-101 POINT
|
||||
-102 POINT
|
||||
-103 POINT
|
||||
-104 POINT
|
||||
-105 LINESTRING
|
||||
-106 LINESTRING
|
||||
-107 LINESTRING
|
||||
-108 POLYGON
|
||||
-109 POLYGON
|
||||
-110 POLYGON
|
||||
-111 MULTIPOINT
|
||||
-112 MULTIPOINT
|
||||
-113 MULTIPOINT
|
||||
-114 MULTILINESTRING
|
||||
-115 MULTILINESTRING
|
||||
-116 MULTILINESTRING
|
||||
-117 MULTIPOLYGON
|
||||
-118 MULTIPOLYGON
|
||||
-119 MULTIPOLYGON
|
||||
-120 GEOMETRYCOLLECTION
|
||||
-121 GEOMETRYCOLLECTION
|
||||
-122 GEOMETRYCOLLECTION
|
||||
-123 GEOMETRYCOLLECTION
|
||||
-SELECT fid, IsEmpty(g) FROM gis_geometry;
|
||||
-fid IsEmpty(g)
|
||||
-101 0
|
||||
-102 0
|
||||
-103 0
|
||||
-104 0
|
||||
-105 0
|
||||
-106 0
|
||||
-107 0
|
||||
-108 0
|
||||
-109 0
|
||||
-110 0
|
||||
-111 0
|
||||
-112 0
|
||||
-113 0
|
||||
-114 0
|
||||
-115 0
|
||||
-116 0
|
||||
-117 0
|
||||
-118 0
|
||||
-119 0
|
||||
-120 0
|
||||
-121 0
|
||||
-122 0
|
||||
-123 0
|
||||
-SELECT fid, AsText(Envelope(g)) FROM gis_geometry;
|
||||
-fid AsText(Envelope(g))
|
||||
-101 POLYGON((10 10,10 10,10 10,10 10,10 10))
|
||||
-102 POLYGON((20 10,20 10,20 10,20 10,20 10))
|
||||
-103 POLYGON((20 20,20 20,20 20,20 20,20 20))
|
||||
-104 POLYGON((10 20,10 20,10 20,10 20,10 20))
|
||||
-105 POLYGON((0 0,10 0,10 10,0 10,0 0))
|
||||
-106 POLYGON((10 10,20 10,20 20,10 20,10 10))
|
||||
-107 POLYGON((10 10,40 10,40 10,10 10,10 10))
|
||||
-108 POLYGON((10 10,20 10,20 20,10 20,10 10))
|
||||
-109 POLYGON((0 0,50 0,50 50,0 50,0 0))
|
||||
-110 POLYGON((0 0,30 0,30 30,0 30,0 0))
|
||||
-111 POLYGON((0 0,20 0,20 20,0 20,0 0))
|
||||
-112 POLYGON((1 1,21 1,21 21,1 21,1 1))
|
||||
-113 POLYGON((3 6,4 6,4 10,3 10,3 6))
|
||||
-114 POLYGON((10 0,16 0,16 48,10 48,10 0))
|
||||
-115 POLYGON((10 0,10 0,10 48,10 48,10 0))
|
||||
-116 POLYGON((1 2,21 2,21 8,1 8,1 2))
|
||||
-117 POLYGON((28 0,84 0,84 42,28 42,28 0))
|
||||
-118 POLYGON((28 0,84 0,84 42,28 42,28 0))
|
||||
-119 POLYGON((0 0,3 0,3 3,0 3,0 0))
|
||||
-120 POLYGON((0 0,10 0,10 10,0 10,0 0))
|
||||
-121 POLYGON((3 6,44 6,44 9,3 9,3 6))
|
||||
-122 GEOMETRYCOLLECTION EMPTY
|
||||
-123 GEOMETRYCOLLECTION EMPTY
|
||||
-SELECT fid, X(g) FROM gis_point;
|
||||
-fid X(g)
|
||||
-101 10
|
||||
-102 20
|
||||
-103 20
|
||||
-104 10
|
||||
-SELECT fid, Y(g) FROM gis_point;
|
||||
-fid Y(g)
|
||||
-101 10
|
||||
-102 10
|
||||
-103 20
|
||||
-104 20
|
||||
-SELECT fid, AsText(StartPoint(g)) FROM gis_line;
|
||||
-fid AsText(StartPoint(g))
|
||||
-105 POINT(0 0)
|
||||
-106 POINT(10 10)
|
||||
-107 POINT(10 10)
|
||||
-SELECT fid, AsText(EndPoint(g)) FROM gis_line;
|
||||
-fid AsText(EndPoint(g))
|
||||
-105 POINT(10 0)
|
||||
-106 POINT(10 10)
|
||||
-107 POINT(40 10)
|
||||
-SELECT fid, GLength(g) FROM gis_line;
|
||||
-fid GLength(g)
|
||||
-105 24.14213562373095
|
||||
-106 40
|
||||
-107 30
|
||||
-SELECT fid, NumPoints(g) FROM gis_line;
|
||||
-fid NumPoints(g)
|
||||
-105 3
|
||||
-106 5
|
||||
-107 2
|
||||
-SELECT fid, AsText(PointN(g, 2)) FROM gis_line;
|
||||
-fid AsText(PointN(g, 2))
|
||||
-105 POINT(0 10)
|
||||
-106 POINT(20 10)
|
||||
-107 POINT(40 10)
|
||||
-SELECT fid, IsClosed(g) FROM gis_line;
|
||||
-fid IsClosed(g)
|
||||
-105 0
|
||||
-106 1
|
||||
-107 0
|
||||
-SELECT fid, AsText(Centroid(g)) FROM gis_polygon;
|
||||
-fid AsText(Centroid(g))
|
||||
-108 POINT(15 15)
|
||||
-109 POINT(25.416666666666668 25.416666666666668)
|
||||
-110 POINT(20 10)
|
||||
-SELECT fid, Area(g) FROM gis_polygon;
|
||||
-fid Area(g)
|
||||
-108 100
|
||||
-109 2400
|
||||
-110 450
|
||||
-SELECT fid, AsText(ExteriorRing(g)) FROM gis_polygon;
|
||||
-fid AsText(ExteriorRing(g))
|
||||
-108 LINESTRING(10 10,20 10,20 20,10 20,10 10)
|
||||
-109 LINESTRING(0 0,50 0,50 50,0 50,0 0)
|
||||
-110 LINESTRING(0 0,30 0,30 30,0 0)
|
||||
-SELECT fid, NumInteriorRings(g) FROM gis_polygon;
|
||||
-fid NumInteriorRings(g)
|
||||
-108 0
|
||||
-109 1
|
||||
-110 0
|
||||
-SELECT fid, AsText(InteriorRingN(g, 1)) FROM gis_polygon;
|
||||
-fid AsText(InteriorRingN(g, 1))
|
||||
-108 NULL
|
||||
-109 LINESTRING(10 10,20 10,20 20,10 20,10 10)
|
||||
-110 NULL
|
||||
-SELECT fid, IsClosed(g) FROM gis_multi_line;
|
||||
-fid IsClosed(g)
|
||||
-114 0
|
||||
-115 0
|
||||
-116 0
|
||||
-SELECT fid, AsText(Centroid(g)) FROM gis_multi_polygon;
|
||||
-fid AsText(Centroid(g))
|
||||
-117 POINT(55.58852775304245 17.426536064113982)
|
||||
-118 POINT(55.58852775304245 17.426536064113982)
|
||||
-119 POINT(2 2)
|
||||
-SELECT fid, Area(g) FROM gis_multi_polygon;
|
||||
-fid Area(g)
|
||||
-117 1684.5
|
||||
-118 1684.5
|
||||
-119 4.5
|
||||
-SELECT fid, NumGeometries(g) from gis_multi_point;
|
||||
-fid NumGeometries(g)
|
||||
-111 4
|
||||
-112 4
|
||||
-113 2
|
||||
-SELECT fid, NumGeometries(g) from gis_multi_line;
|
||||
-fid NumGeometries(g)
|
||||
-114 2
|
||||
-115 1
|
||||
-116 2
|
||||
-SELECT fid, NumGeometries(g) from gis_multi_polygon;
|
||||
-fid NumGeometries(g)
|
||||
-117 2
|
||||
-118 2
|
||||
-119 1
|
||||
-SELECT fid, NumGeometries(g) from gis_geometrycollection;
|
||||
-fid NumGeometries(g)
|
||||
-120 2
|
||||
-121 2
|
||||
-122 0
|
||||
-123 0
|
||||
-SELECT fid, AsText(GeometryN(g, 2)) from gis_multi_point;
|
||||
-fid AsText(GeometryN(g, 2))
|
||||
-111 POINT(10 10)
|
||||
-112 POINT(11 11)
|
||||
-113 POINT(4 10)
|
||||
-SELECT fid, AsText(GeometryN(g, 2)) from gis_multi_line;
|
||||
-fid AsText(GeometryN(g, 2))
|
||||
-114 LINESTRING(16 0,16 23,16 48)
|
||||
-115 NULL
|
||||
-116 LINESTRING(2 5,5 8,21 7)
|
||||
-SELECT fid, AsText(GeometryN(g, 2)) from gis_multi_polygon;
|
||||
-fid AsText(GeometryN(g, 2))
|
||||
-117 POLYGON((59 18,67 18,67 13,59 13,59 18))
|
||||
-118 POLYGON((59 18,67 18,67 13,59 13,59 18))
|
||||
-119 NULL
|
||||
-SELECT fid, AsText(GeometryN(g, 2)) from gis_geometrycollection;
|
||||
-fid AsText(GeometryN(g, 2))
|
||||
-120 LINESTRING(0 0,10 10)
|
||||
-121 LINESTRING(3 6,7 9)
|
||||
-122 NULL
|
||||
-123 NULL
|
||||
-SELECT fid, AsText(GeometryN(g, 1)) from gis_geometrycollection;
|
||||
-fid AsText(GeometryN(g, 1))
|
||||
-120 POINT(0 0)
|
||||
-121 POINT(44 6)
|
||||
-122 NULL
|
||||
-123 NULL
|
||||
-SELECT g1.fid as first, g2.fid as second,
|
||||
-Within(g1.g, g2.g) as w, Contains(g1.g, g2.g) as c, Overlaps(g1.g, g2.g) as o,
|
||||
-Equals(g1.g, g2.g) as e, Disjoint(g1.g, g2.g) as d, Touches(g1.g, g2.g) as t,
|
||||
-Intersects(g1.g, g2.g) as i, Crosses(g1.g, g2.g) as r
|
||||
-FROM gis_geometrycollection g1, gis_geometrycollection g2 ORDER BY first, second;
|
||||
-first second w c o e d t i r
|
||||
-120 120 1 1 0 1 0 0 1 0
|
||||
-120 121 0 0 1 0 0 0 1 0
|
||||
-120 122 NULL NULL NULL NULL NULL NULL NULL NULL
|
||||
-120 123 NULL NULL NULL NULL NULL NULL NULL NULL
|
||||
-121 120 0 0 1 0 0 0 1 0
|
||||
-121 121 1 1 0 1 0 0 1 0
|
||||
-121 122 NULL NULL NULL NULL NULL NULL NULL NULL
|
||||
-121 123 NULL NULL NULL NULL NULL NULL NULL NULL
|
||||
-122 120 NULL NULL NULL NULL NULL NULL NULL NULL
|
||||
-122 121 NULL NULL NULL NULL NULL NULL NULL NULL
|
||||
-122 122 NULL NULL NULL NULL NULL NULL NULL NULL
|
||||
-122 123 NULL NULL NULL NULL NULL NULL NULL NULL
|
||||
-123 120 NULL NULL NULL NULL NULL NULL NULL NULL
|
||||
-123 121 NULL NULL NULL NULL NULL NULL NULL NULL
|
||||
-123 122 NULL NULL NULL NULL NULL NULL NULL NULL
|
||||
-123 123 NULL NULL NULL NULL NULL NULL NULL NULL
|
||||
-DROP TABLE gis_point, gis_line, gis_polygon, gis_multi_point, gis_multi_line, gis_multi_polygon, gis_geometrycollection, gis_geometry;
|
||||
-USE gis_ogs;
|
||||
-# Lakes
|
||||
-INSERT INTO lakes (fid,name,shore) VALUES (
|
||||
-101, 'BLUE LAKE',
|
||||
-PolyFromText(
|
||||
-'POLYGON(
|
||||
- (52 18,66 23,73 9,48 6,52 18),
|
||||
- (59 18,67 18,67 13,59 13,59 18)
|
||||
- )',
|
||||
-101));
|
||||
-# Road Segments
|
||||
-INSERT INTO road_segments (fid,name,aliases,num_lanes,centerline) VALUES(102, 'Route 5', NULL, 2,
|
||||
-LineFromText(
|
||||
-'LINESTRING( 0 18, 10 21, 16 23, 28 26, 44 31 )' ,101));
|
||||
-INSERT INTO road_segments (fid,name,aliases,num_lanes,centerline) VALUES(103, 'Route 5', 'Main Street', 4,
|
||||
-LineFromText(
|
||||
-'LINESTRING( 44 31, 56 34, 70 38 )' ,101));
|
||||
-INSERT INTO road_segments (fid,name,aliases,num_lanes,centerline) VALUES(104, 'Route 5', NULL, 2,
|
||||
-LineFromText(
|
||||
-'LINESTRING( 70 38, 72 48 )' ,101));
|
||||
-INSERT INTO road_segments (fid,name,aliases,num_lanes,centerline) VALUES(105, 'Main Street', NULL, 4,
|
||||
-LineFromText(
|
||||
-'LINESTRING( 70 38, 84 42 )' ,101));
|
||||
-INSERT INTO road_segments (fid,name,aliases,num_lanes,centerline) VALUES(106, 'Dirt Road by Green Forest', NULL,
|
||||
-1,
|
||||
-LineFromText(
|
||||
-'LINESTRING( 28 26, 28 0 )',101));
|
||||
-# DividedRoutes
|
||||
-INSERT INTO divided_routes (fid,name,num_lanes,centerlines) VALUES(119, 'Route 75', 4,
|
||||
-MLineFromText(
|
||||
-'MULTILINESTRING((10 48,10 21,10 0),
|
||||
- (16 0,16 23,16 48))', 101));
|
||||
-# Forests
|
||||
-INSERT INTO forests (fid,name,boundary) VALUES(109, 'Green Forest',
|
||||
-MPolyFromText(
|
||||
-'MULTIPOLYGON(((28 26,28 0,84 0,84 42,28 26),
|
||||
- (52 18,66 23,73 9,48 6,52 18)),((59 18,67 18,67 13,59 13,59 18)))',
|
||||
-101));
|
||||
-# Bridges
|
||||
-INSERT INTO bridges (fid,name,position) VALUES(110, 'Cam Bridge', PointFromText(
|
||||
-'POINT( 44 31 )', 101));
|
||||
-# Streams
|
||||
-INSERT INTO streams (fid,name,centerline) VALUES(111, 'Cam Stream',
|
||||
-LineFromText(
|
||||
-'LINESTRING( 38 48, 44 41, 41 36, 44 31, 52 18 )', 101));
|
||||
-INSERT INTO streams (fid,name,centerline) VALUES(112, NULL,
|
||||
-LineFromText(
|
||||
-'LINESTRING( 76 0, 78 4, 73 9 )', 101));
|
||||
-# Buildings
|
||||
-INSERT INTO buildings (fid,name,position,footprint) VALUES(113, '123 Main Street',
|
||||
-PointFromText(
|
||||
-'POINT( 52 30 )', 101),
|
||||
-PolyFromText(
|
||||
-'POLYGON( ( 50 31, 54 31, 54 29, 50 29, 50 31) )', 101));
|
||||
-INSERT INTO buildings (fid,name,position,footprint) VALUES(114, '215 Main Street',
|
||||
-PointFromText(
|
||||
-'POINT( 64 33 )', 101),
|
||||
-PolyFromText(
|
||||
-'POLYGON( ( 66 34, 62 34, 62 32, 66 32, 66 34) )', 101));
|
||||
-# Ponds
|
||||
-INSERT INTO ponds (fid,name,type,shores) VALUES(120, NULL, 'Stock Pond',
|
||||
-MPolyFromText(
|
||||
-'MULTIPOLYGON( ( ( 24 44, 22 42, 24 40, 24 44) ),
|
||||
- ( ( 26 44, 26 40, 28 42, 26 44) ) )', 101));
|
||||
-# Named Places
|
||||
-INSERT INTO named_places (fid,name,boundary) VALUES(117, 'Ashton',
|
||||
-PolyFromText(
|
||||
-'POLYGON( ( 62 48, 84 48, 84 30, 56 30, 56 34, 62 48) )', 101));
|
||||
-INSERT INTO named_places (fid,name,boundary) VALUES(118, 'Goose Island',
|
||||
-PolyFromText(
|
||||
-'POLYGON( ( 67 13, 67 18, 59 18, 59 13, 67 13) )', 101));
|
||||
-# Map Neatlines
|
||||
-INSERT INTO map_neatlines (fid,neatline) VALUES(115,
|
||||
-PolyFromText(
|
||||
-'POLYGON( ( 0 0, 0 48, 84 48, 84 0, 0 0 ) )', 101));
|
||||
-SELECT Dimension(shore)
|
||||
-FROM lakes
|
||||
-WHERE name = 'Blue Lake';
|
||||
-Dimension(shore)
|
||||
-2
|
||||
-SELECT GeometryType(centerlines)
|
||||
-FROM divided_routes
|
||||
-WHERE name = 'Route 75';
|
||||
-GeometryType(centerlines)
|
||||
-MULTILINESTRING
|
||||
-SELECT AsText(boundary)
|
||||
-FROM named_places
|
||||
-WHERE name = 'Goose Island';
|
||||
-AsText(boundary)
|
||||
-POLYGON((67 13,67 18,59 18,59 13,67 13))
|
||||
-SELECT AsText(PolyFromWKB(AsBinary(boundary),101))
|
||||
-FROM named_places
|
||||
-WHERE name = 'Goose Island';
|
||||
-AsText(PolyFromWKB(AsBinary(boundary),101))
|
||||
-POLYGON((67 13,67 18,59 18,59 13,67 13))
|
||||
-SELECT SRID(boundary)
|
||||
-FROM named_places
|
||||
-WHERE name = 'Goose Island';
|
||||
-SRID(boundary)
|
||||
-101
|
||||
-SELECT IsEmpty(centerline)
|
||||
-FROM road_segments
|
||||
-WHERE name = 'Route 5'
|
||||
-AND aliases = 'Main Street';
|
||||
-IsEmpty(centerline)
|
||||
-0
|
||||
-SELECT AsText(Envelope(boundary))
|
||||
-FROM named_places
|
||||
-WHERE name = 'Goose Island';
|
||||
-AsText(Envelope(boundary))
|
||||
-POLYGON((59 13,67 13,67 18,59 18,59 13))
|
||||
-SELECT X(position)
|
||||
-FROM bridges
|
||||
-WHERE name = 'Cam Bridge';
|
||||
-X(position)
|
||||
-44
|
||||
-SELECT Y(position)
|
||||
-FROM bridges
|
||||
-WHERE name = 'Cam Bridge';
|
||||
-Y(position)
|
||||
-31
|
||||
-SELECT AsText(StartPoint(centerline))
|
||||
-FROM road_segments
|
||||
-WHERE fid = 102;
|
||||
-AsText(StartPoint(centerline))
|
||||
-POINT(0 18)
|
||||
-SELECT AsText(EndPoint(centerline))
|
||||
-FROM road_segments
|
||||
-WHERE fid = 102;
|
||||
-AsText(EndPoint(centerline))
|
||||
-POINT(44 31)
|
||||
-SELECT GLength(centerline)
|
||||
-FROM road_segments
|
||||
-WHERE fid = 106;
|
||||
-GLength(centerline)
|
||||
-26
|
||||
-SELECT NumPoints(centerline)
|
||||
-FROM road_segments
|
||||
-WHERE fid = 102;
|
||||
-NumPoints(centerline)
|
||||
-5
|
||||
-SELECT AsText(PointN(centerline, 1))
|
||||
-FROM road_segments
|
||||
-WHERE fid = 102;
|
||||
-AsText(PointN(centerline, 1))
|
||||
-POINT(0 18)
|
||||
-SELECT AsText(Centroid(boundary))
|
||||
-FROM named_places
|
||||
-WHERE name = 'Goose Island';
|
||||
-AsText(Centroid(boundary))
|
||||
-POINT(63 15.5)
|
||||
-SELECT Area(boundary)
|
||||
-FROM named_places
|
||||
-WHERE name = 'Goose Island';
|
||||
-Area(boundary)
|
||||
-40
|
||||
-SELECT AsText(ExteriorRing(shore))
|
||||
-FROM lakes
|
||||
-WHERE name = 'Blue Lake';
|
||||
-AsText(ExteriorRing(shore))
|
||||
-LINESTRING(52 18,66 23,73 9,48 6,52 18)
|
||||
-SELECT NumInteriorRings(shore)
|
||||
-FROM lakes
|
||||
-WHERE name = 'Blue Lake';
|
||||
-NumInteriorRings(shore)
|
||||
-1
|
||||
-SELECT AsText(InteriorRingN(shore, 1))
|
||||
-FROM lakes
|
||||
-WHERE name = 'Blue Lake';
|
||||
-AsText(InteriorRingN(shore, 1))
|
||||
-LINESTRING(59 18,67 18,67 13,59 13,59 18)
|
||||
-SELECT NumGeometries(centerlines)
|
||||
-FROM divided_routes
|
||||
-WHERE name = 'Route 75';
|
||||
-NumGeometries(centerlines)
|
||||
-2
|
||||
-SELECT AsText(GeometryN(centerlines, 2))
|
||||
-FROM divided_routes
|
||||
-WHERE name = 'Route 75';
|
||||
-AsText(GeometryN(centerlines, 2))
|
||||
-LINESTRING(16 0,16 23,16 48)
|
||||
-SELECT IsClosed(centerlines)
|
||||
-FROM divided_routes
|
||||
-WHERE name = 'Route 75';
|
||||
-IsClosed(centerlines)
|
||||
-0
|
||||
-SELECT GLength(centerlines)
|
||||
-FROM divided_routes
|
||||
-WHERE name = 'Route 75';
|
||||
-GLength(centerlines)
|
||||
-96
|
||||
-SELECT AsText(Centroid(shores))
|
||||
-FROM ponds
|
||||
-WHERE fid = 120;
|
||||
-AsText(Centroid(shores))
|
||||
-POINT(25 42)
|
||||
-SELECT Area(shores)
|
||||
-FROM ponds
|
||||
-WHERE fid = 120;
|
||||
-Area(shores)
|
||||
-8
|
||||
-SELECT ST_Equals(boundary,
|
||||
-PolyFromText('POLYGON( ( 67 13, 67 18, 59 18, 59 13, 67 13) )',1))
|
||||
-FROM named_places
|
||||
-WHERE name = 'Goose Island';
|
||||
-ST_Equals(boundary,
|
||||
-PolyFromText('POLYGON( ( 67 13, 67 18, 59 18, 59 13, 67 13) )',1))
|
||||
-1
|
||||
-SELECT ST_Disjoint(centerlines, boundary)
|
||||
-FROM divided_routes, named_places
|
||||
-WHERE divided_routes.name = 'Route 75'
|
||||
-AND named_places.name = 'Ashton';
|
||||
-ST_Disjoint(centerlines, boundary)
|
||||
-1
|
||||
-SELECT ST_Touches(centerline, shore)
|
||||
-FROM streams, lakes
|
||||
-WHERE streams.name = 'Cam Stream'
|
||||
-AND lakes.name = 'Blue Lake';
|
||||
-ST_Touches(centerline, shore)
|
||||
-1
|
||||
-SELECT Crosses(road_segments.centerline, divided_routes.centerlines)
|
||||
-FROM road_segments, divided_routes
|
||||
-WHERE road_segments.fid = 102
|
||||
-AND divided_routes.name = 'Route 75';
|
||||
-Crosses(road_segments.centerline, divided_routes.centerlines)
|
||||
-1
|
||||
-SELECT ST_Intersects(road_segments.centerline, divided_routes.centerlines)
|
||||
-FROM road_segments, divided_routes
|
||||
-WHERE road_segments.fid = 102
|
||||
-AND divided_routes.name = 'Route 75';
|
||||
-ST_Intersects(road_segments.centerline, divided_routes.centerlines)
|
||||
-1
|
||||
-SELECT ST_Contains(forests.boundary, named_places.boundary)
|
||||
-FROM forests, named_places
|
||||
-WHERE forests.name = 'Green Forest'
|
||||
-AND named_places.name = 'Ashton';
|
||||
-ST_Contains(forests.boundary, named_places.boundary)
|
||||
-0
|
||||
-SELECT ST_Distance(position, boundary)
|
||||
-FROM bridges, named_places
|
||||
-WHERE bridges.name = 'Cam Bridge'
|
||||
-AND named_places.name = 'Ashton';
|
||||
-ST_Distance(position, boundary)
|
||||
-12
|
||||
-SELECT AsText(ST_Difference(named_places.boundary, forests.boundary))
|
||||
-FROM named_places, forests
|
||||
-WHERE named_places.name = 'Ashton'
|
||||
-AND forests.name = 'Green Forest';
|
||||
-AsText(ST_Difference(named_places.boundary, forests.boundary))
|
||||
-POLYGON((56 34,62 48,84 48,84 42,56 34))
|
||||
-SELECT AsText(ST_Union(shore, boundary))
|
||||
-FROM lakes, named_places
|
||||
-WHERE lakes.name = 'Blue Lake'
|
||||
-AND named_places.name = 'Goose Island';
|
||||
-AsText(ST_Union(shore, boundary))
|
||||
-POLYGON((48 6,52 18,66 23,73 9,48 6))
|
||||
-SELECT AsText(ST_SymDifference(shore, boundary))
|
||||
-FROM lakes, named_places
|
||||
-WHERE lakes.name = 'Blue Lake'
|
||||
-AND named_places.name = 'Ashton';
|
||||
-AsText(ST_SymDifference(shore, boundary))
|
||||
-MULTIPOLYGON(((48 6,52 18,66 23,73 9,48 6),(59 13,59 18,67 18,67 13,59 13)),((56 30,56 34,62 48,84 48,84 30,56 30)))
|
||||
-SELECT count(*)
|
||||
-FROM buildings, bridges
|
||||
-WHERE ST_Contains(ST_Buffer(bridges.position, 15.0), buildings.footprint) = 1;
|
||||
-count(*)
|
||||
-1
|
||||
+ERROR HY000: The storage engine <STORAGE_ENGINE> doesn't support SPATIAL indexes
|
||||
+# ERROR: Statement ended with errno 1464, errname ER_TABLE_CANT_HANDLE_SPKEYS (expected to succeed)
|
||||
+# ------------ UNEXPECTED RESULT ------------
|
||||
+# [ CREATE TABLE gis_point (fid INT(11) /*!*/ /*Custom column options*/, g POINT NOT NULL, SPATIAL INDEX(g)) ENGINE=InnoDB /*!*/ /*Custom table options*/ ]
|
||||
+# The statement|command finished with ER_TABLE_CANT_HANDLE_SPKEYS.
|
||||
+# Geometry types or spatial indexes or the mix could be unsupported|malfunctioning, or the problem was caused by previous errors.
|
||||
+# You can change the engine code, or create an rdiff, or disable the test by adding it to disabled.def.
|
||||
+# Further in this test, the message might sometimes be suppressed; a part of the test might be skipped.
|
||||
+# Also, this problem may cause a chain effect (more errors of different kinds in the test).
|
||||
+# -------------------------------------------
|
||||
DROP DATABASE gis_ogs;
|
||||
USE test;
|
|
@ -13,7 +13,7 @@
|
|||
-2
|
||||
-ALTER TABLE t1 DISCARD TABLESPACE;
|
||||
-SELECT a FROM t1;
|
||||
-ERROR HY000: Tablespace has been discarded for table 't1'
|
||||
-ERROR HY000: Tablespace has been discarded for table `t1`
|
||||
-ALTER TABLE t1 IMPORT TABLESPACE;
|
||||
-Warnings:
|
||||
-Warning 1810 IO Read error: (2, No such file or directory) Error opening './test/t1.cfg', will attempt to import without schema verification
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
-2
|
||||
-ALTER TABLE t1 DISCARD TABLESPACE;
|
||||
-SELECT a FROM t1;
|
||||
-ERROR HY000: Tablespace has been discarded for table 't1'
|
||||
-ERROR HY000: Tablespace has been discarded for table `t1`
|
||||
-ALTER TABLE t1 IMPORT TABLESPACE;
|
||||
-Warnings:
|
||||
-Warning 1810 IO Read error: (2, No such file or directory) Error opening './test/t1.cfg', will attempt to import without schema verification
|
||||
|
|
|
@ -29,7 +29,7 @@
|
|||
-SHOW CREATE TABLE t1;
|
||||
-Table Create Table
|
||||
-t1 CREATE TABLE `t1` (
|
||||
- `1` bigint(20) NOT NULL DEFAULT '0'
|
||||
- `1` bigint(20) NOT NULL DEFAULT 0
|
||||
-) ENGINE=<STORAGE_ENGINE> DEFAULT CHARSET=latin1
|
||||
-SELECT * FROM t1;
|
||||
-1
|
||||
|
|
3
storage/myisammrg/mysql-test/storage_engine/disabled.def
Normal file
3
storage/myisammrg/mysql-test/storage_engine/disabled.def
Normal file
|
@ -0,0 +1,3 @@
|
|||
insert_delayed : MDEV-12880 - INSERT DELAYED is not detected as inapplicable to a table under lock
|
||||
lock_concurrent : MDEV-12882 - Assertion failure
|
||||
select_high_prio : MDEV-12885 - MDL_SHARED_READ_ONLY is taken instead of MDL_SHARED_READ
|
|
@ -1,6 +1,6 @@
|
|||
--- repair_table.result 2013-01-23 01:35:44.388267080 +0400
|
||||
+++ repair_table.reject 2013-01-23 03:16:26.468307847 +0400
|
||||
@@ -1,234 +1,114 @@
|
||||
--- suite/storage_engine/parts/repair_table.result 2017-05-20 03:58:19.451939791 +0300
|
||||
+++ ../storage/myisammrg/mysql-test/storage_engine/parts/repair_table.reject 2017-05-24 02:42:31.130318292 +0300
|
||||
@@ -1,234 +1,115 @@
|
||||
call mtr.add_suppression("Table '.*t1.*' is marked as crashed and should be repaired");
|
||||
DROP TABLE IF EXISTS t1, t2;
|
||||
CREATE TABLE t1 (a <INT_COLUMN>, b <CHAR_COLUMN>) ENGINE=<STORAGE_ENGINE> <CUSTOM_TABLE_OPTIONS> PARTITION BY HASH(a) PARTITIONS 2;
|
||||
|
@ -144,6 +144,7 @@
|
|||
call mtr.add_suppression("MySQL thread id .*, query id .* localhost.*root Checking table");
|
||||
call mtr.add_suppression(" '\..test.t1'");
|
||||
call mtr.add_suppression("Couldn't repair table: test.t1");
|
||||
+call mtr.add_suppression("Table 't1' is marked as crashed.*");
|
||||
CREATE TABLE t1 (a <INT_COLUMN>, b <CHAR_COLUMN>, <CUSTOM_INDEX> (a)) ENGINE=<STORAGE_ENGINE> <CUSTOM_TABLE_OPTIONS> PARTITION BY HASH(a) PARTITIONS 2;
|
||||
+ERROR HY000: Engine cannot be used in partitioned tables
|
||||
+# ERROR: Statement ended with errno 1572, errname ER_PARTITION_MERGE_ERROR (expected to succeed)
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
--- repair_table.result 2013-01-23 01:26:05.995538460 +0400
|
||||
+++ repair_table.reject 2013-01-23 02:50:55.035560564 +0400
|
||||
--- suite/storage_engine/repair_table.result 2017-05-24 01:09:07.274213486 +0300
|
||||
+++ suite/storage_engine/repair_table.reject 2017-05-24 01:10:25.466214949 +0300
|
||||
@@ -4,56 +4,50 @@
|
||||
CREATE TABLE t2 (a <INT_COLUMN>, b <CHAR_COLUMN>) ENGINE=<STORAGE_ENGINE> <CUSTOM_TABLE_OPTIONS>;
|
||||
REPAIR TABLE t1;
|
||||
|
@ -71,7 +71,7 @@
|
|||
DROP TABLE t1, t2;
|
||||
call mtr.add_suppression("Got an error from thread_id=.*");
|
||||
call mtr.add_suppression("MySQL thread id .*, query id .* localhost.*root Checking table");
|
||||
@@ -62,45 +56,32 @@
|
||||
@@ -63,45 +57,32 @@
|
||||
CREATE TABLE t1 (a <INT_COLUMN>, b <CHAR_COLUMN>, <CUSTOM_INDEX> (a)) ENGINE=<STORAGE_ENGINE> <CUSTOM_TABLE_OPTIONS>;
|
||||
REPAIR TABLE t1;
|
||||
Table Op Msg_type Msg_text
|
||||
|
@ -104,7 +104,7 @@
|
|||
-test.t1 check error Corrupt
|
||||
+test.t1 check status OK
|
||||
SELECT a,b FROM t1;
|
||||
-ERROR HY000: Incorrect key file for table 't1'; try to repair it
|
||||
-ERROR HY000: Index for table 't1' is corrupt; try to repair it
|
||||
-# Statement ended with one of expected results (0,ER_NOT_KEYFILE,144).
|
||||
-# If you got a difference in error message, just add it to rdiff file
|
||||
-INSERT INTO t1 (a,b) VALUES (14,'n'),(15,'o');
|
||||
|
|
|
@ -1,18 +1,18 @@
|
|||
--- tbl_opt_data_index_dir.result 2013-01-22 22:05:05.246633000 +0400
|
||||
+++ tbl_opt_data_index_dir.reject 2013-01-23 02:50:59.951498762 +0400
|
||||
@@ -4,7 +4,7 @@
|
||||
--- suite/storage_engine/tbl_opt_data_dir.result 2017-05-24 00:21:15.550159778 +0300
|
||||
+++ ../storage/myisammrg/mysql-test/storage_engine/tbl_opt_data_dir.reject 2017-05-24 00:25:45.506164827 +0300
|
||||
@@ -5,7 +5,7 @@
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL,
|
||||
`b` char(8) DEFAULT NULL
|
||||
-) ENGINE=<STORAGE_ENGINE> DEFAULT CHARSET=latin1 DATA DIRECTORY='<DATA_DIR>' INDEX DIRECTORY='<INDEX_DIR>'
|
||||
-) ENGINE=<STORAGE_ENGINE> DEFAULT CHARSET=latin1 DATA DIRECTORY='<DATA_DIR_1>'
|
||||
+) ENGINE=<STORAGE_ENGINE> DEFAULT CHARSET=latin1 INSERT_METHOD=LAST UNION=(`mrg`.`t1`)
|
||||
# For ALTER TABLE the option is ignored
|
||||
# Running ALTER TABLE .. DATA DIRECTORY = <>
|
||||
Warnings:
|
||||
Warning 1618 <INDEX DIRECTORY> option ignored
|
||||
SHOW CREATE TABLE t1;
|
||||
@@ -12,5 +12,5 @@
|
||||
@@ -15,5 +15,5 @@
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL,
|
||||
`b` char(8) DEFAULT NULL
|
||||
-) ENGINE=<STORAGE_ENGINE> DEFAULT CHARSET=latin1 DATA DIRECTORY='<DATA_DIR>' INDEX DIRECTORY='<INDEX_DIR>'
|
||||
-) ENGINE=<STORAGE_ENGINE> DEFAULT CHARSET=latin1 DATA DIRECTORY='<DATA_DIR_1>'
|
||||
+) ENGINE=<STORAGE_ENGINE> DEFAULT CHARSET=latin1 INSERT_METHOD=LAST UNION=(`mrg`.`t1`)
|
||||
DROP TABLE t1;
|
|
@ -0,0 +1,18 @@
|
|||
--- suite/storage_engine/tbl_opt_index_dir.result 2017-05-24 00:21:15.550159778 +0300
|
||||
+++ ../storage/myisammrg/mysql-test/storage_engine/tbl_opt_index_dir.reject 2017-05-24 00:25:45.506164827 +0300
|
||||
@@ -5,7 +5,7 @@
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL,
|
||||
`b` char(8) DEFAULT NULL
|
||||
-) ENGINE=<STORAGE_ENGINE> DEFAULT CHARSET=latin1 INDEX DIRECTORY='<INDEX_DIR_1>'
|
||||
+) ENGINE=<STORAGE_ENGINE> DEFAULT CHARSET=latin1 INSERT_METHOD=LAST UNION=(`mrg`.`t1`)
|
||||
# For ALTER TABLE the option is ignored
|
||||
# Running ALTER TABLE .. INDEX DIRECTORY = <>
|
||||
Warnings:
|
||||
@@ -15,5 +15,5 @@
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL,
|
||||
`b` char(8) DEFAULT NULL
|
||||
-) ENGINE=<STORAGE_ENGINE> DEFAULT CHARSET=latin1 INDEX DIRECTORY='<INDEX_DIR_1>'
|
||||
+) ENGINE=<STORAGE_ENGINE> DEFAULT CHARSET=latin1 INSERT_METHOD=LAST UNION=(`mrg`.`t1`)
|
||||
DROP TABLE t1;
|
|
@ -1,17 +1,33 @@
|
|||
--- tbl_opt_row_format.result 2013-01-22 22:05:05.246633000 +0400
|
||||
+++ tbl_opt_row_format.reject 2013-01-23 02:51:04.743438518 +0400
|
||||
@@ -5,12 +5,12 @@
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL,
|
||||
`b` char(8) DEFAULT NULL
|
||||
-) ENGINE=<STORAGE_ENGINE> DEFAULT CHARSET=latin1 ROW_FORMAT=FIXED
|
||||
+) ENGINE=<STORAGE_ENGINE> DEFAULT CHARSET=latin1 ROW_FORMAT=FIXED INSERT_METHOD=LAST UNION=(`mrg`.`t1`)
|
||||
ALTER TABLE t1 ROW_FORMAT=DYNAMIC;
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
--- ../storage/myisammrg/mysql-test/storage_engine/tbl_opt_row_format.result~ 2017-05-24 00:50:44.254192857 +0300
|
||||
+++ ../storage/myisammrg/mysql-test/storage_engine/tbl_opt_row_format.reject 2017-05-24 00:50:44.334192859 +0300
|
||||
@@ -5,26 +5,26 @@
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL,
|
||||
`b` char(8) DEFAULT NULL
|
||||
-) ENGINE=<STORAGE_ENGINE> DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC
|
||||
+) ENGINE=<STORAGE_ENGINE> DEFAULT CHARSET=latin1 ROW_FORMAT=DYNAMIC INSERT_METHOD=LAST UNION=(`mrg`.`t1`)
|
||||
ALTER TABLE t1 ROW_FORMAT=FIXED;
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL,
|
||||
`b` char(8) DEFAULT NULL
|
||||
-) ENGINE=<STORAGE_ENGINE> DEFAULT CHARSET=latin1 ROW_FORMAT=FIXED
|
||||
+) ENGINE=<STORAGE_ENGINE> DEFAULT CHARSET=latin1 ROW_FORMAT=FIXED INSERT_METHOD=LAST UNION=(`mrg`.`t1`)
|
||||
ALTER TABLE t1 ROW_FORMAT=PAGE;
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL,
|
||||
`b` char(8) DEFAULT NULL
|
||||
-) ENGINE=<STORAGE_ENGINE> DEFAULT CHARSET=latin1 ROW_FORMAT=PAGE
|
||||
+) ENGINE=<STORAGE_ENGINE> DEFAULT CHARSET=latin1 ROW_FORMAT=PAGE INSERT_METHOD=LAST UNION=(`mrg`.`t1`)
|
||||
ALTER TABLE t1 ROW_FORMAT=COMPACT;
|
||||
SHOW CREATE TABLE t1;
|
||||
Table Create Table
|
||||
t1 CREATE TABLE `t1` (
|
||||
`a` int(11) DEFAULT NULL,
|
||||
`b` char(8) DEFAULT NULL
|
||||
-) ENGINE=<STORAGE_ENGINE> DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT
|
||||
+) ENGINE=<STORAGE_ENGINE> DEFAULT CHARSET=latin1 ROW_FORMAT=COMPACT INSERT_METHOD=LAST UNION=(`mrg`.`t1`)
|
||||
DROP TABLE t1;
|
||||
|
|
|
@ -6,12 +6,12 @@
|
|||
-SHOW COLUMNS IN t1;
|
||||
-Field Type Null Key Default Extra
|
||||
-a int(11) # #
|
||||
-b int(11) # # VIRTUAL
|
||||
-b int(11) # # VIRTUAL GENERATED
|
||||
-INSERT INTO t1 (a) VALUES (1),(2);
|
||||
-INSERT INTO t1 (a,b) VALUES (3,3),(4,4);
|
||||
-Warnings:
|
||||
-Warning 1906 The value specified for computed column 'b' in table 't1' ignored
|
||||
-Warning 1906 The value specified for computed column 'b' in table 't1' ignored
|
||||
-Warning 1906 The value specified for generated column 'b' in table 't1' ignored
|
||||
-Warning 1906 The value specified for generated column 'b' in table 't1' ignored
|
||||
-SELECT a,b FROM t1;
|
||||
-a b
|
||||
-1 2
|
||||
|
@ -23,12 +23,12 @@
|
|||
-SHOW COLUMNS IN t1;
|
||||
-Field Type Null Key Default Extra
|
||||
-a int(11) # #
|
||||
-b int(11) # # PERSISTENT
|
||||
-b int(11) # # STORED GENERATED
|
||||
-INSERT INTO t1 (a) VALUES (1),(2);
|
||||
-INSERT INTO t1 (a,b) VALUES (3,3),(4,4);
|
||||
-Warnings:
|
||||
-Warning 1906 The value specified for computed column 'b' in table 't1' ignored
|
||||
-Warning 1906 The value specified for computed column 'b' in table 't1' ignored
|
||||
-Warning 1906 The value specified for generated column 'b' in table 't1' ignored
|
||||
-Warning 1906 The value specified for generated column 'b' in table 't1' ignored
|
||||
-SELECT a,b FROM t1;
|
||||
-a b
|
||||
-1 2
|
||||
|
@ -40,12 +40,12 @@
|
|||
-SHOW COLUMNS IN t1;
|
||||
-Field Type Null Key Default Extra
|
||||
-a int(11) # #
|
||||
-b int(11) # # VIRTUAL
|
||||
-b int(11) # # VIRTUAL GENERATED
|
||||
-INSERT INTO t1 (a) VALUES (1),(2);
|
||||
-INSERT INTO t1 (a,b) VALUES (3,3),(4,4);
|
||||
-Warnings:
|
||||
-Warning 1906 The value specified for computed column 'b' in table 't1' ignored
|
||||
-Warning 1906 The value specified for computed column 'b' in table 't1' ignored
|
||||
-Warning 1906 The value specified for generated column 'b' in table 't1' ignored
|
||||
-Warning 1906 The value specified for generated column 'b' in table 't1' ignored
|
||||
-SELECT a,b FROM t1;
|
||||
-a b
|
||||
-1 2
|
||||
|
@ -57,12 +57,12 @@
|
|||
-SHOW COLUMNS IN t1;
|
||||
-Field Type Null Key Default Extra
|
||||
-a int(11) # #
|
||||
-b int(11) # # PERSISTENT
|
||||
-b int(11) # # STORED GENERATED
|
||||
-INSERT INTO t1 (a) VALUES (1),(2);
|
||||
-INSERT INTO t1 (a,b) VALUES (3,3),(4,4);
|
||||
-Warnings:
|
||||
-Warning 1906 The value specified for computed column 'b' in table 't1' ignored
|
||||
-Warning 1906 The value specified for computed column 'b' in table 't1' ignored
|
||||
-Warning 1906 The value specified for generated column 'b' in table 't1' ignored
|
||||
-Warning 1906 The value specified for generated column 'b' in table 't1' ignored
|
||||
-SELECT a,b FROM t1;
|
||||
-a b
|
||||
-1 2
|
||||
|
@ -70,11 +70,11 @@
|
|||
-3 4
|
||||
-4 5
|
||||
-DROP TABLE t1;
|
||||
+ERROR HY000: MRG_MyISAM storage engine does not support computed columns
|
||||
+# ERROR: Statement ended with errno 1910, errname ER_UNSUPPORTED_ENGINE_FOR_VIRTUAL_COLUMNS (expected to succeed)
|
||||
+ERROR HY000: MRG_MyISAM storage engine does not support generated columns
|
||||
+# ERROR: Statement ended with errno 1910, errname ER_UNSUPPORTED_ENGINE_FOR_GENERATED_COLUMNS (expected to succeed)
|
||||
+# ------------ UNEXPECTED RESULT ------------
|
||||
+# [ CREATE TABLE t1 (a INT(11) /*!*/ /*Custom column options*/, b INT(11) /*!*/ /*Custom column options*/ GENERATED ALWAYS AS (a+1)) ENGINE=MRG_MYISAM /*!*/ /*Custom table options*/ UNION(mrg.t1) INSERT_METHOD=LAST ]
|
||||
+# The statement|command finished with ER_UNSUPPORTED_ENGINE_FOR_VIRTUAL_COLUMNS.
|
||||
+# The statement|command finished with ER_UNSUPPORTED_ENGINE_FOR_GENERATED_COLUMNS.
|
||||
+# Virtual columns or the mix could be unsupported|malfunctioning, or the problem was caused by previous errors.
|
||||
+# You can change the engine code, or create an rdiff, or disable the test by adding it to disabled.def.
|
||||
+# Further in this test, the message might sometimes be suppressed; a part of the test might be skipped.
|
||||
|
|
8
storage/xtradb/mysql-test/storage_engine/suite.pm
Normal file
8
storage/xtradb/mysql-test/storage_engine/suite.pm
Normal file
|
@ -0,0 +1,8 @@
|
|||
package My::Suite::SE::XtraDB;
|
||||
|
||||
@ISA = qw(My::Suite);
|
||||
|
||||
return "Need XtraDB engine";
|
||||
|
||||
bless { };
|
||||
|
Loading…
Reference in a new issue