summaryrefslogtreecommitdiff
path: root/storage
diff options
context:
space:
mode:
Diffstat (limited to 'storage')
-rw-r--r--storage/innobase/handler/ha_innodb.cc36
-rw-r--r--storage/innobase/handler/handler0alter.cc8
-rw-r--r--storage/innobase/include/ha_prototypes.h5
-rw-r--r--storage/innobase/lock/lock0lock.cc2
-rw-r--r--storage/innobase/lock/lock0wait.cc2
-rw-r--r--storage/innobase/row/row0upd.cc4
-rw-r--r--storage/innobase/trx/trx0trx.cc2
-rw-r--r--storage/innobase/trx/trx0undo.cc24
-rw-r--r--storage/perfschema/ha_perfschema.cc5
-rw-r--r--storage/spider/ha_spider.cc3
-rw-r--r--storage/tokudb/ha_tokudb.cc14
-rw-r--r--storage/tokudb/mysql-test/tokudb_bugs/r/db938.result5
-rw-r--r--storage/xtradb/CMakeLists.txt3
-rw-r--r--storage/xtradb/handler/ha_innodb.cc10
-rw-r--r--storage/xtradb/include/ha_prototypes.h1
15 files changed, 35 insertions, 89 deletions
diff --git a/storage/innobase/handler/ha_innodb.cc b/storage/innobase/handler/ha_innodb.cc
index f8c1273375f..a7ce1264a05 100644
--- a/storage/innobase/handler/ha_innodb.cc
+++ b/storage/innobase/handler/ha_innodb.cc
@@ -2151,8 +2151,6 @@ convert_error_code_to_mysql(
"depth of %d. Please "
"drop extra constraints and try "
"again", DICT_FK_MAX_RECURSIVE_LOAD);
-
- my_error(ER_FK_DEPTH_EXCEEDED, MYF(0), FK_MAX_CASCADE_DEL);
return(HA_ERR_FK_DEPTH_EXCEEDED);
case DB_CANT_CREATE_GEOMETRY_OBJECT:
@@ -2322,9 +2320,9 @@ convert_error_code_to_mysql(
case DB_FTS_TOO_MANY_WORDS_IN_PHRASE:
return(HA_ERR_FTS_TOO_MANY_WORDS_IN_PHRASE);
case DB_WRONG_FILE_NAME:
- return(HA_ERR_WRONG_FILE_NAME);
+ return(HA_ERR_GENERIC); // when can this happen?
case DB_COMPUTE_VALUE_FAILED:
- return(HA_ERR_COMPUTE_FAILED);
+ return(HA_ERR_GENERIC); // impossible
}
}
@@ -9068,8 +9066,6 @@ ha_innobase::write_row(
++trx->will_lock;
}
- ha_statistic_increment(&SSV::ha_write_count);
-
/* Step-2: Intermediate commit if original operation involves ALTER
table with algorithm = copy. Intermediate commit ease pressure on
recovery if server crashes while ALTER is active. */
@@ -9996,8 +9992,6 @@ ha_innobase::update_row(
}
}
- ha_statistic_increment(&SSV::ha_update_count);
-
upd_t* uvect;
if (m_prebuilt->upd_node) {
@@ -10153,8 +10147,6 @@ ha_innobase::delete_row(
++trx->will_lock;
}
- ha_statistic_increment(&SSV::ha_delete_count);
-
if (!m_prebuilt->upd_node) {
row_get_prebuilt_update_vector(m_prebuilt);
}
@@ -10471,8 +10463,6 @@ ha_innobase::index_read(
ut_a(m_prebuilt->trx == thd_to_trx(m_user_thd));
ut_ad(key_len != 0 || find_flag != HA_READ_KEY_EXACT);
- ha_statistic_increment(&SSV::ha_read_key_count);
-
dict_index_t* index = m_prebuilt->index;
if (index == NULL || dict_index_is_corrupted(index)) {
@@ -10964,8 +10954,6 @@ ha_innobase::index_next(
uchar* buf) /*!< in/out: buffer for next row in MySQL
format */
{
- ha_statistic_increment(&SSV::ha_read_next_count);
-
return(general_fetch(buf, ROW_SEL_NEXT, 0));
}
@@ -10980,8 +10968,6 @@ ha_innobase::index_next_same(
const uchar* key, /*!< in: key value */
uint keylen) /*!< in: key value length */
{
- ha_statistic_increment(&SSV::ha_read_next_count);
-
return(general_fetch(buf, ROW_SEL_NEXT, m_last_match_mode));
}
@@ -10995,8 +10981,6 @@ ha_innobase::index_prev(
/*====================*/
uchar* buf) /*!< in/out: buffer for previous row in MySQL format */
{
- ha_statistic_increment(&SSV::ha_read_prev_count);
-
return(general_fetch(buf, ROW_SEL_PREV, 0));
}
@@ -11012,8 +10996,6 @@ ha_innobase::index_first(
{
DBUG_ENTER("index_first");
- ha_statistic_increment(&SSV::ha_read_first_count);
-
int error = index_read(buf, NULL, 0, HA_READ_AFTER_KEY);
/* MySQL does not seem to allow this to return HA_ERR_KEY_NOT_FOUND */
@@ -11037,8 +11019,6 @@ ha_innobase::index_last(
{
DBUG_ENTER("index_last");
- ha_statistic_increment(&SSV::ha_read_last_count);
-
int error = index_read(buf, NULL, 0, HA_READ_BEFORE_KEY);
/* MySQL does not seem to allow this to return HA_ERR_KEY_NOT_FOUND */
@@ -11116,8 +11096,6 @@ ha_innobase::rnd_next(
DBUG_ENTER("rnd_next");
- ha_statistic_increment(&SSV::ha_read_rnd_next_count);
-
if (m_start_of_scan) {
error = index_first(buf);
@@ -11149,8 +11127,6 @@ ha_innobase::rnd_pos(
DBUG_ENTER("rnd_pos");
DBUG_DUMP("key", pos, ref_length);
- ha_statistic_increment(&SSV::ha_read_rnd_count);
-
ut_a(m_prebuilt->trx == thd_to_trx(ha_thd()));
/* Note that we assume the length of the row reference is fixed
@@ -12193,7 +12169,6 @@ create_table_info_t::create_table_def()
ulint long_true_varchar;
ulint charset_no;
ulint i;
- ulint j = 0;
ulint doc_id_col = 0;
ibool has_doc_id_col = FALSE;
mem_heap_t* heap;
@@ -12459,6 +12434,7 @@ err_col:
}
#ifdef MYSQL_VIRTUAL_COLUMNS
if (num_v) {
+ ulint j = 0;
for (i = 0; i < n_cols; i++) {
dict_v_col_t* v_col;
@@ -14366,7 +14342,7 @@ create_table_info_t::prepare_create_table(
}
if (high_level_read_only && !is_intrinsic_temp_table()) {
- DBUG_RETURN(HA_ERR_INNODB_READ_ONLY);
+ DBUG_RETURN(HA_ERR_TABLE_READONLY);
}
DBUG_RETURN(parse_table_name(name));
@@ -23994,7 +23970,6 @@ static struct st_mysql_sys_var* innobase_system_variables[]= {
MYSQL_SYSVAR(master_thread_disabled_debug),
MYSQL_SYSVAR(sync_debug),
#endif /* UNIV_DEBUG */
- MYSQL_SYSVAR(tmpdir),
MYSQL_SYSVAR(force_primary_key),
MYSQL_SYSVAR(fatal_semaphore_wait_threshold),
/* Table page compression feature */
@@ -24853,7 +24828,8 @@ innodb_buffer_pool_size_validate(
if (srv_buf_pool_old_size != srv_buf_pool_size) {
buf_pool_mutex_exit_all();
- my_error(ER_BUFPOOL_RESIZE_INPROGRESS, MYF(0));
+ my_printf_error(ER_WRONG_ARGUMENTS,
+ "Another buffer pool resize is already in progress.", MYF(0));
return(1);
}
diff --git a/storage/innobase/handler/handler0alter.cc b/storage/innobase/handler/handler0alter.cc
index 10051fc6612..ba95c9760a6 100644
--- a/storage/innobase/handler/handler0alter.cc
+++ b/storage/innobase/handler/handler0alter.cc
@@ -598,7 +598,7 @@ ha_innobase::check_if_supported_inplace_alter(
|| srv_sys_space.created_new_raw()
|| srv_force_recovery) {
ha_alter_info->unsupported_reason = (srv_force_recovery)?
- innobase_get_err_msg(ER_INNODB_FORCED_RECOVERY):
+ "Operation not allowed when innodb_forced_recovery > 0." :
innobase_get_err_msg(ER_READ_ONLY_MODE);
DBUG_RETURN(HA_ALTER_INPLACE_NOT_SUPPORTED);
@@ -7985,7 +7985,8 @@ commit_try_rebuild(
/* Normally, n_ref_count must be 1, because purge
cannot be executing on this very table as we are
holding dict_operation_lock X-latch. */
- my_error(ER_TABLE_REFERENCED,MYF(0));
+ my_printf_error(ER_ILLEGAL_HA, "Cannot complete the operation "
+ "because table is referenced by another connection.", MYF(0));
DBUG_RETURN(true);
}
@@ -9000,7 +9001,8 @@ foreign_fail:
row_mysql_unlock_data_dictionary(trx);
trx_free_for_mysql(trx);
- my_error(ER_TABLE_REFERENCED,MYF(0));
+ my_printf_error(ER_ILLEGAL_HA, "Cannot complete the operation "
+ "because table is referenced by another connection.", MYF(0));
DBUG_RETURN(true);
}
diff --git a/storage/innobase/include/ha_prototypes.h b/storage/innobase/include/ha_prototypes.h
index 837c377f448..6613d35f162 100644
--- a/storage/innobase/include/ha_prototypes.h
+++ b/storage/innobase/include/ha_prototypes.h
@@ -622,12 +622,7 @@ Used when writing either a prepare or commit record to the log
buffer.
@return the durability property. */
-/* JAN: TODO: missing 5.7 header */
-#ifdef HAVE_DUR_PROP_H
#include <dur_prop.h>
-#else
-#include <my_base.h>
-#endif
enum durability_properties
thd_requested_durability(
diff --git a/storage/innobase/lock/lock0lock.cc b/storage/innobase/lock/lock0lock.cc
index b4851ede4ba..927c3d5ff2c 100644
--- a/storage/innobase/lock/lock0lock.cc
+++ b/storage/innobase/lock/lock0lock.cc
@@ -58,7 +58,7 @@ Created 5/7/1996 Heikki Tuuri
#include <set>
#ifdef WITH_WSREP
-#include "wsrep_thd.h"
+#include <mysql/service_wsrep.h>
#endif /* WITH_WSREP */
/** Total number of cached record locks */
diff --git a/storage/innobase/lock/lock0wait.cc b/storage/innobase/lock/lock0wait.cc
index 7536fd88c42..0774182d934 100644
--- a/storage/innobase/lock/lock0wait.cc
+++ b/storage/innobase/lock/lock0wait.cc
@@ -28,6 +28,7 @@ Created 25/5/2010 Sunny Bains
#include "ha_prototypes.h"
#include <mysql/service_thd_wait.h>
+#include <mysql/service_wsrep.h>
#include "srv0mon.h"
#include "que0que.h"
@@ -35,7 +36,6 @@ Created 25/5/2010 Sunny Bains
#include "row0mysql.h"
#include "srv0start.h"
#include "lock0priv.h"
-#include "wsrep_thd.h"
/*********************************************************************//**
Print the contents of the lock_sys_t::waiting_threads array. */
diff --git a/storage/innobase/row/row0upd.cc b/storage/innobase/row/row0upd.cc
index 108e3d5db79..fb86c22fdd6 100644
--- a/storage/innobase/row/row0upd.cc
+++ b/storage/innobase/row/row0upd.cc
@@ -62,10 +62,6 @@ Created 12/27/1996 Heikki Tuuri
#include <mysql/plugin.h>
#include <mysql/service_wsrep.h>
-#ifdef WITH_WSREP
-extern my_bool wsrep_debug;
-#endif
-
/* What kind of latch and lock can we assume when the control comes to
-------------------------------------------------------------------
an update node?
diff --git a/storage/innobase/trx/trx0trx.cc b/storage/innobase/trx/trx0trx.cc
index 4bdd3b2bec5..b209412903f 100644
--- a/storage/innobase/trx/trx0trx.cc
+++ b/storage/innobase/trx/trx0trx.cc
@@ -3028,7 +3028,7 @@ trx_get_trx_by_xid_low(
/* Invalidate the XID, so that subsequent calls
will not find it. */
- trx->xid->reset();
+ trx->xid->null();
break;
}
}
diff --git a/storage/innobase/trx/trx0undo.cc b/storage/innobase/trx/trx0undo.cc
index bd2cc5ab040..932151b948d 100644
--- a/storage/innobase/trx/trx0undo.cc
+++ b/storage/innobase/trx/trx0undo.cc
@@ -633,19 +633,19 @@ trx_undo_write_xid(
mtr_t* mtr) /*!< in: mtr */
{
mlog_write_ulint(log_hdr + TRX_UNDO_XA_FORMAT,
- static_cast<ulint>(xid->get_format_id()),
+ static_cast<ulint>(xid->formatID),
MLOG_4BYTES, mtr);
mlog_write_ulint(log_hdr + TRX_UNDO_XA_TRID_LEN,
- static_cast<ulint>(xid->get_gtrid_length()),
+ static_cast<ulint>(xid->gtrid_length),
MLOG_4BYTES, mtr);
mlog_write_ulint(log_hdr + TRX_UNDO_XA_BQUAL_LEN,
- static_cast<ulint>(xid->get_bqual_length()),
+ static_cast<ulint>(xid->bqual_length),
MLOG_4BYTES, mtr);
mlog_write_string(log_hdr + TRX_UNDO_XA_XID,
- reinterpret_cast<const byte*>(xid->get_data()),
+ reinterpret_cast<const byte*>(xid->data),
XIDDATASIZE, mtr);
}
@@ -658,16 +658,16 @@ trx_undo_read_xid(
trx_ulogf_t* log_hdr,/*!< in: undo log header */
XID* xid) /*!< out: X/Open XA Transaction Identification */
{
- xid->set_format_id(static_cast<long>(mach_read_from_4(
- log_hdr + TRX_UNDO_XA_FORMAT)));
+ xid->formatID=static_cast<long>(mach_read_from_4(
+ log_hdr + TRX_UNDO_XA_FORMAT));
- xid->set_gtrid_length(static_cast<long>(mach_read_from_4(
- log_hdr + TRX_UNDO_XA_TRID_LEN)));
+ xid->gtrid_length=static_cast<long>(mach_read_from_4(
+ log_hdr + TRX_UNDO_XA_TRID_LEN));
- xid->set_bqual_length(static_cast<long>(mach_read_from_4(
- log_hdr + TRX_UNDO_XA_BQUAL_LEN)));
+ xid->bqual_length=static_cast<long>(mach_read_from_4(
+ log_hdr + TRX_UNDO_XA_BQUAL_LEN));
- xid->set_data(log_hdr + TRX_UNDO_XA_XID, XIDDATASIZE);
+ memcpy(xid->data, log_hdr + TRX_UNDO_XA_XID, XIDDATASIZE);
}
/***************************************************************//**
@@ -1338,7 +1338,7 @@ trx_undo_mem_create_at_db_start(
/* Read X/Open XA transaction identification if it exists, or
set it to NULL. */
- xid.reset();
+ xid.null();
if (xid_exists == TRUE) {
trx_undo_read_xid(undo_header, &xid);
diff --git a/storage/perfschema/ha_perfschema.cc b/storage/perfschema/ha_perfschema.cc
index 2a87ffba999..87ce386a7cd 100644
--- a/storage/perfschema/ha_perfschema.cc
+++ b/storage/perfschema/ha_perfschema.cc
@@ -271,7 +271,6 @@ int ha_perfschema::write_row(uchar *buf)
DBUG_RETURN(HA_ERR_WRONG_COMMAND);
DBUG_ASSERT(m_table_share);
- ha_statistic_increment(&SSV::ha_write_count);
result= m_table_share->write_row(table, buf, table->field);
DBUG_RETURN(result);
}
@@ -297,7 +296,6 @@ int ha_perfschema::update_row(const uchar *old_data, uchar *new_data)
DBUG_RETURN(0);
DBUG_ASSERT(m_table);
- ha_statistic_increment(&SSV::ha_update_count);
int result= m_table->update_row(table, old_data, new_data, table->field);
DBUG_RETURN(result);
}
@@ -309,7 +307,6 @@ int ha_perfschema::delete_row(const uchar *buf)
DBUG_RETURN(HA_ERR_WRONG_COMMAND);
DBUG_ASSERT(m_table);
- ha_statistic_increment(&SSV::ha_delete_count);
int result= m_table->delete_row(table, buf, table->field);
DBUG_RETURN(result);
}
@@ -354,7 +351,6 @@ int ha_perfschema::rnd_next(uchar *buf)
}
DBUG_ASSERT(m_table);
- ha_statistic_increment(&SSV::ha_read_rnd_next_count);
int result= m_table->rnd_next();
if (result == 0)
@@ -386,7 +382,6 @@ int ha_perfschema::rnd_pos(uchar *buf, uchar *pos)
}
DBUG_ASSERT(m_table);
- ha_statistic_increment(&SSV::ha_read_rnd_count);
int result= m_table->rnd_pos(pos);
if (result == 0)
result= m_table->read_row(table, buf, table->field);
diff --git a/storage/spider/ha_spider.cc b/storage/spider/ha_spider.cc
index 877e2621f5f..adb4c5c9bcb 100644
--- a/storage/spider/ha_spider.cc
+++ b/storage/spider/ha_spider.cc
@@ -9559,7 +9559,6 @@ int ha_spider::write_row(
DBUG_RETURN(error_num);
}
#endif
- ha_statistic_increment(&SSV::ha_write_count);
#if defined(MARIADB_BASE_VERSION) && MYSQL_VERSION_ID >= 100000
#else
if (table->timestamp_field_type & TIMESTAMP_AUTO_SET_ON_INSERT)
@@ -9795,7 +9794,6 @@ int ha_spider::update_row(
DBUG_RETURN(error_num);
}
#endif
- ha_statistic_increment(&SSV::ha_update_count);
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
do_direct_update = FALSE;
#endif
@@ -10138,7 +10136,6 @@ int ha_spider::delete_row(
DBUG_RETURN(error_num);
}
#endif
- ha_statistic_increment(&SSV::ha_delete_count);
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
do_direct_update = FALSE;
#endif
diff --git a/storage/tokudb/ha_tokudb.cc b/storage/tokudb/ha_tokudb.cc
index 79d85a9b77c..c10dfc0e76e 100644
--- a/storage/tokudb/ha_tokudb.cc
+++ b/storage/tokudb/ha_tokudb.cc
@@ -3988,7 +3988,6 @@ int ha_tokudb::write_row(uchar * record) {
// some crap that needs to be done because MySQL does not properly abstract
// this work away from us, namely filling in auto increment and setting auto timestamp
//
- ha_statistic_increment(&SSV::ha_write_count);
#if MYSQL_VERSION_ID < 50600
if (table->timestamp_field_type & TIMESTAMP_AUTO_SET_ON_INSERT) {
table->timestamp_field->set_time();
@@ -4174,7 +4173,6 @@ int ha_tokudb::update_row(const uchar * old_row, uchar * new_row) {
memset((void *) &prim_row, 0, sizeof(prim_row));
memset((void *) &old_prim_row, 0, sizeof(old_prim_row));
- ha_statistic_increment(&SSV::ha_update_count);
#if MYSQL_VERSION_ID < 50600
if (table->timestamp_field_type & TIMESTAMP_AUTO_SET_ON_UPDATE) {
table->timestamp_field->set_time();
@@ -4342,8 +4340,6 @@ int ha_tokudb::delete_row(const uchar * record) {
uint curr_num_DBs;
tokudb_trx_data* trx = (tokudb_trx_data *) thd_get_ha_data(thd, tokudb_hton);
- ha_statistic_increment(&SSV::ha_delete_count);
-
//
// grab reader lock on numDBs_lock
//
@@ -4883,7 +4879,6 @@ int ha_tokudb::read_full_row(uchar * buf) {
//
int ha_tokudb::index_next_same(uchar* buf, const uchar* key, uint keylen) {
TOKUDB_HANDLER_DBUG_ENTER("");
- ha_statistic_increment(&SSV::ha_read_next_count);
DBT curr_key;
DBT found_key;
@@ -4972,7 +4967,6 @@ int ha_tokudb::index_read(
cursor->c_remove_restriction(cursor);
}
- ha_statistic_increment(&SSV::ha_read_key_count);
memset((void *) &row, 0, sizeof(row));
info.ha = this;
@@ -5632,7 +5626,6 @@ cleanup:
//
int ha_tokudb::index_next(uchar * buf) {
TOKUDB_HANDLER_DBUG_ENTER("");
- ha_statistic_increment(&SSV::ha_read_next_count);
int error = get_next(buf, 1, NULL, key_read);
TOKUDB_HANDLER_DBUG_RETURN(error);
}
@@ -5654,7 +5647,6 @@ int ha_tokudb::index_read_last(uchar * buf, const uchar * key, uint key_len) {
//
int ha_tokudb::index_prev(uchar * buf) {
TOKUDB_HANDLER_DBUG_ENTER("");
- ha_statistic_increment(&SSV::ha_read_prev_count);
int error = get_next(buf, -1, NULL, key_read);
TOKUDB_HANDLER_DBUG_RETURN(error);
}
@@ -5678,8 +5670,6 @@ int ha_tokudb::index_first(uchar * buf) {
tokudb_trx_data* trx = (tokudb_trx_data *) thd_get_ha_data(thd, tokudb_hton);;
HANDLE_INVALID_CURSOR();
- ha_statistic_increment(&SSV::ha_read_first_count);
-
info.ha = this;
info.buf = buf;
info.keynr = tokudb_active_index;
@@ -5722,8 +5712,6 @@ int ha_tokudb::index_last(uchar * buf) {
tokudb_trx_data* trx = (tokudb_trx_data *) thd_get_ha_data(thd, tokudb_hton);;
HANDLE_INVALID_CURSOR();
- ha_statistic_increment(&SSV::ha_read_last_count);
-
info.ha = this;
info.buf = buf;
info.keynr = tokudb_active_index;
@@ -5803,7 +5791,6 @@ int ha_tokudb::rnd_end() {
//
int ha_tokudb::rnd_next(uchar * buf) {
TOKUDB_HANDLER_DBUG_ENTER("");
- ha_statistic_increment(&SSV::ha_read_rnd_next_count);
int error = get_next(buf, 1, NULL, false);
TOKUDB_HANDLER_DBUG_RETURN(error);
}
@@ -5909,7 +5896,6 @@ int ha_tokudb::rnd_pos(uchar * buf, uchar * pos) {
DBT* key = get_pos(&db_pos, pos);
unpack_entire_row = true;
- ha_statistic_increment(&SSV::ha_read_rnd_count);
tokudb_active_index = MAX_KEY;
// test rpl slave by inducing a delay before the point query
diff --git a/storage/tokudb/mysql-test/tokudb_bugs/r/db938.result b/storage/tokudb/mysql-test/tokudb_bugs/r/db938.result
index 779d458221b..b64c240b1ea 100644
--- a/storage/tokudb/mysql-test/tokudb_bugs/r/db938.result
+++ b/storage/tokudb/mysql-test/tokudb_bugs/r/db938.result
@@ -19,10 +19,15 @@ insert into t1(b,c) values(0,0), (1,1), (2,2), (3,3);
select database_name, table_name, job_type, job_params, scheduler from information_schema.tokudb_background_job_status;
database_name table_name job_type job_params scheduler
test t1 TOKUDB_ANALYZE_MODE_STANDARD TOKUDB_ANALYZE_DELETE_FRACTION=1.000000; TOKUDB_ANALYZE_TIME=0; TOKUDB_ANALYZE_THROTTLE=0; AUTO
+connect conn1, localhost, root;
set DEBUG_SYNC = 'tokudb_after_truncate_all_dictionarys SIGNAL closed WAIT_FOR done';
TRUNCATE TABLE t1;
+connection default;
set global tokudb_debug_pause_background_job_manager = FALSE;
set DEBUG_SYNC = 'now SIGNAL done';
+connection conn1;
+connection default;
+disconnect conn1;
drop table t1;
set session tokudb_auto_analyze = @orig_auto_analyze;
set session tokudb_analyze_in_background = @orig_in_background;
diff --git a/storage/xtradb/CMakeLists.txt b/storage/xtradb/CMakeLists.txt
index a55671504ea..a9a4d422143 100644
--- a/storage/xtradb/CMakeLists.txt
+++ b/storage/xtradb/CMakeLists.txt
@@ -505,7 +505,8 @@ IF(CMAKE_SYSTEM_PROCESSOR MATCHES "ppc64le")
ENDIF()
MYSQL_ADD_PLUGIN(xtradb ${INNOBASE_SOURCES} STORAGE_ENGINE
- DISABLED RECOMPILE_FOR_EMBEDDED
+ DISABLED # until upgraded to 5.7, see also mysql-test/include/have_xtradb.combinations
+ RECOMPILE_FOR_EMBEDDED
LINK_LIBRARIES ${ZLIB_LIBRARY} ${LINKER_SCRIPT})
IF(TARGET xtradb AND NOT XTRADB_OK)
diff --git a/storage/xtradb/handler/ha_innodb.cc b/storage/xtradb/handler/ha_innodb.cc
index 55832150f52..d5b2811fc7f 100644
--- a/storage/xtradb/handler/ha_innodb.cc
+++ b/storage/xtradb/handler/ha_innodb.cc
@@ -8540,8 +8540,6 @@ ha_innobase::write_row(
++trx->will_lock;
}
- ha_statistic_increment(&SSV::ha_write_count);
-
if (share->ib_table != prebuilt->table) {
fprintf(stderr,
"InnoDB: Warning: share->ib_table %p prebuilt->table %p table %s is_corrupt %lu.",
@@ -9313,8 +9311,6 @@ ha_innobase::update_row(
}
}
- ha_statistic_increment(&SSV::ha_update_count);
-
if (share->ib_table != prebuilt->table) {
fprintf(stderr,
"InnoDB: Warning: share->ib_table %p prebuilt->table %p table %s is_corrupt %lu.",
@@ -9472,8 +9468,6 @@ ha_innobase::delete_row(
++trx->will_lock;
}
- ha_statistic_increment(&SSV::ha_delete_count);
-
if (UNIV_UNLIKELY(share && share->ib_table
&& share->ib_table->is_corrupt)) {
DBUG_RETURN(HA_ERR_CRASHED);
@@ -9772,8 +9766,6 @@ ha_innobase::index_read(
ut_a(prebuilt->trx == thd_to_trx(user_thd));
ut_ad(key_len != 0 || find_flag != HA_READ_KEY_EXACT);
- ha_statistic_increment(&SSV::ha_read_key_count);
-
if (UNIV_UNLIKELY(srv_pass_corrupt_table <= 1 && share
&& share->ib_table && share->ib_table->is_corrupt)) {
DBUG_RETURN(HA_ERR_CRASHED);
@@ -20427,7 +20419,7 @@ static MYSQL_SYSVAR_BOOL(buffer_pool_load_abort, innodb_buffer_pool_load_abort,
static MYSQL_SYSVAR_BOOL(buffer_pool_load_at_startup, srv_buffer_pool_load_at_startup,
PLUGIN_VAR_RQCMDARG | PLUGIN_VAR_READONLY,
"Load the buffer pool from a file named @@innodb_buffer_pool_filename",
- NULL, NULL, TRUE);
+ NULL, NULL, FALSE);
static MYSQL_SYSVAR_BOOL(defragment, srv_defragment,
PLUGIN_VAR_RQCMDARG,
diff --git a/storage/xtradb/include/ha_prototypes.h b/storage/xtradb/include/ha_prototypes.h
index 077c00d8eb0..cadac675d70 100644
--- a/storage/xtradb/include/ha_prototypes.h
+++ b/storage/xtradb/include/ha_prototypes.h
@@ -32,6 +32,7 @@ Created 5/11/2006 Osku Salerma
#include "my_sys.h"
#include "m_string.h"
#include "my_base.h"
+#include "dur_prop.h"
#ifndef UNIV_INNOCHECKSUM
#include "mysqld_error.h"