Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
M
MariaDB
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
nexedi
MariaDB
Commits
a8c96e68
Commit
a8c96e68
authored
Oct 09, 2008
by
Georgi Kodinov
Browse files
Options
Browse Files
Download
Plain Diff
merged 5.1-bugteam -> 32124
parents
5d1d1057
d935c67b
Changes
13
Hide whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
147 additions
and
43 deletions
+147
-43
mysql-test/r/alter_table.result
mysql-test/r/alter_table.result
+18
-0
mysql-test/r/information_schema.result
mysql-test/r/information_schema.result
+9
-3
mysql-test/r/merge.result
mysql-test/r/merge.result
+15
-6
mysql-test/r/show_check.result
mysql-test/r/show_check.result
+4
-4
mysql-test/suite/funcs_1/r/is_columns_is.result
mysql-test/suite/funcs_1/r/is_columns_is.result
+6
-6
mysql-test/suite/funcs_1/r/is_events.result
mysql-test/suite/funcs_1/r/is_events.result
+3
-3
mysql-test/suite/funcs_1/r/is_triggers.result
mysql-test/suite/funcs_1/r/is_triggers.result
+6
-6
mysql-test/t/alter_table.test
mysql-test/t/alter_table.test
+30
-0
mysql-test/t/information_schema.test
mysql-test/t/information_schema.test
+8
-0
mysql-test/t/merge.test
mysql-test/t/merge.test
+19
-6
sql/sql_base.cc
sql/sql_base.cc
+13
-5
sql/sql_show.cc
sql/sql_show.cc
+14
-4
sql/sql_table.cc
sql/sql_table.cc
+2
-0
No files found.
mysql-test/r/alter_table.result
View file @
a8c96e68
...
...
@@ -1222,4 +1222,22 @@ ALTER TABLE t1 CHANGE d c varchar(10);
affected rows: 0
info: Records: 0 Duplicates: 0 Warnings: 0
DROP TABLE t1;
create table t1(f1 int not null, f2 int not null, key (f1), key (f2));
select index_length into @unpaked_keys_size from
information_schema.tables where table_name='t1';
alter table t1 pack_keys=1;
select index_length into @paked_keys_size from
information_schema.tables where table_name='t1';
select (@unpaked_keys_size > @paked_keys_size);
(@unpaked_keys_size > @paked_keys_size)
1
select max_data_length into @orig_max_data_length from
information_schema.tables where table_name='t1';
alter table t1 max_rows=100;
select max_data_length into @changed_max_data_length from
information_schema.tables where table_name='t1';
select (@orig_max_data_length > @changed_max_data_length);
(@orig_max_data_length > @changed_max_data_length)
1
drop table t1;
End of 5.1 tests
mysql-test/r/information_schema.result
View file @
a8c96e68
...
...
@@ -758,7 +758,6 @@ table_schema table_name column_name
information_schema COLUMNS COLUMN_DEFAULT
information_schema COLUMNS COLUMN_TYPE
information_schema EVENTS EVENT_DEFINITION
information_schema EVENTS SQL_MODE
information_schema PARTITIONS PARTITION_EXPRESSION
information_schema PARTITIONS SUBPARTITION_EXPRESSION
information_schema PARTITIONS PARTITION_DESCRIPTION
...
...
@@ -768,8 +767,6 @@ information_schema ROUTINES ROUTINE_DEFINITION
information_schema ROUTINES SQL_MODE
information_schema TRIGGERS ACTION_CONDITION
information_schema TRIGGERS ACTION_STATEMENT
information_schema TRIGGERS SQL_MODE
information_schema TRIGGERS DEFINER
information_schema VIEWS VIEW_DEFINITION
select table_name, column_name, data_type from information_schema.columns
where data_type = 'datetime';
...
...
@@ -1646,4 +1643,13 @@ drop table t1;
drop function f1;
select * from information_schema.tables where 1=sleep(100000);
select * from information_schema.columns where 1=sleep(100000);
explain select count(*) from information_schema.tables;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE tables ALL NULL NULL NULL NULL NULL Skip_open_table; Scanned all databases
explain select count(*) from information_schema.columns;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE columns ALL NULL NULL NULL NULL NULL Open_frm_only; Scanned all databases
explain select count(*) from information_schema.views;
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE views ALL NULL NULL NULL NULL NULL Open_frm_only; Scanned all databases
End of 5.1 tests.
mysql-test/r/merge.result
View file @
a8c96e68
...
...
@@ -830,7 +830,7 @@ ERROR HY000: Unable to open underlying table which is differently defined or of
DROP TABLE t1, t2;
CREATE TABLE t2(a INT) ENGINE=MERGE UNION=(t3);
SELECT * FROM t2;
ERROR
42S02: Table 'test.t3'
doesn't exist
ERROR
HY000: Unable to open underlying table which is differently defined or of non-MyISAM type or
doesn't exist
DROP TABLE t2;
CREATE TABLE t1(a INT, b TEXT);
CREATE TABLE tm1(a TEXT, b INT) ENGINE=MERGE UNION=(t1);
...
...
@@ -895,17 +895,19 @@ drop table t2;
drop table t1;
CREATE TABLE tm1(a INT) ENGINE=MERGE UNION=(t1, t2);
SELECT * FROM tm1;
ERROR
42S02: Table 'test.t1'
doesn't exist
ERROR
HY000: Unable to open underlying table which is differently defined or of non-MyISAM type or
doesn't exist
CHECK TABLE tm1;
Table Op Msg_type Msg_text
test.tm1 check Error Table 'test.t1' doesn't exist
test.tm1 check Error Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist
test.tm1 check error Corrupt
CREATE TABLE t1(a INT);
SELECT * FROM tm1;
ERROR
42S02: Table 'test.t2'
doesn't exist
ERROR
HY000: Unable to open underlying table which is differently defined or of non-MyISAM type or
doesn't exist
CHECK TABLE tm1;
Table Op Msg_type Msg_text
test.tm1 check Error Table 'test.t2' doesn't exist
test.tm1 check Error Unable to open underlying table which is differently defined or of non-MyISAM type or doesn't exist
test.tm1 check error Corrupt
CREATE TABLE t2(a BLOB);
SELECT * FROM tm1;
...
...
@@ -1199,7 +1201,7 @@ c1
3
RENAME TABLE t2 TO t5;
SELECT * FROM t3 ORDER BY c1;
ERROR
42S02: Table 'test.t2'
doesn't exist
ERROR
HY000: Unable to open underlying table which is differently defined or of non-MyISAM type or
doesn't exist
RENAME TABLE t5 TO t2;
SELECT * FROM t3 ORDER BY c1;
c1
...
...
@@ -1233,7 +1235,7 @@ UNLOCK TABLES;
# 4. Alter table rename.
ALTER TABLE t2 RENAME TO t5;
SELECT * FROM t3 ORDER BY c1;
ERROR
42S02: Table 'test.t2'
doesn't exist
ERROR
HY000: Unable to open underlying table which is differently defined or of non-MyISAM type or
doesn't exist
ALTER TABLE t5 RENAME TO t2;
SELECT * FROM t3 ORDER BY c1;
c1
...
...
@@ -1317,7 +1319,7 @@ LOCK TABLES t1 WRITE, t2 WRITE;
INSERT INTO t1 VALUES (1);
DROP TABLE t1;
SELECT * FROM t2;
ERROR
42S02: Table 'test.t1'
doesn't exist
ERROR
HY000: Unable to open underlying table which is differently defined or of non-MyISAM type or
doesn't exist
SELECT * FROM t1;
ERROR 42S02: Table 'test.t1' doesn't exist
UNLOCK TABLES;
...
...
@@ -2006,6 +2008,13 @@ test.t1 optimize status OK
FLUSH TABLES m1, t1;
UNLOCK TABLES;
DROP TABLE t1, m1;
CREATE TABLE tm1 (c1 INT) ENGINE=MRG_MYISAM UNION=(t1) INSERT_METHOD=FIRST;
SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE
TABLE_SCHEMA = 'test' and TABLE_NAME='tm1';
TABLE_CATALOG TABLE_SCHEMA TABLE_NAME TABLE_TYPE ENGINE VERSION ROW_FORMAT TABLE_ROWS AVG_ROW_LENGTH DATA_LENGTH MAX_DATA_LENGTH INDEX_LENGTH DATA_FREE AUTO_INCREMENT CREATE_TIME UPDATE_TIME CHECK_TIME TABLE_COLLATION CHECKSUM CREATE_OPTIONS TABLE_COMMENT
NULL test tm1 BASE TABLE NULL NULL NULL # # # # # # # # # # NULL # # Unable to open underlying table which is differently defined or of non-MyISAM ty
DROP TABLE tm1;
End of 5.1 tests
CREATE TABLE t1(C1 INT, C2 INT, KEY C1(C1), KEY C2(C2)) ENGINE=MYISAM;
CREATE TABLE t2(C1 INT, C2 INT, KEY C1(C1), KEY C2(C2)) ENGINE=MYISAM;
CREATE TABLE t3(C1 INT, C2 INT, KEY C1(C1), KEY C2(C2)) ENGINE=MYISAM;
...
...
mysql-test/r/show_check.result
View file @
a8c96e68
...
...
@@ -1001,8 +1001,8 @@ def TRIGGERS EVENT_OBJECT_TABLE Table 253 192 2 N 1 0 33
def TRIGGERS ACTION_STATEMENT Statement 252 589815 10 N 17 0 33
def TRIGGERS ACTION_TIMING Timing 253 18 6 N 1 0 33
def TRIGGERS CREATED Created 12 19 0 Y 128 0 63
def TRIGGERS SQL_MODE sql_mode 25
2 589815 0 N 17
0 33
def TRIGGERS DEFINER Definer 25
2 589815 14 N 17
0 33
def TRIGGERS SQL_MODE sql_mode 25
3 24576 0 N 1
0 33
def TRIGGERS DEFINER Definer 25
3 231 14 N 1
0 33
def TRIGGERS CHARACTER_SET_CLIENT character_set_client 253 96 6 N 1 0 33
def TRIGGERS COLLATION_CONNECTION collation_connection 253 96 6 N 1 0 33
def TRIGGERS DATABASE_COLLATION Database Collation 253 96 17 N 1 0 33
...
...
@@ -1045,8 +1045,8 @@ def TRIGGERS ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_OLD_TABLE 253 192 0 Y
def TRIGGERS ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_NEW_TABLE 253 192 0 Y 0 0 33
def TRIGGERS ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_OLD_ROW 253 9 3 N 1 0 33
def TRIGGERS ACTION_REFERENCE_NEW_ROW ACTION_REFERENCE_NEW_ROW 253 9 3 N 1 0 33
def TRIGGERS SQL_MODE SQL_MODE 25
2 589815 0 N 17
0 33
def TRIGGERS DEFINER DEFINER 25
2 589815 14 N 17
0 33
def TRIGGERS SQL_MODE SQL_MODE 25
3 24576 0 N 1
0 33
def TRIGGERS DEFINER DEFINER 25
3 231 14 N 1
0 33
TRIGGER_CATALOG TRIGGER_SCHEMA TRIGGER_NAME EVENT_MANIPULATION EVENT_OBJECT_CATALOG EVENT_OBJECT_SCHEMA EVENT_OBJECT_TABLE ACTION_CONDITION ACTION_STATEMENT ACTION_ORIENTATION ACTION_TIMING ACTION_REFERENCE_OLD_TABLE ACTION_REFERENCE_NEW_TABLE ACTION_REFERENCE_OLD_ROW ACTION_REFERENCE_NEW_ROW SQL_MODE DEFINER
NULL test t1_bi INSERT NULL test t1 NULL SET @a = 1 ROW BEFORE NULL NULL OLD NEW root@localhost
----------------------------------------------------------------
...
...
mysql-test/suite/funcs_1/r/is_columns_is.result
View file @
a8c96e68
...
...
@@ -67,7 +67,7 @@ NULL information_schema EVENTS LAST_ALTERED 18 0000-00-00 00:00:00 NO datetime N
NULL information_schema EVENTS LAST_EXECUTED 19 NULL YES datetime NULL NULL NULL NULL NULL NULL datetime select
NULL information_schema EVENTS ON_COMPLETION 16 NO varchar 12 36 NULL NULL utf8 utf8_general_ci varchar(12) select
NULL information_schema EVENTS ORIGINATOR 21 0 NO bigint NULL NULL 19 0 NULL NULL bigint(10) select
NULL information_schema EVENTS SQL_MODE 12
NULL NO longtext 4294967295 4294967295 NULL NULL utf8 utf8_general_ci longtext
select
NULL information_schema EVENTS SQL_MODE 12
NO varchar 8192 24576 NULL NULL utf8 utf8_general_ci varchar(8192)
select
NULL information_schema EVENTS STARTS 13 NULL YES datetime NULL NULL NULL NULL NULL NULL datetime select
NULL information_schema EVENTS STATUS 15 NO varchar 18 54 NULL NULL utf8 utf8_general_ci varchar(18) select
NULL information_schema EVENTS TIME_ZONE 5 NO varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select
...
...
@@ -277,12 +277,12 @@ NULL information_schema TRIGGERS CHARACTER_SET_CLIENT 20 NO varchar 32 96 NULL
NULL information_schema TRIGGERS COLLATION_CONNECTION 21 NO varchar 32 96 NULL NULL utf8 utf8_general_ci varchar(32) select
NULL information_schema TRIGGERS CREATED 17 NULL YES datetime NULL NULL NULL NULL NULL NULL datetime select
NULL information_schema TRIGGERS DATABASE_COLLATION 22 NO varchar 32 96 NULL NULL utf8 utf8_general_ci varchar(32) select
NULL information_schema TRIGGERS DEFINER 19
NULL NO longtext 4294967295 4294967295 NULL NULL utf8 utf8_general_ci longtext
select
NULL information_schema TRIGGERS DEFINER 19
NO varchar 77 231 NULL NULL utf8 utf8_general_ci varchar(77)
select
NULL information_schema TRIGGERS EVENT_MANIPULATION 4 NO varchar 6 18 NULL NULL utf8 utf8_general_ci varchar(6) select
NULL information_schema TRIGGERS EVENT_OBJECT_CATALOG 5 NULL YES varchar 512 1536 NULL NULL utf8 utf8_general_ci varchar(512) select
NULL information_schema TRIGGERS EVENT_OBJECT_SCHEMA 6 NO varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select
NULL information_schema TRIGGERS EVENT_OBJECT_TABLE 7 NO varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select
NULL information_schema TRIGGERS SQL_MODE 18
NULL NO longtext 4294967295 4294967295 NULL NULL utf8 utf8_general_ci longtext
select
NULL information_schema TRIGGERS SQL_MODE 18
NO varchar 8192 24576 NULL NULL utf8 utf8_general_ci varchar(8192)
select
NULL information_schema TRIGGERS TRIGGER_CATALOG 1 NULL YES varchar 512 1536 NULL NULL utf8 utf8_general_ci varchar(512) select
NULL information_schema TRIGGERS TRIGGER_NAME 3 NO varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select
NULL information_schema TRIGGERS TRIGGER_SCHEMA 2 NO varchar 64 192 NULL NULL utf8 utf8_general_ci varchar(64) select
...
...
@@ -412,7 +412,7 @@ NULL information_schema COLUMNS NUMERIC_SCALE bigint NULL NULL NULL NULL bigint(
NULL information_schema EVENTS EXECUTE_AT datetime NULL NULL NULL NULL datetime
3.0000 information_schema EVENTS INTERVAL_VALUE varchar 256 768 utf8 utf8_general_ci varchar(256)
3.0000 information_schema EVENTS INTERVAL_FIELD varchar 18 54 utf8 utf8_general_ci varchar(18)
1.0000 information_schema EVENTS SQL_MODE longtext 4294967295 4294967295 utf8 utf8_general_ci longtext
3.0000 information_schema EVENTS SQL_MODE varchar 8192 24576 utf8 utf8_general_ci varchar(8192)
NULL information_schema EVENTS STARTS datetime NULL NULL NULL NULL datetime
NULL information_schema EVENTS ENDS datetime NULL NULL NULL NULL datetime
3.0000 information_schema EVENTS STATUS varchar 18 54 utf8 utf8_general_ci varchar(18)
...
...
@@ -635,8 +635,8 @@ NULL information_schema TRIGGERS ACTION_ORDER bigint NULL NULL NULL NULL bigint(
3.0000 information_schema TRIGGERS ACTION_REFERENCE_OLD_ROW varchar 3 9 utf8 utf8_general_ci varchar(3)
3.0000 information_schema TRIGGERS ACTION_REFERENCE_NEW_ROW varchar 3 9 utf8 utf8_general_ci varchar(3)
NULL information_schema TRIGGERS CREATED datetime NULL NULL NULL NULL datetime
1.0000 information_schema TRIGGERS SQL_MODE longtext 4294967295 4294967295 utf8 utf8_general_ci longtext
1.0000 information_schema TRIGGERS DEFINER longtext 4294967295 4294967295 utf8 utf8_general_ci longtext
3.0000 information_schema TRIGGERS SQL_MODE varchar 8192 24576 utf8 utf8_general_ci varchar(8192)
3.0000 information_schema TRIGGERS DEFINER varchar 77 231 utf8 utf8_general_ci varchar(77)
3.0000 information_schema TRIGGERS CHARACTER_SET_CLIENT varchar 32 96 utf8 utf8_general_ci varchar(32)
3.0000 information_schema TRIGGERS COLLATION_CONNECTION varchar 32 96 utf8 utf8_general_ci varchar(32)
3.0000 information_schema TRIGGERS DATABASE_COLLATION varchar 32 96 utf8 utf8_general_ci varchar(32)
...
...
mysql-test/suite/funcs_1/r/is_events.result
View file @
a8c96e68
...
...
@@ -39,7 +39,7 @@ EVENT_TYPE varchar(9) NO
EXECUTE_AT datetime YES NULL
INTERVAL_VALUE varchar(256) YES NULL
INTERVAL_FIELD varchar(18) YES NULL
SQL_MODE
longtext NO NULL
SQL_MODE
varchar(8192) NO
STARTS datetime YES NULL
ENDS datetime YES NULL
STATUS varchar(18) NO
...
...
@@ -66,7 +66,7 @@ EVENTS CREATE TEMPORARY TABLE `EVENTS` (
`EXECUTE_AT` datetime DEFAULT NULL,
`INTERVAL_VALUE` varchar(256) DEFAULT NULL,
`INTERVAL_FIELD` varchar(18) DEFAULT NULL,
`SQL_MODE`
longtext NOT NULL
,
`SQL_MODE`
varchar(8192) NOT NULL DEFAULT ''
,
`STARTS` datetime DEFAULT NULL,
`ENDS` datetime DEFAULT NULL,
`STATUS` varchar(18) NOT NULL DEFAULT '',
...
...
@@ -93,7 +93,7 @@ EVENT_TYPE varchar(9) NO
EXECUTE_AT datetime YES NULL
INTERVAL_VALUE varchar(256) YES NULL
INTERVAL_FIELD varchar(18) YES NULL
SQL_MODE
longtext NO NULL
SQL_MODE
varchar(8192) NO
STARTS datetime YES NULL
ENDS datetime YES NULL
STATUS varchar(18) NO
...
...
mysql-test/suite/funcs_1/r/is_triggers.result
View file @
a8c96e68
...
...
@@ -45,8 +45,8 @@ ACTION_REFERENCE_NEW_TABLE varchar(64) YES NULL
ACTION_REFERENCE_OLD_ROW varchar(3) NO
ACTION_REFERENCE_NEW_ROW varchar(3) NO
CREATED datetime YES NULL
SQL_MODE
longtext NO NULL
DEFINER
longtext NO NULL
SQL_MODE
varchar(8192) NO
DEFINER
varchar(77) NO
CHARACTER_SET_CLIENT varchar(32) NO
COLLATION_CONNECTION varchar(32) NO
DATABASE_COLLATION varchar(32) NO
...
...
@@ -70,8 +70,8 @@ TRIGGERS CREATE TEMPORARY TABLE `TRIGGERS` (
`ACTION_REFERENCE_OLD_ROW` varchar(3) NOT NULL DEFAULT '',
`ACTION_REFERENCE_NEW_ROW` varchar(3) NOT NULL DEFAULT '',
`CREATED` datetime DEFAULT NULL,
`SQL_MODE`
longtext NOT NULL
,
`DEFINER`
longtext NOT NULL
,
`SQL_MODE`
varchar(8192) NOT NULL DEFAULT ''
,
`DEFINER`
varchar(77) NOT NULL DEFAULT ''
,
`CHARACTER_SET_CLIENT` varchar(32) NOT NULL DEFAULT '',
`COLLATION_CONNECTION` varchar(32) NOT NULL DEFAULT '',
`DATABASE_COLLATION` varchar(32) NOT NULL DEFAULT ''
...
...
@@ -95,8 +95,8 @@ ACTION_REFERENCE_NEW_TABLE varchar(64) YES NULL
ACTION_REFERENCE_OLD_ROW varchar(3) NO
ACTION_REFERENCE_NEW_ROW varchar(3) NO
CREATED datetime YES NULL
SQL_MODE
longtext NO NULL
DEFINER
longtext NO NULL
SQL_MODE
varchar(8192) NO
DEFINER
varchar(77) NO
CHARACTER_SET_CLIENT varchar(32) NO
COLLATION_CONNECTION varchar(32) NO
DATABASE_COLLATION varchar(32) NO
...
...
mysql-test/t/alter_table.test
View file @
a8c96e68
...
...
@@ -947,4 +947,34 @@ ALTER TABLE t1 CHANGE d c varchar(10);
--
disable_info
DROP
TABLE
t1
;
#
# Bug#39372 "Smart" ALTER TABLE not so smart after all.
#
create
table
t1
(
f1
int
not
null
,
f2
int
not
null
,
key
(
f1
),
key
(
f2
));
let
$count
=
50
;
--
disable_query_log
while
(
$count
)
{
EVAL
insert
into
t1
values
(
1
,
1
),(
1
,
1
),(
1
,
1
),(
1
,
1
),(
1
,
1
);
EVAL
insert
into
t1
values
(
2
,
2
),(
2
,
2
),(
2
,
2
),(
2
,
2
),(
2
,
2
);
dec
$count
;
}
--
enable_query_log
select
index_length
into
@
unpaked_keys_size
from
information_schema
.
tables
where
table_name
=
't1'
;
alter
table
t1
pack_keys
=
1
;
select
index_length
into
@
paked_keys_size
from
information_schema
.
tables
where
table_name
=
't1'
;
select
(
@
unpaked_keys_size
>
@
paked_keys_size
);
select
max_data_length
into
@
orig_max_data_length
from
information_schema
.
tables
where
table_name
=
't1'
;
alter
table
t1
max_rows
=
100
;
select
max_data_length
into
@
changed_max_data_length
from
information_schema
.
tables
where
table_name
=
't1'
;
select
(
@
orig_max_data_length
>
@
changed_max_data_length
);
drop
table
t1
;
--
echo
End
of
5.1
tests
mysql-test/t/information_schema.test
View file @
a8c96e68
...
...
@@ -1338,4 +1338,12 @@ where state='User sleep' and
info
=
'select * from information_schema.columns where 1=sleep(100000)'
;
--
source
include
/
wait_condition
.
inc
#
# Bug#38918 selecting from information_schema.columns is disproportionately slow
#
explain
select
count
(
*
)
from
information_schema
.
tables
;
explain
select
count
(
*
)
from
information_schema
.
columns
;
explain
select
count
(
*
)
from
information_schema
.
views
;
--
echo
End
of
5.1
tests
.
mysql-test/t/merge.test
View file @
a8c96e68
...
...
@@ -456,7 +456,7 @@ CREATE TABLE t2(a INT) ENGINE=MERGE UNION=(t1);
SELECT
*
FROM
t2
;
DROP
TABLE
t1
,
t2
;
CREATE
TABLE
t2
(
a
INT
)
ENGINE
=
MERGE
UNION
=
(
t3
);
--
error
ER_NO_SUCH_TABLE
--
error
1168
SELECT
*
FROM
t2
;
DROP
TABLE
t2
;
...
...
@@ -548,11 +548,11 @@ drop table t1;
# CREATE TABLE fails
#
CREATE
TABLE
tm1
(
a
INT
)
ENGINE
=
MERGE
UNION
=
(
t1
,
t2
);
--
error
ER_NO_SUCH_TABLE
--
error
1168
SELECT
*
FROM
tm1
;
CHECK
TABLE
tm1
;
CREATE
TABLE
t1
(
a
INT
);
--
error
ER_NO_SUCH_TABLE
--
error
1168
SELECT
*
FROM
tm1
;
CHECK
TABLE
tm1
;
CREATE
TABLE
t2
(
a
BLOB
);
...
...
@@ -878,7 +878,7 @@ DROP TABLE t4;
--
echo
# 2. Normal rename.
SELECT
*
FROM
t3
ORDER
BY
c1
;
RENAME
TABLE
t2
TO
t5
;
--
error
ER_NO_SUCH_TABLE
--
error
1168
SELECT
*
FROM
t3
ORDER
BY
c1
;
RENAME
TABLE
t5
TO
t2
;
SELECT
*
FROM
t3
ORDER
BY
c1
;
...
...
@@ -896,7 +896,7 @@ UNLOCK TABLES;
--
echo
#
--
echo
# 4. Alter table rename.
ALTER
TABLE
t2
RENAME
TO
t5
;
--
error
ER_NO_SUCH_TABLE
--
error
1168
SELECT
*
FROM
t3
ORDER
BY
c1
;
ALTER
TABLE
t5
RENAME
TO
t2
;
SELECT
*
FROM
t3
ORDER
BY
c1
;
...
...
@@ -956,7 +956,7 @@ CREATE TABLE t2 (c1 INT, INDEX(c1)) ENGINE=MRG_MYISAM UNION=(t1)
LOCK
TABLES
t1
WRITE
,
t2
WRITE
;
INSERT
INTO
t1
VALUES
(
1
);
DROP
TABLE
t1
;
--
error
ER_NO_SUCH_TABLE
--
error
1168
SELECT
*
FROM
t2
;
--
error
ER_NO_SUCH_TABLE
SELECT
*
FROM
t1
;
...
...
@@ -1394,6 +1394,19 @@ FLUSH TABLES m1, t1;
UNLOCK
TABLES
;
DROP
TABLE
t1
,
m1
;
#
# Bug#35068 - Assertion fails when reading from i_s.tables
# and there is incorrect merge table
#
CREATE
TABLE
tm1
(
c1
INT
)
ENGINE
=
MRG_MYISAM
UNION
=
(
t1
)
INSERT_METHOD
=
FIRST
;
--
replace_column
8
# 9 # 10 # 11 # 12 # 13 # 14 # 15 # 16 # 17 # 19 # 20 #
SELECT
*
FROM
INFORMATION_SCHEMA
.
TABLES
WHERE
TABLE_SCHEMA
=
'test'
and
TABLE_NAME
=
'tm1'
;
DROP
TABLE
tm1
;
--
echo
End
of
5.1
tests
#
# Bug#36006 - Optimizer does table scan for select count(*)
#
...
...
sql/sql_base.cc
View file @
a8c96e68
...
...
@@ -489,12 +489,20 @@ static TABLE_SHARE
"no such table" errors.
@todo Rework the alternative ways to deal with ER_NO_SUCH TABLE.
*/
if
(
thd
->
is_error
()
&&
table_list
->
belong_to_view
)
if
(
thd
->
is_error
())
{
TABLE_LIST
*
view
=
table_list
->
belong_to_view
;
thd
->
clear_error
();
my_error
(
ER_VIEW_INVALID
,
MYF
(
0
),
view
->
view_db
.
str
,
view
->
view_name
.
str
);
if
(
table_list
->
parent_l
)
{
thd
->
clear_error
();
my_error
(
ER_WRONG_MRG_TABLE
,
MYF
(
0
));
}
else
if
(
table_list
->
belong_to_view
)
{
TABLE_LIST
*
view
=
table_list
->
belong_to_view
;
thd
->
clear_error
();
my_error
(
ER_VIEW_INVALID
,
MYF
(
0
),
view
->
view_db
.
str
,
view
->
view_name
.
str
);
}
}
DBUG_RETURN
(
0
);
}
...
...
sql/sql_show.cc
View file @
a8c96e68
...
...
@@ -2962,7 +2962,7 @@ static int fill_schema_table_names(THD *thd, TABLE *table,
@retval SKIP_OPEN_TABLE | OPEN_FRM_ONLY | OPEN_FULL_TABLE
*/
static
uint
get_table_open_method
(
TABLE_LIST
*
tables
,
uint
get_table_open_method
(
TABLE_LIST
*
tables
,
ST_SCHEMA_TABLE
*
schema_table
,
enum
enum_schema_tables
schema_table_idx
)
{
...
...
@@ -2973,12 +2973,22 @@ static uint get_table_open_method(TABLE_LIST *tables,
{
Field
**
ptr
,
*
field
;
int
table_open_method
=
0
,
field_indx
=
0
;
uint
star_table_open_method
=
OPEN_FULL_TABLE
;
bool
used_star
=
true
;
// true if '*' is used in select
for
(
ptr
=
tables
->
table
->
field
;
(
field
=
*
ptr
)
;
ptr
++
)
{
star_table_open_method
=
min
(
star_table_open_method
,
schema_table
->
fields_info
[
field_indx
].
open_method
);
if
(
bitmap_is_set
(
tables
->
table
->
read_set
,
field
->
field_index
))
{
used_star
=
false
;
table_open_method
|=
schema_table
->
fields_info
[
field_indx
].
open_method
;
}
field_indx
++
;
}
if
(
used_star
)
return
star_table_open_method
;
return
table_open_method
;
}
/* I_S tables which use get_all_tables but can not be optimized */
...
...
@@ -6116,7 +6126,7 @@ ST_FIELD_INFO events_fields_info[]=
SKIP_OPEN_TABLE
},
{
"INTERVAL_FIELD"
,
18
,
MYSQL_TYPE_STRING
,
0
,
1
,
"Interval field"
,
SKIP_OPEN_TABLE
},
{
"SQL_MODE"
,
65535
,
MYSQL_TYPE_STRING
,
0
,
0
,
0
,
SKIP_OPEN_TABLE
},
{
"SQL_MODE"
,
32
*
256
,
MYSQL_TYPE_STRING
,
0
,
0
,
0
,
SKIP_OPEN_TABLE
},
{
"STARTS"
,
0
,
MYSQL_TYPE_DATETIME
,
0
,
1
,
"Starts"
,
SKIP_OPEN_TABLE
},
{
"ENDS"
,
0
,
MYSQL_TYPE_DATETIME
,
0
,
1
,
"Ends"
,
SKIP_OPEN_TABLE
},
{
"STATUS"
,
18
,
MYSQL_TYPE_STRING
,
0
,
0
,
"Status"
,
SKIP_OPEN_TABLE
},
...
...
@@ -6359,8 +6369,8 @@ ST_FIELD_INFO triggers_fields_info[]=
{
"ACTION_REFERENCE_OLD_ROW"
,
3
,
MYSQL_TYPE_STRING
,
0
,
0
,
0
,
OPEN_FULL_TABLE
},
{
"ACTION_REFERENCE_NEW_ROW"
,
3
,
MYSQL_TYPE_STRING
,
0
,
0
,
0
,
OPEN_FULL_TABLE
},
{
"CREATED"
,
0
,
MYSQL_TYPE_DATETIME
,
0
,
1
,
"Created"
,
OPEN_FULL_TABLE
},
{
"SQL_MODE"
,
65535
,
MYSQL_TYPE_STRING
,
0
,
0
,
"sql_mode"
,
OPEN_FULL_TABLE
},
{
"DEFINER"
,
65535
,
MYSQL_TYPE_STRING
,
0
,
0
,
"Definer"
,
OPEN_FULL_TABLE
},
{
"SQL_MODE"
,
32
*
256
,
MYSQL_TYPE_STRING
,
0
,
0
,
"sql_mode"
,
OPEN_FULL_TABLE
},
{
"DEFINER"
,
77
,
MYSQL_TYPE_STRING
,
0
,
0
,
"Definer"
,
OPEN_FULL_TABLE
},
{
"CHARACTER_SET_CLIENT"
,
MY_CS_NAME_SIZE
,
MYSQL_TYPE_STRING
,
0
,
0
,
"character_set_client"
,
OPEN_FULL_TABLE
},
{
"COLLATION_CONNECTION"
,
MY_CS_NAME_SIZE
,
MYSQL_TYPE_STRING
,
0
,
0
,
...
...
sql/sql_table.cc
View file @
a8c96e68
...
...
@@ -5281,6 +5281,8 @@ compare_tables(TABLE *table,
create_info
->
used_fields
&
HA_CREATE_USED_CHARSET
||
create_info
->
used_fields
&
HA_CREATE_USED_DEFAULT_CHARSET
||
create_info
->
used_fields
&
HA_CREATE_USED_ROW_FORMAT
||
create_info
->
used_fields
&
HA_CREATE_USED_PACK_KEYS
||
create_info
->
used_fields
&
HA_CREATE_USED_MAX_ROWS
||
(
alter_info
->
flags
&
(
ALTER_RECREATE
|
ALTER_FOREIGN_KEY
))
||
order_num
||
!
table
->
s
->
mysql_version
||
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment