mirror of
https://github.com/MariaDB/server.git
synced 2025-01-29 10:14:19 +01:00
BUG # 17631 SHOW TABLE STATUS reports wrong engine
This commit is contained in:
parent
70f8b397c5
commit
55a8eb95f2
5 changed files with 38 additions and 3 deletions
|
@ -642,7 +642,7 @@ drop table t1;
|
|||
create table t1 (a int) engine=innodb partition by hash(a) ;
|
||||
show table status like 't1';
|
||||
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
|
||||
t1 PARTITION 10 Compact 2 8192 16384 0 0 0 NULL NULL NULL NULL latin1_swedish_ci NULL
|
||||
t1 InnoDB 10 Compact 2 8192 16384 0 0 0 NULL NULL NULL NULL latin1_swedish_ci NULL partitioned
|
||||
drop table t1;
|
||||
create table t2 (s1 int not null auto_increment, primary key (s1)) partition by list (s1) (partition p1 values in (1),partition p2 values in (2),partition p3 values in (3),partition p4 values in (4));
|
||||
insert into t2 values (null),(null),(null);
|
||||
|
@ -819,4 +819,14 @@ explain partitions select * from t1 where a is null or a < 0 or a > 1;
|
|||
id select_type table partitions type possible_keys key key_len ref rows Extra
|
||||
1 SIMPLE t1 pn,p2 ALL NULL NULL NULL NULL 2 Using where
|
||||
drop table t1;
|
||||
CREATE TABLE t1 (id INT NOT NULL PRIMARY KEY, name VARCHAR(20))
|
||||
ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
PARTITION BY RANGE(id)
|
||||
(PARTITION p0 VALUES LESS THAN (10) ENGINE = MyISAM,
|
||||
PARTITION p1 VALUES LESS THAN (20) ENGINE = MyISAM,
|
||||
PARTITION p2 VALUES LESS THAN (30) ENGINE = MyISAM);
|
||||
SHOW TABLE STATUS;
|
||||
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
|
||||
t1 MyISAM 10 Dynamic 0 0 0 0 0 0 NULL NULL NULL NULL latin1_swedish_ci NULL partitioned
|
||||
DROP TABLE t1;
|
||||
End of 5.1 tests
|
||||
|
|
|
@ -924,4 +924,17 @@ select * from t1 where a is null or a < 0 or a > 1;
|
|||
explain partitions select * from t1 where a is null or a < 0 or a > 1;
|
||||
drop table t1;
|
||||
|
||||
#
|
||||
#Bug# 17631 SHOW TABLE STATUS reports wrong engine
|
||||
#
|
||||
CREATE TABLE t1 (id INT NOT NULL PRIMARY KEY, name VARCHAR(20))
|
||||
ENGINE=MyISAM DEFAULT CHARSET=latin1
|
||||
PARTITION BY RANGE(id)
|
||||
(PARTITION p0 VALUES LESS THAN (10) ENGINE = MyISAM,
|
||||
PARTITION p1 VALUES LESS THAN (20) ENGINE = MyISAM,
|
||||
PARTITION p2 VALUES LESS THAN (30) ENGINE = MyISAM);
|
||||
--replace_column 6 0 7 0 8 0 9 0 12 NULL 13 NULL 14 NULL
|
||||
SHOW TABLE STATUS;
|
||||
DROP TABLE t1;
|
||||
|
||||
--echo End of 5.1 tests
|
||||
|
|
|
@ -257,6 +257,13 @@ void ha_partition::init_handler_variables()
|
|||
}
|
||||
|
||||
|
||||
const char *ha_partition::table_type() const
|
||||
{
|
||||
// we can do this since we only support a single engine type
|
||||
return m_file[0]->table_type();
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
Destructor method
|
||||
|
||||
|
|
|
@ -524,8 +524,7 @@ public:
|
|||
virtual const char *index_type(uint inx);
|
||||
|
||||
/* The name of the table type that will be used for display purposes */
|
||||
virtual const char *table_type() const
|
||||
{ return "PARTITION"; }
|
||||
virtual const char *table_type() const;
|
||||
|
||||
/* The name of the row type used for the underlying tables. */
|
||||
virtual enum row_type get_row_type() const;
|
||||
|
|
|
@ -2719,6 +2719,12 @@ static int get_schema_tables_record(THD *thd, struct st_table_list *tables,
|
|||
ptr=strxmov(ptr, " row_format=",
|
||||
ha_row_type[(uint) share->row_type],
|
||||
NullS);
|
||||
#ifdef WITH_PARTITION_STORAGE_ENGINE
|
||||
if (share->db_type == &partition_hton &&
|
||||
share->partition_info != NULL &&
|
||||
((partition_info*)share->partition_info)->no_parts > 0)
|
||||
ptr= strmov(ptr, " partitioned");
|
||||
#endif
|
||||
table->field[19]->store(option_buff+1,
|
||||
(ptr == option_buff ? 0 :
|
||||
(uint) (ptr-option_buff)-1), cs);
|
||||
|
|
Loading…
Add table
Reference in a new issue