mirror of
https://github.com/MariaDB/server.git
synced 2025-01-15 19:42:28 +01:00
misc after-merge changes:
* remove new InnoDB-specific ER_ and HA_ERR_ codes * renamed few old ER_ and HA_ERR_ error messages to be less MyISAM-specific * remove duplicate enum definitions (durability_properties, icp_result) * move new mysql-test include files to their owner suite * rename xtradb.rdiff files to *-disabled * remove mistakenly committed helper perl module * remove long obsolete handler::ha_statistic_increment() method * restore the standard C xid_t structure to not have setters and getters * remove xid_t::reset that was cleaning too much * move MySQL-5.7 ER_ codes where they belong * fir innodb to include service_wsrep.h not internal wsrep headers * update tests and results
This commit is contained in:
parent
d8cbad069a
commit
d019af402c
47 changed files with 141 additions and 342 deletions
|
@ -497,24 +497,19 @@ enum ha_base_keytype {
|
|||
#define HA_ERR_DISK_FULL 189
|
||||
#define HA_ERR_INCOMPATIBLE_DEFINITION 190
|
||||
#define HA_ERR_FTS_TOO_MANY_WORDS_IN_PHRASE 191 /* Too many words in a phrase */
|
||||
#define HA_ERR_DECRYPTION_FAILED 192 /* Table encrypted but
|
||||
decypt failed */
|
||||
#define HA_ERR_DECRYPTION_FAILED 192 /* Table encrypted but decypt failed */
|
||||
#define HA_ERR_FK_DEPTH_EXCEEDED 193 /* FK cascade depth exceeded */
|
||||
#define HA_MISSING_CREATE_OPTION 194 /* Option Missing during Create */
|
||||
#define HA_ERR_SE_OUT_OF_MEMORY 195 /* Out of memory in storage engine */
|
||||
#define HA_ERR_TABLE_CORRUPT 196 /* Table/Clustered index is corrupted. */
|
||||
#define HA_ERR_QUERY_INTERRUPTED 197 /* The query was interrupted */
|
||||
#define HA_ERR_TABLESPACE_MISSING 198 /* Missing Tablespace */
|
||||
#define HA_ERR_TABLESPACE_IS_NOT_EMPTY 199 /* Tablespace is not empty */
|
||||
#define HA_ERR_WRONG_FILE_NAME 200 /* Invalid Filename */
|
||||
#define HA_ERR_NOT_ALLOWED_COMMAND 201 /* Operation is not allowed */
|
||||
#define HA_ERR_COMPUTE_FAILED 202 /* Compute generated column value failed */
|
||||
#define HA_ERR_INNODB_READ_ONLY 203 /* InnoDB is in read only mode */
|
||||
#define HA_ERR_LAST 203 /* Copy of last error nr * */
|
||||
#define HA_ERR_TABLESPACE_MISSING 194 /* Missing Tablespace */
|
||||
#define HA_ERR_LAST 194 /* Copy of last error nr * */
|
||||
|
||||
/* Number of different errors */
|
||||
#define HA_ERR_ERRORS (HA_ERR_LAST - HA_ERR_FIRST + 1)
|
||||
|
||||
/* aliases */
|
||||
#define HA_ERR_TABLE_CORRUPT HA_ERR_WRONG_IN_RECORD
|
||||
#define HA_ERR_QUERY_INTERRUPTED HA_ERR_ABORTED_BY_USER
|
||||
#define HA_ERR_NOT_ALLOWED_COMMAND HA_ERR_WRONG_COMMAND
|
||||
|
||||
/* Other constants */
|
||||
|
||||
#define HA_NAMELEN 64 /* Max length of saved filename */
|
||||
|
@ -643,17 +638,4 @@ C_MODE_START
|
|||
typedef void (* invalidator_by_filename)(const char * filename);
|
||||
C_MODE_END
|
||||
|
||||
|
||||
enum durability_properties
|
||||
{
|
||||
/*
|
||||
Preserves the durability properties defined by the engine */
|
||||
HA_REGULAR_DURABILITY= 0,
|
||||
/*
|
||||
Ignore the durability properties defined by the engine and
|
||||
write only in-memory entries.
|
||||
*/
|
||||
HA_IGNORE_DURABILITY= 1
|
||||
};
|
||||
|
||||
#endif /* _my_base_h */
|
||||
|
|
|
@ -23,16 +23,18 @@
|
|||
|
||||
static const char *handler_error_messages[]=
|
||||
{
|
||||
/* 120 */
|
||||
"Didn't find key on read or update",
|
||||
"Duplicate key on write or update",
|
||||
"Internal (unspecified) error in handler",
|
||||
"Someone has changed the row since it was read (while the table was locked to prevent it)",
|
||||
"Wrong index given to function",
|
||||
"Undefined handler error 125",
|
||||
"Index file is crashed",
|
||||
"Record file is crashed",
|
||||
"Index is corrupted",
|
||||
"Table file is corrupted",
|
||||
"Out of memory in engine",
|
||||
"Undefined handler error 129",
|
||||
/* 130 */
|
||||
"Incorrect file format",
|
||||
"Command not supported by database",
|
||||
"Old database file",
|
||||
|
@ -43,6 +45,7 @@ static const char *handler_error_messages[]=
|
|||
"No more records (read after end of file)",
|
||||
"Unsupported extension used for table",
|
||||
"Too big row",
|
||||
/* 140 */
|
||||
"Wrong create options",
|
||||
"Duplicate unique key or constraint on write or update",
|
||||
"Unknown character set used in table",
|
||||
|
@ -53,6 +56,7 @@ static const char *handler_error_messages[]=
|
|||
"Lock table is full; Restart program with a larger lock table",
|
||||
"Updates are not allowed under a read only transactions",
|
||||
"Lock deadlock; Retry transaction",
|
||||
/* 150 */
|
||||
"Foreign key constraint is incorrectly formed",
|
||||
"Cannot add a child row",
|
||||
"Cannot delete a parent row",
|
||||
|
@ -63,6 +67,7 @@ static const char *handler_error_messages[]=
|
|||
"Could not connect to storage engine",
|
||||
"Unexpected null pointer found when using spatial index",
|
||||
"The table changed in storage engine",
|
||||
/* 160 */
|
||||
"There's no partition in table for the given value",
|
||||
"Row-based binary logging of row failed",
|
||||
"Index needed in foreign key constraint",
|
||||
|
@ -73,6 +78,7 @@ static const char *handler_error_messages[]=
|
|||
"Failed to set row auto increment value",
|
||||
"Unknown (generic) error from engine",
|
||||
"Record was not update. Original values was same as new values",
|
||||
/* 170 */
|
||||
"It is not possible to log this statement",
|
||||
"The event was corrupt, leading to illegal data being read",
|
||||
"The table is of a new format not supported by this version",
|
||||
|
@ -83,6 +89,7 @@ static const char *handler_error_messages[]=
|
|||
"Too many active concurrent transactions",
|
||||
"Record not matching the given partition set",
|
||||
"Index column length exceeds limit",
|
||||
/* 180 */
|
||||
"Index corrupted",
|
||||
"Undo record too big",
|
||||
"Invalid InnoDB FTS Doc ID",
|
||||
|
@ -93,20 +100,12 @@ static const char *handler_error_messages[]=
|
|||
"Row is not visible by the current transaction",
|
||||
"Operation was interrupted by end user (probably kill command?)",
|
||||
"Disk full",
|
||||
/* 190 */
|
||||
"Incompatible key or row definition between the MariaDB .frm file and the information in the storage engine. You have to dump and restore the table to fix this",
|
||||
"Too many words in a FTS phrase or proximity search",
|
||||
"Table encrypted but decryption failed. This could be because correct encryption management plugin is not loaded, used encryption key is not available or encryption method does not match.",
|
||||
"Foreign key cascade delete/update exceeds max depth",
|
||||
"Table storage engine found required create option missing",
|
||||
"Out of memory in storage engine",
|
||||
"Operation cannot be performed. The table is missing, corrupt or contains bad data.",
|
||||
"Query execution was interrupted",
|
||||
"Tablespace is missing for table",
|
||||
"Tablespace is not empty",
|
||||
"Incorrect File Name",
|
||||
"Table storage engine found required create option missing",
|
||||
"Compute virtual column value failed",
|
||||
"InnoDB is in read only mode"
|
||||
"Tablespace is missing for table"
|
||||
};
|
||||
|
||||
#endif /* MYSYS_MY_HANDLER_ERRORS_INCLUDED */
|
||||
|
|
|
@ -1,48 +0,0 @@
|
|||
/* Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; version 2 of the License.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA */
|
||||
|
||||
#ifndef _my_icp_h
|
||||
#define _my_icp_h
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
Values returned by index_cond_func_xxx functions.
|
||||
*/
|
||||
|
||||
typedef enum icp_result {
|
||||
/** Index tuple doesn't satisfy the pushed index condition (the engine
|
||||
should discard the tuple and go to the next one) */
|
||||
ICP_NO_MATCH,
|
||||
|
||||
/** Index tuple satisfies the pushed index condition (the engine should
|
||||
fetch and return the record) */
|
||||
ICP_MATCH,
|
||||
|
||||
/** Index tuple is out of the range that we're scanning, e.g. if we're
|
||||
scanning "t.key BETWEEN 10 AND 20" and got a "t.key=21" tuple (the engine
|
||||
should stop scanning and return HA_ERR_END_OF_FILE right away). */
|
||||
ICP_OUT_OF_RANGE
|
||||
|
||||
} ICP_RESULT;
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* _my_icp_h */
|
|
@ -1,6 +1,4 @@
|
|||
--disable_warnings
|
||||
if (`SELECT COUNT(*) = 0 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE LOWER(variable_name) = 'innodb_page_size' AND variable_value = 16384`)
|
||||
{
|
||||
--skip Test requires InnoDB with 16k Page size.
|
||||
}
|
||||
--enable_warnings
|
||||
|
|
|
@ -1,4 +0,0 @@
|
|||
if (`SELECT COUNT(*) = 0 FROM INFORMATION_SCHEMA.GLOBAL_STATUS WHERE LOWER(variable_name) = 'innodb_page_size' AND variable_value <= 16384`)
|
||||
{
|
||||
--skip Test requires InnoDB with page size not greater than 16k.
|
||||
}
|
|
@ -1,18 +0,0 @@
|
|||
let $numa_support = `SELECT COUNT(VARIABLE_VALUE) = 1 FROM
|
||||
INFORMATION_SCHEMA.GLOBAL_VARIABLES
|
||||
WHERE VARIABLE_NAME='innodb_numa_interleave'`;
|
||||
|
||||
if ( $numa_support == 0 )
|
||||
{
|
||||
--skip Test requires: NUMA must be enabled
|
||||
}
|
||||
|
||||
if ( $numa_support == 1 )
|
||||
{
|
||||
let $numa = `SELECT @@GLOBAL.innodb_numa_interleave = 'OFF'`;
|
||||
if ( $numa == 1 )
|
||||
{
|
||||
--skip Test requires: NUMA must be enabled
|
||||
}
|
||||
}
|
||||
|
|
@ -4400,7 +4400,6 @@ sub extract_warning_lines ($$) {
|
|||
qr/Slave SQL thread retried transaction/,
|
||||
qr/Slave \(additional info\)/,
|
||||
qr/Incorrect information in file/,
|
||||
qr/Incorrect key file for table .*crashed.*/,
|
||||
qr/Slave I\/O: Get master SERVER_ID failed with error:.*/,
|
||||
qr/Slave I\/O: Get master clock failed with error:.*/,
|
||||
qr/Slave I\/O: Get master COLLATION_SERVER failed with error:.*/,
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
set @default_storage_engine= @@global.storage_engine;
|
||||
set global storage_engine=myisam;
|
||||
set session storage_engine=myisam;
|
||||
call mtr.add_suppression("Index for table .*crashed' is corrupt; try to repair it");
|
||||
drop table if exists crashed,t2,t3,t4;
|
||||
SET @orig_debug=@@debug;
|
||||
CREATE TABLE crashed (c1 INT);
|
||||
|
|
|
@ -545,7 +545,6 @@ optimize table t1;
|
|||
connection default;
|
||||
handler t1 read next;
|
||||
c1
|
||||
1
|
||||
handler t1 close;
|
||||
connection con2;
|
||||
Table Op Msg_type Msg_text
|
||||
|
|
|
@ -1141,10 +1141,10 @@ insert into t1 values
|
|||
(244, 243), (245, 244), (246, 245), (247, 246),
|
||||
(248, 247), (249, 248), (250, 249), (251, 250),
|
||||
(252, 251), (253, 252), (254, 253), (255, 254);
|
||||
--error 4029,1451
|
||||
--error ER_GET_ERRMSG,ER_ROW_IS_REFERENCED_2
|
||||
delete from t1 where id=0;
|
||||
delete from t1 where id=255;
|
||||
--error 0,1451
|
||||
--error 0,ER_ROW_IS_REFERENCED_2
|
||||
delete from t1 where id=0;
|
||||
|
||||
drop table t1;
|
||||
|
@ -1636,10 +1636,10 @@ INSERT INTO t2 VALUES(2);
|
|||
INSERT INTO t1 VALUES(1);
|
||||
INSERT INTO t2 VALUES(1);
|
||||
|
||||
--error 1451
|
||||
--error ER_ROW_IS_REFERENCED_2
|
||||
DELETE FROM t1 WHERE id = 1;
|
||||
|
||||
--error 1451, 1217
|
||||
--error ER_ROW_IS_REFERENCED_2, 1217
|
||||
DROP TABLE t1;
|
||||
|
||||
SET FOREIGN_KEY_CHECKS=0;
|
||||
|
@ -1765,11 +1765,11 @@ insert into t2 values(2);
|
|||
insert into t4 values(2);
|
||||
insert into t2 values(1);
|
||||
insert into t4 values(1);
|
||||
-- error 1451
|
||||
-- error ER_ROW_IS_REFERENCED_2
|
||||
update t1 set a=2;
|
||||
-- error 1452
|
||||
update t2 set a=2;
|
||||
-- error 1451
|
||||
-- error ER_ROW_IS_REFERENCED_2
|
||||
update t3 set a=2;
|
||||
-- error 1452
|
||||
update t4 set a=2;
|
||||
|
@ -1838,11 +1838,11 @@ insert into t2 values(0x41);
|
|||
select hex(s1) from t2;
|
||||
update t1 set s1=0x123456 where a=2;
|
||||
select hex(s1) from t2;
|
||||
-- error 1451
|
||||
-- error ER_ROW_IS_REFERENCED_2
|
||||
update t1 set s1=0x12 where a=1;
|
||||
-- error 1451
|
||||
-- error ER_ROW_IS_REFERENCED_2
|
||||
update t1 set s1=0x12345678 where a=1;
|
||||
-- error 1451
|
||||
-- error ER_ROW_IS_REFERENCED_2
|
||||
update t1 set s1=0x123457 where a=1;
|
||||
update t1 set s1=0x1220 where a=1;
|
||||
select hex(s1) from t2;
|
||||
|
@ -1850,11 +1850,11 @@ update t1 set s1=0x1200 where a=1;
|
|||
select hex(s1) from t2;
|
||||
update t1 set s1=0x4200 where a=1;
|
||||
select hex(s1) from t2;
|
||||
-- error 1451
|
||||
-- error ER_ROW_IS_REFERENCED_2
|
||||
delete from t1 where a=1;
|
||||
delete from t1 where a=2;
|
||||
update t2 set s1=0x4120;
|
||||
-- error 1451
|
||||
-- error ER_ROW_IS_REFERENCED_2
|
||||
delete from t1;
|
||||
delete from t1 where a!=3;
|
||||
select a,hex(s1) from t1;
|
||||
|
@ -1873,7 +1873,7 @@ select hex(s1) from t2;
|
|||
update t1 set s1=0x12 where a=2;
|
||||
select hex(s1) from t2;
|
||||
delete from t1 where a=1;
|
||||
-- error 1451
|
||||
-- error ER_ROW_IS_REFERENCED_2
|
||||
delete from t1 where a=2;
|
||||
select a,hex(s1) from t1;
|
||||
select hex(s1) from t2;
|
||||
|
|
|
@ -1,13 +1,13 @@
|
|||
set @old_dbug=@@debug_dbug;
|
||||
call mtr.add_suppression("Incorrect key file for table.*mysql.plugin.MYI");
|
||||
call mtr.add_suppression("Index for table.*mysql.plugin.MYI");
|
||||
SET debug_dbug='+d,myisam_pretend_crashed_table_on_usage';
|
||||
install plugin audit_null soname 'adt_null';
|
||||
ERROR HY000: Incorrect key file for table './mysql/plugin.MYI'; try to repair it
|
||||
ERROR HY000: Index for table './mysql/plugin.MYI' is corrupt; try to repair it
|
||||
SET debug_dbug=@old_dbug;
|
||||
install plugin audit_null soname 'adt_null';
|
||||
SET debug_dbug='+d,myisam_pretend_crashed_table_on_usage';
|
||||
uninstall plugin audit_null;
|
||||
ERROR HY000: Incorrect key file for table './mysql/plugin.MYI'; try to repair it
|
||||
ERROR HY000: Index for table './mysql/plugin.MYI' is corrupt; try to repair it
|
||||
SET debug_dbug=@old_dbug;
|
||||
uninstall plugin audit_null;
|
||||
ERROR 42000: PLUGIN audit_null does not exist
|
||||
|
|
|
@ -6,7 +6,7 @@ if (!$ADT_NULL_SO) {
|
|||
}
|
||||
|
||||
set @old_dbug=@@debug_dbug;
|
||||
call mtr.add_suppression("Incorrect key file for table.*mysql.plugin.MYI");
|
||||
call mtr.add_suppression("Index for table.*mysql.plugin.MYI");
|
||||
|
||||
#
|
||||
# MySQL BUG#14485479 - INSTALL AUDIT PLUGIN HANGS IF WE TRY TO DISABLE AND ENABLED DURING DDL OPERATION
|
||||
|
|
|
@ -13,6 +13,3 @@
|
|||
rpl_spec_variables : BUG#11755836 2009-10-27 jasonh rpl_spec_variables fails on PB2 hpux
|
||||
rpl_get_master_version_and_clock : Bug#11766137 Jan 05 2011 joro Valgrind warnings rpl_get_master_version_and_clock
|
||||
rpl_partition_archive : MDEV-5077 2013-09-27 svoj Cannot exchange partition with archive table
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,10 +0,0 @@
|
|||
SELECT @@GLOBAL.innodb_numa_interleave;
|
||||
@@GLOBAL.innodb_numa_interleave
|
||||
1
|
||||
SET @@GLOBAL.innodb_numa_interleave=off;
|
||||
ERROR HY000: Variable 'innodb_numa_interleave' is a read only variable
|
||||
SELECT @@GLOBAL.innodb_use_native_aio;
|
||||
@@GLOBAL.innodb_use_native_aio
|
||||
0
|
||||
SELECT @@SESSION.innodb_use_native_aio;
|
||||
ERROR HY000: Variable 'innodb_use_native_aio' is a GLOBAL variable
|
|
@ -173,6 +173,20 @@ NUMERIC_BLOCK_SIZE 0
|
|||
ENUM_VALUE_LIST NULL
|
||||
READ_ONLY YES
|
||||
COMMAND_LINE_ARGUMENT REQUIRED
|
||||
VARIABLE_NAME INNODB_BACKGROUND_DROP_LIST_EMPTY
|
||||
SESSION_VALUE NULL
|
||||
GLOBAL_VALUE OFF
|
||||
GLOBAL_VALUE_ORIGIN COMPILE-TIME
|
||||
DEFAULT_VALUE OFF
|
||||
VARIABLE_SCOPE GLOBAL
|
||||
VARIABLE_TYPE BOOLEAN
|
||||
VARIABLE_COMMENT Wait for the background drop list to become empty
|
||||
NUMERIC_MIN_VALUE NULL
|
||||
NUMERIC_MAX_VALUE NULL
|
||||
NUMERIC_BLOCK_SIZE NULL
|
||||
ENUM_VALUE_LIST NULL
|
||||
READ_ONLY NO
|
||||
COMMAND_LINE_ARGUMENT OPTIONAL
|
||||
VARIABLE_NAME INNODB_BACKGROUND_SCRUB_DATA_CHECK_INTERVAL
|
||||
SESSION_VALUE NULL
|
||||
GLOBAL_VALUE 3600
|
||||
|
@ -572,7 +586,7 @@ GLOBAL_VALUE_ORIGIN COMPILE-TIME
|
|||
DEFAULT_VALUE none
|
||||
VARIABLE_SCOPE GLOBAL
|
||||
VARIABLE_TYPE ENUM
|
||||
VARIABLE_COMMENT Compress all tables, without specifying the COMRPESS table attribute
|
||||
VARIABLE_COMMENT Compress all tables, without specifying the COMPRESS table attribute
|
||||
NUMERIC_MIN_VALUE NULL
|
||||
NUMERIC_MAX_VALUE NULL
|
||||
NUMERIC_BLOCK_SIZE NULL
|
||||
|
@ -747,6 +761,20 @@ NUMERIC_BLOCK_SIZE 0
|
|||
ENUM_VALUE_LIST NULL
|
||||
READ_ONLY NO
|
||||
COMMAND_LINE_ARGUMENT REQUIRED
|
||||
VARIABLE_NAME INNODB_DICT_STATS_DISABLED_DEBUG
|
||||
SESSION_VALUE NULL
|
||||
GLOBAL_VALUE OFF
|
||||
GLOBAL_VALUE_ORIGIN COMPILE-TIME
|
||||
DEFAULT_VALUE OFF
|
||||
VARIABLE_SCOPE GLOBAL
|
||||
VARIABLE_TYPE BOOLEAN
|
||||
VARIABLE_COMMENT Disable dict_stats thread
|
||||
NUMERIC_MIN_VALUE NULL
|
||||
NUMERIC_MAX_VALUE NULL
|
||||
NUMERIC_BLOCK_SIZE NULL
|
||||
ENUM_VALUE_LIST NULL
|
||||
READ_ONLY NO
|
||||
COMMAND_LINE_ARGUMENT OPTIONAL
|
||||
VARIABLE_NAME INNODB_DISABLE_BACKGROUND_MERGE
|
||||
SESSION_VALUE NULL
|
||||
GLOBAL_VALUE OFF
|
||||
|
@ -1511,7 +1539,7 @@ DEFAULT_VALUE 50331648
|
|||
VARIABLE_SCOPE GLOBAL
|
||||
VARIABLE_TYPE BIGINT
|
||||
VARIABLE_COMMENT Size of each log file in a log group.
|
||||
NUMERIC_MIN_VALUE 1048576
|
||||
NUMERIC_MIN_VALUE 4194304
|
||||
NUMERIC_MAX_VALUE 9223372036854775807
|
||||
NUMERIC_BLOCK_SIZE 1048576
|
||||
ENUM_VALUE_LIST NULL
|
||||
|
@ -1559,6 +1587,20 @@ NUMERIC_BLOCK_SIZE 0
|
|||
ENUM_VALUE_LIST NULL
|
||||
READ_ONLY NO
|
||||
COMMAND_LINE_ARGUMENT REQUIRED
|
||||
VARIABLE_NAME INNODB_MASTER_THREAD_DISABLED_DEBUG
|
||||
SESSION_VALUE NULL
|
||||
GLOBAL_VALUE OFF
|
||||
GLOBAL_VALUE_ORIGIN COMPILE-TIME
|
||||
DEFAULT_VALUE OFF
|
||||
VARIABLE_SCOPE GLOBAL
|
||||
VARIABLE_TYPE BOOLEAN
|
||||
VARIABLE_COMMENT Disable master thread
|
||||
NUMERIC_MIN_VALUE NULL
|
||||
NUMERIC_MAX_VALUE NULL
|
||||
NUMERIC_BLOCK_SIZE NULL
|
||||
ENUM_VALUE_LIST NULL
|
||||
READ_ONLY NO
|
||||
COMMAND_LINE_ARGUMENT OPTIONAL
|
||||
VARIABLE_NAME INNODB_MAX_DIRTY_PAGES_PCT
|
||||
SESSION_VALUE NULL
|
||||
GLOBAL_VALUE 75.000000
|
||||
|
@ -1757,7 +1799,7 @@ READ_ONLY NO
|
|||
COMMAND_LINE_ARGUMENT REQUIRED
|
||||
VARIABLE_NAME INNODB_OPEN_FILES
|
||||
SESSION_VALUE NULL
|
||||
GLOBAL_VALUE 2000
|
||||
GLOBAL_VALUE 300
|
||||
GLOBAL_VALUE_ORIGIN COMPILE-TIME
|
||||
DEFAULT_VALUE 0
|
||||
VARIABLE_SCOPE GLOBAL
|
||||
|
@ -1797,6 +1839,20 @@ NUMERIC_BLOCK_SIZE 0
|
|||
ENUM_VALUE_LIST NULL
|
||||
READ_ONLY YES
|
||||
COMMAND_LINE_ARGUMENT OPTIONAL
|
||||
VARIABLE_NAME INNODB_PAGE_CLEANER_DISABLED_DEBUG
|
||||
SESSION_VALUE NULL
|
||||
GLOBAL_VALUE OFF
|
||||
GLOBAL_VALUE_ORIGIN COMPILE-TIME
|
||||
DEFAULT_VALUE OFF
|
||||
VARIABLE_SCOPE GLOBAL
|
||||
VARIABLE_TYPE BOOLEAN
|
||||
VARIABLE_COMMENT Disable page cleaner
|
||||
NUMERIC_MIN_VALUE NULL
|
||||
NUMERIC_MAX_VALUE NULL
|
||||
NUMERIC_BLOCK_SIZE NULL
|
||||
ENUM_VALUE_LIST NULL
|
||||
READ_ONLY NO
|
||||
COMMAND_LINE_ARGUMENT OPTIONAL
|
||||
VARIABLE_NAME INNODB_PAGE_HASH_LOCKS
|
||||
SESSION_VALUE NULL
|
||||
GLOBAL_VALUE 16
|
||||
|
@ -2260,10 +2316,10 @@ ENUM_VALUE_LIST NULL
|
|||
READ_ONLY NO
|
||||
COMMAND_LINE_ARGUMENT OPTIONAL
|
||||
VARIABLE_NAME INNODB_STRICT_MODE
|
||||
SESSION_VALUE OFF
|
||||
GLOBAL_VALUE OFF
|
||||
SESSION_VALUE ON
|
||||
GLOBAL_VALUE ON
|
||||
GLOBAL_VALUE_ORIGIN COMPILE-TIME
|
||||
DEFAULT_VALUE OFF
|
||||
DEFAULT_VALUE ON
|
||||
VARIABLE_SCOPE SESSION
|
||||
VARIABLE_TYPE BOOLEAN
|
||||
VARIABLE_COMMENT Use strict mode when evaluating create options.
|
||||
|
@ -2541,7 +2597,7 @@ READ_ONLY NO
|
|||
COMMAND_LINE_ARGUMENT OPTIONAL
|
||||
VARIABLE_NAME INNODB_VERSION
|
||||
SESSION_VALUE NULL
|
||||
GLOBAL_VALUE 5.7.9
|
||||
GLOBAL_VALUE 5.7.14
|
||||
GLOBAL_VALUE_ORIGIN COMPILE-TIME
|
||||
DEFAULT_VALUE NULL
|
||||
VARIABLE_SCOPE GLOBAL
|
||||
|
|
|
@ -1,13 +0,0 @@
|
|||
--source include/have_innodb.inc
|
||||
--source include/have_numa.inc
|
||||
|
||||
SELECT @@GLOBAL.innodb_numa_interleave;
|
||||
|
||||
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
||||
SET @@GLOBAL.innodb_numa_interleave=off;
|
||||
|
||||
SELECT @@GLOBAL.innodb_use_native_aio;
|
||||
|
||||
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
||||
SELECT @@SESSION.innodb_use_native_aio;
|
||||
|
|
@ -8,6 +8,8 @@ set @default_storage_engine= @@global.storage_engine;
|
|||
set global storage_engine=myisam;
|
||||
set session storage_engine=myisam;
|
||||
|
||||
call mtr.add_suppression("Index for table .*crashed' is corrupt; try to repair it");
|
||||
|
||||
--disable_warnings
|
||||
drop table if exists crashed,t2,t3,t4;
|
||||
--enable_warnings
|
||||
|
|
|
@ -1,26 +0,0 @@
|
|||
package thou_shalt_not_kill;
|
||||
require Exporter;
|
||||
@ISA = 'Exporter';
|
||||
@EXPORT_OK = 'kill';
|
||||
|
||||
use subs 'kill';
|
||||
use Carp qw(cluck);
|
||||
|
||||
sub import {
|
||||
my $pkg = shift;
|
||||
$pkg->export('CORE::GLOBAL', 'kill', @_);
|
||||
}
|
||||
|
||||
sub kill {
|
||||
return CORE::kill(@_) unless $_[0];
|
||||
cluck "kill(@_)";
|
||||
print "\e[1;31m" if -t STDOUT;
|
||||
system "pstree -c $_" foreach @_[1..$#_];
|
||||
print "\e[0;39m" if -t STDOUT;
|
||||
print STDERR 'Kill [y/n] ? ';
|
||||
my $answer=<STDIN>;
|
||||
return CORE::kill(@_) if $answer =~ /y/i or $answer eq "\n";
|
||||
1;
|
||||
}
|
||||
|
||||
1;
|
|
@ -370,17 +370,8 @@ int ha_init_errors(void)
|
|||
SETMSG(HA_ERR_TABLE_IN_FK_CHECK, ER_DEFAULT(ER_TABLE_IN_FK_CHECK));
|
||||
SETMSG(HA_ERR_DISK_FULL, ER_DEFAULT(ER_DISK_FULL));
|
||||
SETMSG(HA_ERR_FTS_TOO_MANY_WORDS_IN_PHRASE, "Too many words in a FTS phrase or proximity search");
|
||||
SETMSG(HA_ERR_FK_DEPTH_EXCEEDED, ER_DEFAULT(ER_FK_DEPTH_EXCEEDED));
|
||||
SETMSG(HA_MISSING_CREATE_OPTION, ER_DEFAULT(ER_MISSING_HA_CREATE_OPTION));
|
||||
SETMSG(HA_ERR_SE_OUT_OF_MEMORY, ER_DEFAULT(ER_ENGINE_OUT_OF_MEMORY));
|
||||
SETMSG(HA_ERR_TABLE_CORRUPT, ER_DEFAULT(ER_TABLE_CORRUPT));
|
||||
SETMSG(HA_ERR_QUERY_INTERRUPTED, ER_DEFAULT(ER_QUERY_INTERRUPTED));
|
||||
SETMSG(HA_ERR_FK_DEPTH_EXCEEDED, "Foreign key cascade delete/update exceeds");
|
||||
SETMSG(HA_ERR_TABLESPACE_MISSING, ER_DEFAULT(ER_TABLESPACE_MISSING));
|
||||
SETMSG(HA_ERR_TABLESPACE_IS_NOT_EMPTY,ER_DEFAULT(ER_TABLESPACE_IS_NOT_EMPTY));
|
||||
SETMSG(HA_ERR_WRONG_FILE_NAME, ER_DEFAULT(ER_WRONG_FILE_NAME));
|
||||
SETMSG(HA_ERR_NOT_ALLOWED_COMMAND, ER_DEFAULT(ER_NOT_ALLOWED_COMMAND));
|
||||
SETMSG(HA_ERR_COMPUTE_FAILED, "Compute virtual column value failed");
|
||||
SETMSG(HA_ERR_INNODB_READ_ONLY, ER_DEFAULT(ER_INNODB_READ_ONLY));
|
||||
|
||||
/* Register the error messages for use with my_error(). */
|
||||
return my_error_register(get_handler_errmsgs, HA_ERR_FIRST, HA_ERR_LAST);
|
||||
|
@ -5821,8 +5812,6 @@ int handler::ha_external_lock(THD *thd, int lock_type)
|
|||
}
|
||||
}
|
||||
|
||||
ha_statistic_increment(&SSV::ha_external_lock_count);
|
||||
|
||||
/*
|
||||
We cache the table flags if the locking succeeded. Otherwise, we
|
||||
keep them as they were when they were fetched in ha_open().
|
||||
|
|
|
@ -574,31 +574,6 @@ struct xid_t {
|
|||
char data[XIDDATASIZE]; // not \0-terminated !
|
||||
|
||||
xid_t() {} /* Remove gcc warning */
|
||||
long get_format_id() const
|
||||
{ return formatID; }
|
||||
void set_format_id(long v)
|
||||
{
|
||||
formatID= v;
|
||||
}
|
||||
long get_gtrid_length() const
|
||||
{ return gtrid_length; }
|
||||
void set_gtrid_length(long v)
|
||||
{
|
||||
gtrid_length= v;
|
||||
}
|
||||
long get_bqual_length() const
|
||||
{ return bqual_length; }
|
||||
void set_bqual_length(long v)
|
||||
{
|
||||
bqual_length= v;
|
||||
}
|
||||
const char* get_data() const
|
||||
{ return data; }
|
||||
void set_data(const void* v, long l)
|
||||
{
|
||||
DBUG_ASSERT(l <= XIDDATASIZE);
|
||||
memcpy(data, v, l);
|
||||
}
|
||||
bool eq(struct xid_t *xid)
|
||||
{ return !xid->is_null() && eq(xid->gtrid_length, xid->bqual_length, xid->data); }
|
||||
bool eq(long g, long b, const char *d)
|
||||
|
@ -611,13 +586,6 @@ struct xid_t {
|
|||
memcpy(data, g, gtrid_length= gl);
|
||||
memcpy(data+gl, b, bqual_length= bl);
|
||||
}
|
||||
void reset()
|
||||
{
|
||||
formatID= -1;
|
||||
gtrid_length= 0;
|
||||
bqual_length= 0;
|
||||
memset(data, 0, XIDDATASIZE);
|
||||
}
|
||||
void set(ulonglong xid)
|
||||
{
|
||||
my_xid tmp;
|
||||
|
@ -3916,9 +3884,6 @@ public:
|
|||
TABLE* get_table() { return table; }
|
||||
TABLE_SHARE* get_table_share() { return table_share; }
|
||||
protected:
|
||||
/* deprecated, don't use in new engines */
|
||||
// inline void ha_statistic_increment(ulong SSV::*offset) const { }
|
||||
#define ha_statistic_increment(A)
|
||||
/* Service methods for use by storage engines. */
|
||||
void **ha_data(THD *) const;
|
||||
THD *ha_thd(void) const;
|
||||
|
|
|
@ -748,7 +748,7 @@ ER_NOT_KEYFILE
|
|||
cze "Nesprávný klíč pro tabulku '%-.200s'; pokuste se ho opravit"
|
||||
dan "Fejl i indeksfilen til tabellen '%-.200s'; prøv at reparere den"
|
||||
nla "Verkeerde zoeksleutel file voor tabel: '%-.200s'; probeer het te repareren"
|
||||
eng "Incorrect key file for table '%-.200s'; try to repair it"
|
||||
eng "Index for table '%-.200s' is corrupt; try to repair it"
|
||||
est "Tabeli '%-.200s' võtmefail on vigane; proovi seda parandada"
|
||||
fre "Index corrompu dans la table: '%-.200s'; essayez de le réparer"
|
||||
ger "Fehlerhafte Index-Datei für Tabelle '%-.200s'; versuche zu reparieren"
|
||||
|
@ -7150,6 +7150,8 @@ skip-to-error-number 3000
|
|||
|
||||
ER_MYSQL_57_TEST
|
||||
eng "5.7 test"
|
||||
ER_CANNOT_DISCARD_TEMPORARY_TABLE
|
||||
eng "Cannot DISCARD/IMPORT tablespace associated with temporary table"
|
||||
|
||||
# MariaDB extra error numbers starts from 4000
|
||||
skip-to-error-number 4000
|
||||
|
@ -7214,21 +7216,3 @@ ER_CALCULATING_DEFAULT_VALUE
|
|||
eng "Got an error when calculating default value for %`s"
|
||||
ER_EXPRESSION_REFERS_TO_UNINIT_FIELD 01000
|
||||
eng "Expression for field %`-.64s is refering to uninitialized field %`s"
|
||||
ER_BUFPOOL_RESIZE_INPROGRESS
|
||||
eng "Another buffer pool resize is already in progress."
|
||||
ER_CANNOT_DISCARD_TEMPORARY_TABLE
|
||||
eng "Cannot DISCARD/IMPORT tablespace associated with temporary table"
|
||||
ER_FK_DEPTH_EXCEEDED
|
||||
eng "Foreign key cascade delete/update exceeds max depth of %d."
|
||||
ER_INNODB_FORCED_RECOVERY
|
||||
eng "Operation not allowed when innodb_forced_recovery > 0."
|
||||
ER_TABLE_REFERENCED
|
||||
eng "Cannot complete the operation because table is referenced by another connection."
|
||||
ER_TABLESPACE_IS_NOT_EMPTY
|
||||
eng "Tablespace `%-.192s` is not empty."
|
||||
ER_MISSING_HA_CREATE_OPTION
|
||||
eng "Table storage engine '%-.64s' found required create option missing"
|
||||
ER_ENGINE_OUT_OF_MEMORY
|
||||
eng "Out of memory in storage engine '%-.64s'."
|
||||
ER_WRONG_FILE_NAME
|
||||
eng "Incorrect File Name '%s'."
|
||||
|
|
|
@ -21,6 +21,7 @@
|
|||
/* Classes in mysql */
|
||||
|
||||
#include "my_global.h" /* NO_EMBEDDED_ACCESS_CHECKS */
|
||||
#include "dur_prop.h"
|
||||
#include <waiting_threads.h>
|
||||
#include "sql_const.h"
|
||||
#include <mysql/plugin_audit.h>
|
||||
|
|
|
@ -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);
|
||||
}
|
||||
|
||||
|
|
|
@ -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);
|
||||
}
|
||||
|
||||
|
|
|
@ -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(
|
||||
|
|
|
@ -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 */
|
||||
|
|
|
@ -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. */
|
||||
|
|
|
@ -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?
|
||||
|
|
|
@ -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;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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);
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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)
|
||||
|
|
|
@ -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,
|
||||
|
|
|
@ -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"
|
||||
|
|
Loading…
Reference in a new issue