mirror of
https://github.com/MariaDB/server.git
synced 2025-01-16 03:52:35 +01:00
10.0-base merge
This commit is contained in:
commit
f9dcd5b540
29 changed files with 116 additions and 43 deletions
|
@ -172,8 +172,9 @@ enum mysql_option
|
|||
MYSQL_OPT_SSL_CA, MYSQL_OPT_SSL_CAPATH, MYSQL_OPT_SSL_CIPHER,
|
||||
MYSQL_OPT_SSL_CRL, MYSQL_OPT_SSL_CRLPATH,
|
||||
/* MariaDB options */
|
||||
MYSQL_OPT_NONBLOCK=6000,
|
||||
MYSQL_PROGRESS_CALLBACK
|
||||
MYSQL_PROGRESS_CALLBACK=5999,
|
||||
MYSQL_OPT_NONBLOCK,
|
||||
MYSQL_OPT_USE_THREAD_SPECIFIC_MEMORY
|
||||
};
|
||||
|
||||
/**
|
||||
|
@ -198,7 +199,7 @@ struct st_mysql_options {
|
|||
unsigned long max_allowed_packet;
|
||||
my_bool use_ssl; /* if to use SSL or not */
|
||||
my_bool compress,named_pipe;
|
||||
my_bool unused1;
|
||||
my_bool use_thread_specific_memory;
|
||||
my_bool unused2;
|
||||
my_bool unused3;
|
||||
my_bool unused4;
|
||||
|
|
|
@ -266,8 +266,9 @@ enum mysql_option
|
|||
MYSQL_OPT_SSL_KEY, MYSQL_OPT_SSL_CERT,
|
||||
MYSQL_OPT_SSL_CA, MYSQL_OPT_SSL_CAPATH, MYSQL_OPT_SSL_CIPHER,
|
||||
MYSQL_OPT_SSL_CRL, MYSQL_OPT_SSL_CRLPATH,
|
||||
MYSQL_OPT_NONBLOCK=6000,
|
||||
MYSQL_PROGRESS_CALLBACK
|
||||
MYSQL_PROGRESS_CALLBACK=5999,
|
||||
MYSQL_OPT_NONBLOCK,
|
||||
MYSQL_OPT_USE_THREAD_SPECIFIC_MEMORY
|
||||
};
|
||||
struct st_mysql_options_extention;
|
||||
struct st_mysql_options {
|
||||
|
@ -286,7 +287,7 @@ struct st_mysql_options {
|
|||
unsigned long max_allowed_packet;
|
||||
my_bool use_ssl;
|
||||
my_bool compress,named_pipe;
|
||||
my_bool unused1;
|
||||
my_bool use_thread_specific_memory;
|
||||
my_bool unused2;
|
||||
my_bool unused3;
|
||||
my_bool unused4;
|
||||
|
|
|
@ -77,9 +77,9 @@ order by s_suppkey;
|
|||
id select_type table type possible_keys key key_len ref rows filtered Extra
|
||||
1 PRIMARY supplier ALL PRIMARY NULL NULL NULL 10 100.00 Using filesort
|
||||
1 PRIMARY <derived3> ref key0 key0 5 dbt3_s001.supplier.s_suppkey 10 100.00 Using where
|
||||
3 DERIVED lineitem range i_l_shipdate i_l_shipdate 4 NULL 268 0.20 Using where; Using temporary; Using filesort
|
||||
3 DERIVED lineitem range i_l_shipdate i_l_shipdate 4 NULL 268 100.00 Using where; Using temporary; Using filesort
|
||||
2 SUBQUERY <derived4> ALL NULL NULL NULL NULL 268 100.00
|
||||
4 DERIVED lineitem range i_l_shipdate i_l_shipdate 4 NULL 268 0.20 Using where; Using temporary; Using filesort
|
||||
4 DERIVED lineitem range i_l_shipdate i_l_shipdate 4 NULL 268 100.00 Using where; Using temporary; Using filesort
|
||||
Warnings:
|
||||
Note 1003 select `dbt3_s001`.`supplier`.`s_suppkey` AS `s_suppkey`,`dbt3_s001`.`supplier`.`s_name` AS `s_name`,`dbt3_s001`.`supplier`.`s_address` AS `s_address`,`dbt3_s001`.`supplier`.`s_phone` AS `s_phone`,`revenue0`.`total_revenue` AS `total_revenue` from `dbt3_s001`.`supplier` join `dbt3_s001`.`revenue0` where ((`revenue0`.`supplier_no` = `dbt3_s001`.`supplier`.`s_suppkey`) and (`revenue0`.`total_revenue` = (select max(`revenue0`.`total_revenue`) from `dbt3_s001`.`revenue0`))) order by `dbt3_s001`.`supplier`.`s_suppkey`
|
||||
select s_suppkey, s_name, s_address, s_phone, total_revenue
|
||||
|
|
|
@ -80,9 +80,9 @@ order by s_suppkey;
|
|||
id select_type table type possible_keys key key_len ref rows filtered Extra
|
||||
1 PRIMARY supplier index PRIMARY PRIMARY 4 NULL 10 100.00
|
||||
1 PRIMARY <derived3> ref key0 key0 5 dbt3_s001.supplier.s_suppkey 10 100.00 Using where
|
||||
3 DERIVED lineitem range i_l_shipdate i_l_shipdate 4 NULL 228 0.14 Using where; Using temporary; Using filesort
|
||||
3 DERIVED lineitem range i_l_shipdate i_l_shipdate 4 NULL 228 100.00 Using where; Using temporary; Using filesort
|
||||
2 SUBQUERY <derived4> ALL NULL NULL NULL NULL 228 100.00
|
||||
4 DERIVED lineitem range i_l_shipdate i_l_shipdate 4 NULL 228 0.14 Using where; Using temporary; Using filesort
|
||||
4 DERIVED lineitem range i_l_shipdate i_l_shipdate 4 NULL 228 100.00 Using where; Using temporary; Using filesort
|
||||
Warnings:
|
||||
Note 1003 select `dbt3_s001`.`supplier`.`s_suppkey` AS `s_suppkey`,`dbt3_s001`.`supplier`.`s_name` AS `s_name`,`dbt3_s001`.`supplier`.`s_address` AS `s_address`,`dbt3_s001`.`supplier`.`s_phone` AS `s_phone`,`revenue0`.`total_revenue` AS `total_revenue` from `dbt3_s001`.`supplier` join `dbt3_s001`.`revenue0` where ((`revenue0`.`supplier_no` = `dbt3_s001`.`supplier`.`s_suppkey`) and (`revenue0`.`total_revenue` = (select max(`revenue0`.`total_revenue`) from `dbt3_s001`.`revenue0`))) order by `dbt3_s001`.`supplier`.`s_suppkey`
|
||||
select s_suppkey, s_name, s_address, s_phone, total_revenue
|
||||
|
|
|
@ -14,9 +14,9 @@ Note 1937 SLAVE '' started
|
|||
include/wait_for_slave_to_start.inc
|
||||
SET GLOBAL gtid_domain_id= 1;
|
||||
SET SESSION gtid_domain_id= 1;
|
||||
CREATE TABLE t3 (a INT PRIMARY KEY, b VARCHAR(10)) ENGINE=InnoDB;
|
||||
CREATE TABLE t1 (a INT PRIMARY KEY, b VARCHAR(10));
|
||||
INSERT INTO t1 VALUES (1, "initial");
|
||||
CREATE TABLE t3 (a INT PRIMARY KEY, b VARCHAR(10)) ENGINE=InnoDB;
|
||||
INSERT INTO t3 VALUES (101, "initial 1");
|
||||
SET GLOBAL gtid_domain_id= 2;
|
||||
SET SESSION gtid_domain_id= 2;
|
||||
|
|
|
@ -32,11 +32,17 @@ start all slaves;
|
|||
--connection master1
|
||||
SET GLOBAL gtid_domain_id= 1;
|
||||
SET SESSION gtid_domain_id= 1;
|
||||
CREATE TABLE t3 (a INT PRIMARY KEY, b VARCHAR(10)) ENGINE=InnoDB;
|
||||
CREATE TABLE t1 (a INT PRIMARY KEY, b VARCHAR(10));
|
||||
INSERT INTO t1 VALUES (1, "initial");
|
||||
CREATE TABLE t3 (a INT PRIMARY KEY, b VARCHAR(10)) ENGINE=InnoDB;
|
||||
INSERT INTO t3 VALUES (101, "initial 1");
|
||||
|
||||
# Make sure we have CREATE TABLE t3 from master1 before replicating INSERT INTO
|
||||
# t3 from master2.
|
||||
--connection slave1
|
||||
--let $wait_condition= SELECT COUNT(*)=1 FROM information_schema.tables WHERE table_name = "t3" AND table_schema = "test"
|
||||
--source include/wait_condition.inc
|
||||
|
||||
--connection master2
|
||||
SET GLOBAL gtid_domain_id= 2;
|
||||
SET SESSION gtid_domain_id= 2;
|
||||
|
|
|
@ -919,7 +919,9 @@ void free_old_query(MYSQL *mysql)
|
|||
if (mysql->fields)
|
||||
free_root(&mysql->field_alloc,MYF(0));
|
||||
/* Assume rowlength < 8192 */
|
||||
init_alloc_root(&mysql->field_alloc, 8192, 0, MYF(MY_THREAD_SPECIFIC));
|
||||
init_alloc_root(&mysql->field_alloc, 8192, 0,
|
||||
MYF(mysql->options.use_thread_specific_memory ?
|
||||
MY_THREAD_SPECIFIC : 0));
|
||||
mysql->fields= 0;
|
||||
mysql->field_count= 0; /* For API */
|
||||
mysql->warning_count= 0;
|
||||
|
@ -1611,7 +1613,9 @@ MYSQL_DATA *cli_read_rows(MYSQL *mysql,MYSQL_FIELD *mysql_fields,
|
|||
DBUG_RETURN(0);
|
||||
}
|
||||
/* Assume rowlength < 8192 */
|
||||
init_alloc_root(&result->alloc, 8192, 0, MYF(MY_THREAD_SPECIFIC));
|
||||
init_alloc_root(&result->alloc, 8192, 0,
|
||||
MYF(mysql->options.use_thread_specific_memory ?
|
||||
MY_THREAD_SPECIFIC : 0));
|
||||
result->alloc.min_malloc=sizeof(MYSQL_ROWS);
|
||||
prev_ptr= &result->data;
|
||||
result->rows=0;
|
||||
|
@ -4254,6 +4258,9 @@ mysql_options(MYSQL *mysql,enum mysql_option option, const void *arg)
|
|||
case MYSQL_OPT_RECONNECT:
|
||||
mysql->reconnect= *(my_bool *) arg;
|
||||
break;
|
||||
case MYSQL_OPT_USE_THREAD_SPECIFIC_MEMORY:
|
||||
mysql->options.use_thread_specific_memory= *(my_bool *) arg;
|
||||
break;
|
||||
case MYSQL_OPT_SSL_VERIFY_SERVER_CERT:
|
||||
if (*(my_bool*) arg)
|
||||
mysql->options.client_flag|= CLIENT_SSL_VERIFY_SERVER_CERT;
|
||||
|
|
|
@ -163,7 +163,7 @@ const TABLE_FIELD_TYPE event_table_fields[ET_FIELD_COUNT] =
|
|||
};
|
||||
|
||||
static const TABLE_FIELD_DEF
|
||||
event_table_def= {ET_FIELD_COUNT, event_table_fields};
|
||||
event_table_def= {ET_FIELD_COUNT, event_table_fields, 0, (uint*) 0};
|
||||
|
||||
class Event_db_intact : public Table_check_intact
|
||||
{
|
||||
|
|
|
@ -225,3 +225,7 @@ void free_rpl_filter(const char *name, Rpl_filter *filter)
|
|||
delete filter;
|
||||
}
|
||||
|
||||
void free_all_rpl_filters()
|
||||
{
|
||||
rpl_filters.delete_elements((void (*)(const char*, uchar*)) free_rpl_filter);
|
||||
}
|
||||
|
|
|
@ -53,5 +53,6 @@ Rpl_filter *create_rpl_filter(const char *name, uint length);
|
|||
Rpl_filter *get_rpl_filter(LEX_STRING *filter_name);
|
||||
Rpl_filter *get_or_create_rpl_filter(const char *name, uint length);
|
||||
void free_rpl_filter(const char *name, Rpl_filter *filter);
|
||||
void free_all_rpl_filters(void);
|
||||
|
||||
#endif /* KEYCACHES_INCLUDED */
|
||||
|
|
|
@ -49,7 +49,8 @@ Relay_log_info::Relay_log_info(bool is_slave_recovery)
|
|||
no_storage(FALSE), replicate_same_server_id(::replicate_same_server_id),
|
||||
info_fd(-1), cur_log_fd(-1), relay_log(&sync_relaylog_period),
|
||||
sync_counter(0), is_relay_log_recovery(is_slave_recovery),
|
||||
save_temporary_tables(0), cur_log_old_open_count(0), group_relay_log_pos(0),
|
||||
save_temporary_tables(0), mi(0),
|
||||
cur_log_old_open_count(0), group_relay_log_pos(0),
|
||||
event_relay_log_pos(0),
|
||||
#if HAVE_valgrind
|
||||
is_fake(FALSE),
|
||||
|
@ -62,7 +63,7 @@ Relay_log_info::Relay_log_info(bool is_slave_recovery)
|
|||
gtid_sub_id(0), tables_to_lock(0), tables_to_lock_count(0),
|
||||
last_event_start_time(0), deferred_events(NULL),m_flags(0),
|
||||
row_stmt_start_timestamp(0), long_find_row_note_printed(false),
|
||||
m_annotate_event(0), mi(0)
|
||||
m_annotate_event(0)
|
||||
{
|
||||
DBUG_ENTER("Relay_log_info::Relay_log_info");
|
||||
|
||||
|
|
11
sql/slave.cc
11
sql/slave.cc
|
@ -884,6 +884,7 @@ void end_slave()
|
|||
master_info_index= 0;
|
||||
active_mi= 0;
|
||||
mysql_mutex_unlock(&LOCK_active_mi);
|
||||
free_all_rpl_filters();
|
||||
DBUG_VOID_RETURN;
|
||||
}
|
||||
|
||||
|
@ -5025,6 +5026,7 @@ static int connect_to_master(THD* thd, MYSQL* mysql, Master_info* mi,
|
|||
int last_errno= -2; // impossible error
|
||||
ulong err_count=0;
|
||||
char llbuff[22];
|
||||
my_bool my_true= 1;
|
||||
DBUG_ENTER("connect_to_master");
|
||||
|
||||
#ifndef DBUG_OFF
|
||||
|
@ -5036,6 +5038,8 @@ static int connect_to_master(THD* thd, MYSQL* mysql, Master_info* mi,
|
|||
|
||||
mysql_options(mysql, MYSQL_OPT_CONNECT_TIMEOUT, (char *) &slave_net_timeout);
|
||||
mysql_options(mysql, MYSQL_OPT_READ_TIMEOUT, (char *) &slave_net_timeout);
|
||||
mysql_options(mysql, MYSQL_OPT_USE_THREAD_SPECIFIC_MEMORY,
|
||||
(char*) &my_true);
|
||||
|
||||
#ifdef HAVE_OPENSSL
|
||||
if (mi->ssl)
|
||||
|
@ -5155,14 +5159,15 @@ MYSQL *rpl_connect_master(MYSQL *mysql)
|
|||
{
|
||||
THD *thd= current_thd;
|
||||
Master_info *mi= my_pthread_getspecific_ptr(Master_info*, RPL_MASTER_INFO);
|
||||
bool allocated= false;
|
||||
my_bool my_true= 1;
|
||||
|
||||
if (!mi)
|
||||
{
|
||||
sql_print_error("'rpl_connect_master' must be called in slave I/O thread context.");
|
||||
return NULL;
|
||||
}
|
||||
|
||||
bool allocated= false;
|
||||
|
||||
if (!mysql)
|
||||
{
|
||||
if(!(mysql= mysql_init(NULL)))
|
||||
|
@ -5182,6 +5187,8 @@ MYSQL *rpl_connect_master(MYSQL *mysql)
|
|||
*/
|
||||
mysql_options(mysql, MYSQL_OPT_CONNECT_TIMEOUT, (char *) &slave_net_timeout);
|
||||
mysql_options(mysql, MYSQL_OPT_READ_TIMEOUT, (char *) &slave_net_timeout);
|
||||
mysql_options(mysql, MYSQL_OPT_USE_THREAD_SPECIFIC_MEMORY,
|
||||
(char*) &my_true);
|
||||
|
||||
#ifdef HAVE_OPENSSL
|
||||
if (mi->ssl)
|
||||
|
|
|
@ -168,7 +168,7 @@ TABLE_FIELD_TYPE proc_table_fields[MYSQL_PROC_FIELD_COUNT] =
|
|||
};
|
||||
|
||||
static const TABLE_FIELD_DEF
|
||||
proc_table_def= {MYSQL_PROC_FIELD_COUNT, proc_table_fields};
|
||||
proc_table_def= {MYSQL_PROC_FIELD_COUNT, proc_table_fields, 0, (uint*) 0 };
|
||||
|
||||
/*************************************************************************/
|
||||
|
||||
|
|
|
@ -171,7 +171,7 @@ TABLE_FIELD_TYPE mysql_db_table_fields[MYSQL_DB_FIELD_COUNT] = {
|
|||
};
|
||||
|
||||
const TABLE_FIELD_DEF
|
||||
mysql_db_table_def= {MYSQL_DB_FIELD_COUNT, mysql_db_table_fields};
|
||||
mysql_db_table_def= {MYSQL_DB_FIELD_COUNT, mysql_db_table_fields, 0, (uint*) 0 };
|
||||
|
||||
static LEX_STRING native_password_plugin_name= {
|
||||
C_STRING_WITH_LEN("mysql_native_password")
|
||||
|
|
|
@ -6901,6 +6901,18 @@ double JOIN::get_examined_rows()
|
|||
}
|
||||
|
||||
|
||||
/**
|
||||
@brief
|
||||
Get the selectivity of equalities between columns when joining a table
|
||||
|
||||
@param join The optimized join
|
||||
@param idx The number of tables in the evaluated partual join
|
||||
@param s The table to be joined for evaluation
|
||||
@param rem_tables The bitmap of tables to be joined later
|
||||
@param keyparts The number of key parts to used when joining s
|
||||
@param ref_keyuse_steps Array of references to keyuses employed to join s
|
||||
*/
|
||||
|
||||
static
|
||||
double table_multi_eq_cond_selectivity(JOIN *join, uint idx, JOIN_TAB *s,
|
||||
table_map rem_tables, uint keyparts,
|
||||
|
@ -7011,6 +7023,19 @@ double table_multi_eq_cond_selectivity(JOIN *join, uint idx, JOIN_TAB *s,
|
|||
return sel;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
@brief
|
||||
Get the selectivity of conditions when joining a table
|
||||
|
||||
@param join The optimized join
|
||||
@param s The table to be joined for evaluation
|
||||
@param rem_tables The bitmap of tables to be joined later
|
||||
|
||||
@retval
|
||||
selectivity of the conditions imposed on the rows of s
|
||||
*/
|
||||
|
||||
static
|
||||
double table_cond_selectivity(JOIN *join, uint idx, JOIN_TAB *s,
|
||||
table_map rem_tables)
|
||||
|
@ -7030,7 +7055,7 @@ double table_cond_selectivity(JOIN *join, uint idx, JOIN_TAB *s,
|
|||
{
|
||||
if (pos->key == 0 && table_records > 0)
|
||||
{
|
||||
sel*= table->quick_rows[s->quick->index]/table_records;
|
||||
sel/= table->quick_rows[s->quick->index]/table_records;
|
||||
}
|
||||
}
|
||||
else if (pos->key != 0)
|
||||
|
@ -7081,6 +7106,11 @@ double table_cond_selectivity(JOIN *join, uint idx, JOIN_TAB *s,
|
|||
} while (keyuse->table == table && keyuse->key == key);
|
||||
}
|
||||
|
||||
/*
|
||||
If the field f from the table is equal to a field from one the
|
||||
earlier joined tables then the selectivity of the range conditions
|
||||
over the field f must be discounted.
|
||||
*/
|
||||
for (Field **f_ptr=table->field ; (field= *f_ptr) ; f_ptr++)
|
||||
{
|
||||
if (!bitmap_is_set(read_set, field->field_index) ||
|
||||
|
@ -12270,7 +12300,7 @@ static COND *build_equal_items_for_cond(THD *thd, COND *cond,
|
|||
@endcode
|
||||
Thus, applying equalities from the where condition we basically
|
||||
can get more freedom in performing join operations.
|
||||
Althogh we don't use this property now, it probably makes sense to use
|
||||
Although we don't use this property now, it probably makes sense to use
|
||||
it in the future.
|
||||
@param thd Thread handler
|
||||
@param cond condition to build the multiple equalities for
|
||||
|
@ -12281,6 +12311,7 @@ static COND *build_equal_items_for_cond(THD *thd, COND *cond,
|
|||
for on expressions
|
||||
@param[out] cond_equal_ref pointer to the structure to place built
|
||||
equalities in
|
||||
@param link_equal_items equal fields are to be linked
|
||||
|
||||
@return
|
||||
pointer to the transformed condition containing multiple equalities
|
||||
|
|
|
@ -423,6 +423,8 @@ int federatedx_io_mysql::actual_query(const char *buffer, uint length)
|
|||
|
||||
if (!mysql.net.vio)
|
||||
{
|
||||
my_bool my_true= 1;
|
||||
|
||||
if (!(mysql_init(&mysql)))
|
||||
DBUG_RETURN(-1);
|
||||
|
||||
|
@ -433,6 +435,8 @@ int federatedx_io_mysql::actual_query(const char *buffer, uint length)
|
|||
*/
|
||||
/* this sets the csname like 'set names utf8' */
|
||||
mysql_options(&mysql, MYSQL_SET_CHARSET_NAME, get_charsetname());
|
||||
mysql_options(&mysql, MYSQL_OPT_USE_THREAD_SPECIFIC_MEMORY,
|
||||
(char*) &my_true);
|
||||
|
||||
if (!mysql_real_connect(&mysql,
|
||||
get_hostname(),
|
||||
|
|
|
@ -3593,12 +3593,15 @@ int ha_federatedx::discover_assisted(handlerton *hton, THD* thd,
|
|||
MYSQL_RES *res;
|
||||
MYSQL_ROW rdata;
|
||||
ulong *rlen;
|
||||
my_bool my_true= 1;
|
||||
|
||||
if (parse_url(thd->mem_root, &tmp_share, table_s, 1))
|
||||
return HA_WRONG_CREATE_OPTION;
|
||||
|
||||
mysql_init(&mysql);
|
||||
mysql_options(&mysql, MYSQL_SET_CHARSET_NAME, cs->csname);
|
||||
mysql_options(&mysql, MYSQL_OPT_USE_THREAD_SPECIFIC_MEMORY,
|
||||
(char*) &my_true);
|
||||
|
||||
if (!mysql_real_connect(&mysql, tmp_share.hostname, tmp_share.username,
|
||||
tmp_share.password, tmp_share.database,
|
||||
|
|
|
@ -131,7 +131,7 @@ static const TABLE_FIELD_TYPE field_types[]=
|
|||
|
||||
TABLE_FIELD_DEF
|
||||
table_events_waits_current::m_field_def=
|
||||
{ 19, field_types };
|
||||
{ 19, field_types, 0, (uint*) 0 };
|
||||
|
||||
PFS_engine_table_share
|
||||
table_events_waits_current::m_share=
|
||||
|
|
|
@ -67,7 +67,7 @@ static const TABLE_FIELD_TYPE field_types[]=
|
|||
|
||||
TABLE_FIELD_DEF
|
||||
table_ews_global_by_event_name::m_field_def=
|
||||
{ 6, field_types };
|
||||
{ 6, field_types, 0, (uint*) 0 };
|
||||
|
||||
PFS_engine_table_share
|
||||
table_ews_global_by_event_name::m_share=
|
||||
|
|
|
@ -49,7 +49,7 @@ static const TABLE_FIELD_TYPE field_types[]=
|
|||
|
||||
TABLE_FIELD_DEF
|
||||
table_file_instances::m_field_def=
|
||||
{ 3, field_types };
|
||||
{ 3, field_types, 0, (uint*) 0 };
|
||||
|
||||
PFS_engine_table_share
|
||||
table_file_instances::m_share=
|
||||
|
|
|
@ -59,7 +59,7 @@ static const TABLE_FIELD_TYPE fs_by_event_name_field_types[]=
|
|||
|
||||
TABLE_FIELD_DEF
|
||||
table_file_summary_by_event_name::m_field_def=
|
||||
{ 5, fs_by_event_name_field_types };
|
||||
{ 5, fs_by_event_name_field_types, 0, (uint*) 0 };
|
||||
|
||||
PFS_engine_table_share
|
||||
table_file_summary_by_event_name::m_share=
|
||||
|
@ -222,7 +222,7 @@ static const TABLE_FIELD_TYPE fs_by_instance_field_types[]=
|
|||
|
||||
TABLE_FIELD_DEF
|
||||
table_file_summary_by_instance::m_field_def=
|
||||
{ 6, fs_by_instance_field_types };
|
||||
{ 6, fs_by_instance_field_types, 0, (uint*) 0 };
|
||||
|
||||
PFS_engine_table_share
|
||||
table_file_summary_by_instance::m_share=
|
||||
|
|
|
@ -53,7 +53,7 @@ static const TABLE_FIELD_TYPE field_types[]=
|
|||
|
||||
TABLE_FIELD_DEF
|
||||
table_performance_timers::m_field_def=
|
||||
{ 4, field_types };
|
||||
{ 4, field_types, 0, (uint*) 0 };
|
||||
|
||||
PFS_engine_table_share
|
||||
table_performance_timers::m_share=
|
||||
|
|
|
@ -108,7 +108,7 @@ static const TABLE_FIELD_TYPE field_types[]=
|
|||
|
||||
TABLE_FIELD_DEF
|
||||
table_setup_consumers::m_field_def=
|
||||
{ 2, field_types };
|
||||
{ 2, field_types, 0, (uint*) 0 };
|
||||
|
||||
PFS_engine_table_share
|
||||
table_setup_consumers::m_share=
|
||||
|
|
|
@ -51,7 +51,7 @@ static const TABLE_FIELD_TYPE field_types[]=
|
|||
|
||||
TABLE_FIELD_DEF
|
||||
table_setup_instruments::m_field_def=
|
||||
{ 3, field_types };
|
||||
{ 3, field_types, 0, (uint*) 0 };
|
||||
|
||||
PFS_engine_table_share
|
||||
table_setup_instruments::m_share=
|
||||
|
|
|
@ -65,7 +65,7 @@ static const TABLE_FIELD_TYPE field_types[]=
|
|||
|
||||
TABLE_FIELD_DEF
|
||||
table_setup_timers::m_field_def=
|
||||
{ 2, field_types };
|
||||
{ 2, field_types, 0, (uint*) 0 };
|
||||
|
||||
PFS_engine_table_share
|
||||
table_setup_timers::m_share=
|
||||
|
|
|
@ -50,7 +50,7 @@ static const TABLE_FIELD_TYPE mutex_field_types[]=
|
|||
|
||||
TABLE_FIELD_DEF
|
||||
table_mutex_instances::m_field_def=
|
||||
{ 3, mutex_field_types };
|
||||
{ 3, mutex_field_types, 0, (uint*) 0 };
|
||||
|
||||
PFS_engine_table_share
|
||||
table_mutex_instances::m_share=
|
||||
|
@ -219,7 +219,7 @@ static const TABLE_FIELD_TYPE rwlock_field_types[]=
|
|||
|
||||
TABLE_FIELD_DEF
|
||||
table_rwlock_instances::m_field_def=
|
||||
{ 4, rwlock_field_types };
|
||||
{ 4, rwlock_field_types, 0, (uint*) 0 };
|
||||
|
||||
PFS_engine_table_share
|
||||
table_rwlock_instances::m_share=
|
||||
|
@ -385,7 +385,7 @@ static const TABLE_FIELD_TYPE cond_field_types[]=
|
|||
|
||||
TABLE_FIELD_DEF
|
||||
table_cond_instances::m_field_def=
|
||||
{ 2, cond_field_types };
|
||||
{ 2, cond_field_types, 0, (uint*) 0 };
|
||||
|
||||
PFS_engine_table_share
|
||||
table_cond_instances::m_share=
|
||||
|
|
|
@ -98,7 +98,7 @@ static const TABLE_FIELD_TYPE field_types[]=
|
|||
|
||||
TABLE_FIELD_DEF
|
||||
table_threads::m_field_def=
|
||||
{ 14, field_types };
|
||||
{ 14, field_types, 0, (uint*) 0 };
|
||||
|
||||
PFS_engine_table_share
|
||||
table_threads::m_share=
|
||||
|
|
|
@ -2333,7 +2333,11 @@ int ha_sphinx::write_row ( byte * )
|
|||
SPH_RET ( ER_OUT_OF_RESOURCES );
|
||||
|
||||
unsigned int uTimeout = 1;
|
||||
mysql_options ( pConn, MYSQL_OPT_CONNECT_TIMEOUT, (const char*)&uTimeout );
|
||||
my_bool my_true= 1;
|
||||
mysql_options(pConn, MYSQL_OPT_CONNECT_TIMEOUT,
|
||||
(const char*) &uTimeout);
|
||||
mysql_options(pConn, MYSQL_OPT_USE_THREAD_SPECIFIC_MEMORY,
|
||||
(char*) &my_true);
|
||||
|
||||
if ( !mysql_real_connect ( pConn, m_pShare->m_sHost, "root", "", "", m_pShare->m_iPort, m_pShare->m_sSocket, 0 ) )
|
||||
SPH_RET ( HandleMysqlError ( pConn, ER_CONNECT_TO_FOREIGN_DATA_SOURCE ) );
|
||||
|
@ -2392,7 +2396,11 @@ int ha_sphinx::delete_row ( const byte * )
|
|||
SPH_RET ( ER_OUT_OF_RESOURCES );
|
||||
|
||||
unsigned int uTimeout = 1;
|
||||
mysql_options ( pConn, MYSQL_OPT_CONNECT_TIMEOUT, (const char*)&uTimeout );
|
||||
my_bool my_true= 1;
|
||||
mysql_options(pConn, MYSQL_OPT_CONNECT_TIMEOUT,
|
||||
(const char*) &uTimeout);
|
||||
mysql_options(pConn, MYSQL_OPT_USE_THREAD_SPECIFIC_MEMORY,
|
||||
(char*) &my_true);
|
||||
|
||||
if ( !mysql_real_connect ( pConn, m_pShare->m_sHost, "root", "", "", m_pShare->m_iPort, m_pShare->m_sSocket, 0 ) )
|
||||
SPH_RET ( HandleMysqlError ( pConn, ER_CONNECT_TO_FOREIGN_DATA_SOURCE ) );
|
||||
|
|
|
@ -1462,7 +1462,6 @@ os_file_set_nocache(
|
|||
#endif
|
||||
static int os_file_set_atomic_writes(os_file_t file, const char *name)
|
||||
{
|
||||
static int first_time = 1;
|
||||
int atomic_option = 1;
|
||||
|
||||
int ret = ioctl (file, DFS_IOCTL_ATOMIC_WRITE_SET, &atomic_option);
|
||||
|
@ -2138,7 +2137,7 @@ os_file_set_size(
|
|||
"InnoDB: Error: preallocating data for"
|
||||
" file %s failed at\n"
|
||||
"InnoDB: offset 0 size %lld %lld. Operating system"
|
||||
" error number %llu.\n"
|
||||
" error number %d.\n"
|
||||
"InnoDB: Check that the disk is not full"
|
||||
" or a disk quota exceeded.\n"
|
||||
"InnoDB: Some operating system error numbers"
|
||||
|
|
Loading…
Reference in a new issue