summaryrefslogtreecommitdiff
path: root/sql/handler.h
diff options
context:
space:
mode:
authoreric@mysql.com <>2005-09-30 16:26:48 -0700
committereric@mysql.com <>2005-09-30 16:26:48 -0700
commit5008a5f208dd7d1c94755fb5051401473465276f (patch)
treec1894e3d927782633ebebf8b571ef7b84d2689fe /sql/handler.h
parent16cd4bd3321e0c21e6867898f5017074fbb6ce57 (diff)
downloadmariadb-git-5008a5f208dd7d1c94755fb5051401473465276f.tar.gz
Move handler specific options into handlerton flag check
BUG#13108
Diffstat (limited to 'sql/handler.h')
-rw-r--r--sql/handler.h13
1 files changed, 5 insertions, 8 deletions
diff --git a/sql/handler.h b/sql/handler.h
index 50f697bc980..9d955d1be58 100644
--- a/sql/handler.h
+++ b/sql/handler.h
@@ -377,8 +377,10 @@ struct show_table_alias_st {
};
/* Possible flags of a handlerton */
-#define HTON_NO_FLAGS 0
-#define HTON_CLOSE_CURSORS_AT_COMMIT 1
+#define HTON_NO_FLAGS 0
+#define HTON_CLOSE_CURSORS_AT_COMMIT (1 << 0)
+#define HTON_ALTER_NOT_SUPPORTED (1 << 1)
+#define HTON_CAN_RECREATE (1 << 2)
typedef struct st_thd_trans
{
@@ -848,18 +850,13 @@ extern ulong total_ha, total_ha_2pc;
#define ha_commit(thd) (ha_commit_trans((thd), TRUE))
#define ha_rollback(thd) (ha_rollback_trans((thd), TRUE))
-#define ha_supports_generate(T) (T != DB_TYPE_INNODB && \
- T != DB_TYPE_BERKELEY_DB && \
- T != DB_TYPE_ARCHIVE_DB && \
- T != DB_TYPE_FEDERATED_DB && \
- T != DB_TYPE_NDBCLUSTER)
-
/* lookups */
enum db_type ha_resolve_by_name(const char *name, uint namelen);
const char *ha_get_storage_engine(enum db_type db_type);
handler *get_new_handler(TABLE *table, enum db_type db_type);
enum db_type ha_checktype(THD *thd, enum db_type database_type,
bool no_substitute, bool report_error);
+bool ha_check_storage_engine_flag(enum db_type db_type, uint32 flag);
/* basic stuff */
int ha_init(void);