lpbug#665028 SHOW STORAGE ENGINES shows incorrect Transaction support for Aria
don't fill in handlerton::commit member, as it's not used and makes MySQL believe that Aria is transactional. Fix the TRANSACTIONAL=1 warning.
This commit is contained in:
parent
6c958d6e80
commit
fda18d8fa2
@ -1,6 +1,6 @@
|
|||||||
select * from INFORMATION_SCHEMA.ENGINES where ENGINE="ARIA";
|
select * from INFORMATION_SCHEMA.ENGINES where ENGINE="ARIA";
|
||||||
ENGINE SUPPORT COMMENT TRANSACTIONS XA SAVEPOINTS
|
ENGINE SUPPORT COMMENT TRANSACTIONS XA SAVEPOINTS
|
||||||
Aria YES Crash-safe tables with MyISAM heritage YES NO NO
|
Aria YES Crash-safe tables with MyISAM heritage NO NO NO
|
||||||
set global storage_engine=aria;
|
set global storage_engine=aria;
|
||||||
set session storage_engine=aria;
|
set session storage_engine=aria;
|
||||||
set global aria_page_checksum=0;
|
set global aria_page_checksum=0;
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
select * from INFORMATION_SCHEMA.ENGINES where ENGINE="ARIA";
|
select * from INFORMATION_SCHEMA.ENGINES where ENGINE="ARIA";
|
||||||
ENGINE SUPPORT COMMENT TRANSACTIONS XA SAVEPOINTS
|
ENGINE SUPPORT COMMENT TRANSACTIONS XA SAVEPOINTS
|
||||||
Aria YES Crash-safe tables with MyISAM heritage YES NO NO
|
Aria YES Crash-safe tables with MyISAM heritage NO NO NO
|
||||||
set global storage_engine=aria;
|
set global storage_engine=aria;
|
||||||
set session storage_engine=aria;
|
set session storage_engine=aria;
|
||||||
set global aria_page_checksum=0;
|
set global aria_page_checksum=0;
|
||||||
|
@ -3929,7 +3929,11 @@ bool mysql_create_table_no_lock(THD *thd,
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Give warnings for not supported table options */
|
/* Give warnings for not supported table options */
|
||||||
if (create_info->transactional && !file->ht->commit)
|
#if defined(WITH_ARIA_STORAGE_ENGINE)
|
||||||
|
extern handlerton *maria_hton;
|
||||||
|
if (file->ht != maria_hton)
|
||||||
|
#endif
|
||||||
|
if (create_info->transactional)
|
||||||
push_warning_printf(thd, MYSQL_ERROR::WARN_LEVEL_ERROR,
|
push_warning_printf(thd, MYSQL_ERROR::WARN_LEVEL_ERROR,
|
||||||
ER_ILLEGAL_HA_CREATE_OPTION,
|
ER_ILLEGAL_HA_CREATE_OPTION,
|
||||||
ER(ER_ILLEGAL_HA_CREATE_OPTION),
|
ER(ER_ILLEGAL_HA_CREATE_OPTION),
|
||||||
|
@ -3302,6 +3302,9 @@ static int ha_maria_init(void *p)
|
|||||||
maria_hton->panic= maria_hton_panic;
|
maria_hton->panic= maria_hton_panic;
|
||||||
maria_hton->commit= maria_commit;
|
maria_hton->commit= maria_commit;
|
||||||
maria_hton->rollback= maria_rollback;
|
maria_hton->rollback= maria_rollback;
|
||||||
|
#ifdef MARIA_CANNOT_ROLLBACK
|
||||||
|
maria_hton->commit= 0;
|
||||||
|
#endif
|
||||||
maria_hton->flush_logs= maria_flush_logs;
|
maria_hton->flush_logs= maria_flush_logs;
|
||||||
maria_hton->show_status= maria_show_status;
|
maria_hton->show_status= maria_show_status;
|
||||||
/* TODO: decide if we support Maria being used for log tables */
|
/* TODO: decide if we support Maria being used for log tables */
|
||||||
|
Loading…
x
Reference in New Issue
Block a user