1
0
mirror of https://github.com/MariaDB/server.git synced 2025-08-08 11:22:35 +03:00

MDEV-27647 Spider: remove HANDLER_HAS_DIRECT_UPDATE_ROWS

This commit is contained in:
Yuchen Pei
2024-06-19 13:36:48 +08:00
parent d5d65b948b
commit 0650c87d9b
15 changed files with 0 additions and 144 deletions

View File

@@ -96,9 +96,7 @@ ha_spider::ha_spider(
dml_inited = FALSE;
use_pre_call = FALSE;
use_pre_action = FALSE;
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
do_direct_update = FALSE;
#endif
#ifdef HA_CAN_BULK_ACCESS
is_bulk_access_clone = FALSE;
synced_from_clone_source = FALSE;
@@ -181,9 +179,7 @@ ha_spider::ha_spider(
dml_inited = FALSE;
use_pre_call = FALSE;
use_pre_action = FALSE;
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
do_direct_update = FALSE;
#endif
#ifdef HA_CAN_BULK_ACCESS
is_bulk_access_clone = FALSE;
synced_from_clone_source = FALSE;
@@ -793,22 +789,7 @@ void ha_spider::check_access_kind(
wide_handler->sql_command = thd_sql_command(thd);
DBUG_PRINT("info",("spider sql_command=%u", wide_handler->sql_command));
DBUG_PRINT("info",("spider thd->query_id=%lld", thd->query_id));
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
wide_handler->update_request = FALSE;
#else
if (
wide_handler->sql_command == SQLCOM_UPDATE ||
wide_handler->sql_command == SQLCOM_UPDATE_MULTI ||
/* for triggers */
wide_handler->sql_command == SQLCOM_INSERT ||
wide_handler->sql_command == SQLCOM_INSERT_SELECT ||
wide_handler->sql_command == SQLCOM_DELETE ||
wide_handler->sql_command == SQLCOM_DELETE_MULTI
)
wide_handler->update_request = TRUE;
else
wide_handler->update_request = FALSE;
#endif
DBUG_VOID_RETURN;
}
@@ -1263,9 +1244,7 @@ int ha_spider::reset()
wide_handler->condition = tmp_cond;
}
wide_handler->cond_check = FALSE;
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
wide_handler->direct_update_fields = NULL;
#endif
#ifdef INFO_KIND_FORCE_LIMIT_BEGIN
wide_handler->info_limit = 9223372036854775807LL;
#endif
@@ -1343,9 +1322,7 @@ int ha_spider::reset()
ft_count = 0;
ft_init_without_index_init = FALSE;
sql_kinds = 0;
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
do_direct_update = FALSE;
#endif
prev_index_rnd_init = SPD_NONE;
result_list.have_sql_kind_backup = FALSE;
result_list.direct_order_limit = FALSE;
@@ -1421,11 +1398,9 @@ int ha_spider::extra(
case HA_EXTRA_WRITE_CANNOT_REPLACE:
wide_handler->write_can_replace = FALSE;
break;
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
case HA_EXTRA_INSERT_WITH_UPDATE:
wide_handler->insert_with_update = TRUE;
break;
#endif
case HA_EXTRA_ATTACH_CHILDREN:
DBUG_PRINT("info",("spider HA_EXTRA_ATTACH_CHILDREN"));
if (!(wide_handler->trx = spider_get_trx(ha_thd(), TRUE, &error_num)))
@@ -1616,9 +1591,7 @@ int ha_spider::index_read_map_internal(
my_error(ER_QUERY_INTERRUPTED, MYF(0));
DBUG_RETURN(ER_QUERY_INTERRUPTED);
}
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
do_direct_update = FALSE;
#endif
if (
find_flag >= HA_READ_MBR_CONTAIN &&
find_flag <= HA_READ_MBR_EQUAL
@@ -2088,9 +2061,7 @@ int ha_spider::index_read_last_map_internal(
my_error(ER_QUERY_INTERRUPTED, MYF(0));
DBUG_RETURN(ER_QUERY_INTERRUPTED);
}
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
do_direct_update = FALSE;
#endif
if ((error_num = index_handler_init()))
DBUG_RETURN(check_error_mode_eof(error_num));
if (is_clone)
@@ -2546,9 +2517,7 @@ int ha_spider::index_first_internal(
my_error(ER_QUERY_INTERRUPTED, MYF(0));
DBUG_RETURN(ER_QUERY_INTERRUPTED);
}
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
do_direct_update = FALSE;
#endif
if ((error_num = index_handler_init()))
DBUG_RETURN(check_error_mode_eof(error_num));
if (is_clone)
@@ -2920,9 +2889,7 @@ int ha_spider::index_last_internal(
my_error(ER_QUERY_INTERRUPTED, MYF(0));
DBUG_RETURN(ER_QUERY_INTERRUPTED);
}
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
do_direct_update = FALSE;
#endif
if ((error_num = index_handler_init()))
DBUG_RETURN(check_error_mode_eof(error_num));
if (is_clone)
@@ -3347,9 +3314,7 @@ int ha_spider::read_range_first_internal(
my_error(ER_QUERY_INTERRUPTED, MYF(0));
DBUG_RETURN(ER_QUERY_INTERRUPTED);
}
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
do_direct_update = FALSE;
#endif
if (
start_key &&
start_key->flag >= HA_READ_MBR_CONTAIN &&
@@ -3935,9 +3900,7 @@ int ha_spider::read_multi_range_first_internal(
my_error(ER_QUERY_INTERRUPTED, MYF(0));
DBUG_RETURN(ER_QUERY_INTERRUPTED);
}
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
do_direct_update = FALSE;
#endif
if ((error_num = index_handler_init()))
DBUG_RETURN(check_error_mode_eof(error_num));
if (is_clone)
@@ -6809,9 +6772,7 @@ int ha_spider::rnd_next_internal(
/* do not copy table data at alter table */
if (wide_handler->sql_command == SQLCOM_ALTER_TABLE)
DBUG_RETURN(HA_ERR_END_OF_FILE);
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
do_direct_update = FALSE;
#endif
if (rnd_scan_and_first)
{
@@ -9274,12 +9235,8 @@ int ha_spider::write_row(
DBUG_RETURN(check_error_mode(error_num));
if (bulk_insert)
bulk_size =
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
(wide_handler->insert_with_update &&
!result_list.insert_dup_update_pushdown) ||
#else
wide_handler->insert_with_update ||
#endif
(!direct_dup_insert && wide_handler->ignore_dup_key) ?
0 : spider_param_bulk_size(wide_handler->trx->thd, share->bulk_size);
else
@@ -9318,7 +9275,6 @@ int ha_spider::pre_write_row(
}
#endif
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
void ha_spider::direct_update_init(
THD *thd,
bool hs_request
@@ -9328,7 +9284,6 @@ void ha_spider::direct_update_init(
do_direct_update = TRUE;
DBUG_VOID_RETURN;
}
#endif
bool ha_spider::start_bulk_update(
) {
@@ -9424,9 +9379,7 @@ int ha_spider::update_row(
#ifndef SPIDER_WITHOUT_HA_STATISTIC_INCREMENT
ha_statistic_increment(&SSV::ha_update_count);
#endif
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
do_direct_update = FALSE;
#endif
if ((error_num = spider_db_update(this, table, old_data)))
DBUG_RETURN(check_error_mode(error_num));
if (table->found_next_number_field &&
@@ -9470,7 +9423,6 @@ int ha_spider::update_row(
DBUG_RETURN(0);
}
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
bool ha_spider::check_direct_update_sql_part(
st_select_lex *select_lex,
longlong select_limit,
@@ -10006,7 +9958,6 @@ int ha_spider::pre_direct_update_rows()
}
#endif
#endif
#endif
bool ha_spider::start_bulk_delete(
) {
@@ -10056,15 +10007,12 @@ int ha_spider::delete_row(
#ifndef SPIDER_WITHOUT_HA_STATISTIC_INCREMENT
ha_statistic_increment(&SSV::ha_delete_count);
#endif
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
do_direct_update = FALSE;
#endif
if ((error_num = spider_db_delete(this, table, buf)))
DBUG_RETURN(check_error_mode(error_num));
DBUG_RETURN(0);
}
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
bool ha_spider::check_direct_delete_sql_part(
st_select_lex *select_lex,
longlong select_limit,
@@ -10451,7 +10399,6 @@ int ha_spider::pre_direct_delete_rows()
}
#endif
#endif
#endif
int ha_spider::delete_all_rows()
{
@@ -10480,9 +10427,7 @@ int ha_spider::truncate()
{
DBUG_RETURN(error_num);
}
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
do_direct_update = FALSE;
#endif
sql_kinds = SPIDER_SQL_KIND_SQL;
for (roop_count = 0; roop_count < (int) share->link_count; roop_count++)
sql_kind[roop_count] = SPIDER_SQL_KIND_SQL;
@@ -11453,8 +11398,6 @@ int ha_spider::info_push(
#endif
#ifdef HA_CAN_BULK_ACCESS
if (
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
#endif
info_type != INFO_KIND_BULK_ACCESS_BEGIN &&
info_type != INFO_KIND_BULK_ACCESS_CURRENT &&
info_type != INFO_KIND_BULK_ACCESS_END
@@ -11476,10 +11419,8 @@ int ha_spider::info_push(
}
#endif
#if defined(HANDLER_HAS_DIRECT_UPDATE_ROWS) || defined(HA_CAN_BULK_ACCESS)
switch (info_type)
{
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
#ifdef INFO_KIND_UPDATE_FIELDS
case INFO_KIND_UPDATE_FIELDS:
DBUG_PRINT("info",("spider INFO_KIND_UPDATE_FIELDS"));
@@ -11507,7 +11448,6 @@ int ha_spider::info_push(
wide_handler->info_limit = 9223372036854775807LL;
break;
#endif
#endif
#ifdef HA_CAN_BULK_ACCESS
case INFO_KIND_BULK_ACCESS_BEGIN:
DBUG_PRINT("info",("spider INFO_KIND_BULK_ACCESS_BEGIN"));
@@ -11570,7 +11510,6 @@ int ha_spider::info_push(
default:
break;
}
#endif
DBUG_RETURN(error_num);
}
@@ -12379,9 +12318,7 @@ int ha_spider::index_handler_init()
roop_end = search_link_idx + 1;
}
sql_kinds = 0;
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
direct_update_kinds = 0;
#endif
for (roop_count = roop_start; roop_count < roop_end;
roop_count = spider_conn_link_idx_next(share->link_statuses,
conn_link_idx, roop_count, share->link_count,
@@ -12467,9 +12404,7 @@ int ha_spider::rnd_handler_init()
roop_end = search_link_idx + 1;
}
sql_kinds = 0;
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
direct_update_kinds = 0;
#endif
for (roop_count = roop_start; roop_count < roop_end;
roop_count = spider_conn_link_idx_next(share->link_statuses,
conn_link_idx, roop_count, share->link_count,
@@ -12695,7 +12630,6 @@ void ha_spider::check_pre_call(
DBUG_VOID_RETURN;
}
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
void ha_spider::check_insert_dup_update_pushdown()
{
THD *thd = wide_handler->trx->thd;
@@ -12714,7 +12648,6 @@ void ha_spider::check_insert_dup_update_pushdown()
}
DBUG_VOID_RETURN;
}
#endif
#ifdef HA_CAN_BULK_ACCESS
SPIDER_BULK_ACCESS_LINK *ha_spider::create_bulk_access_link()
@@ -12848,8 +12781,6 @@ int ha_spider::sync_from_clone_source(
external_lock_cnt = spider->external_lock_cnt;
}
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
#endif
DBUG_PRINT("info",("spider bulk_access_link->spider->dbton_handler=%p",
dbton_handler));
DBUG_PRINT("info",("spider ptr bulk_access_link->spider->dbton_handler=%p",
@@ -13132,7 +13063,6 @@ int ha_spider::append_update_set_sql_part()
DBUG_RETURN(0);
}
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
int ha_spider::append_direct_update_set_sql_part()
{
int error_num;
@@ -13153,9 +13083,7 @@ int ha_spider::append_direct_update_set_sql_part()
DBUG_RETURN(0);
}
#endif
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
int ha_spider::append_dup_update_pushdown_sql_part(
const char *alias,
uint alias_length
@@ -13221,7 +13149,6 @@ int ha_spider::check_update_columns_sql_part()
}
DBUG_RETURN(0);
}
#endif
int ha_spider::append_delete_sql_part()
{
@@ -15030,12 +14957,10 @@ int ha_spider::dml_init()
conns[roop_count]->semi_trx_isolation = -1;
}
}
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
if (wide_handler->insert_with_update)
{
check_insert_dup_update_pushdown();
}
#endif
dml_inited = TRUE;
DBUG_RETURN(0);
}

View File

@@ -175,10 +175,8 @@ public:
corresponding m_handler_cid is t00003
*/
char **m_handler_cid;
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
bool do_direct_update;
uint direct_update_kinds;
#endif
spider_index_rnd_init prev_index_rnd_init;
#ifdef HANDLER_HAS_DIRECT_AGGREGATE
SPIDER_ITEM_HLD *direct_aggregate_item_first;
@@ -494,12 +492,10 @@ public:
uchar *buf
);
#endif
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
void direct_update_init(
THD *thd,
bool hs_request
);
#endif
bool start_bulk_update() override;
int exec_bulk_update(
ha_rows *dup_key_found
@@ -526,7 +522,6 @@ public:
uchar *new_data
);
#endif
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
bool check_direct_update_sql_part(
st_select_lex *select_lex,
longlong select_limit,
@@ -648,14 +643,12 @@ public:
#else
int pre_direct_update_rows();
#endif
#endif
#endif
bool start_bulk_delete() override;
int end_bulk_delete() override;
int delete_row(
const uchar *buf
) override;
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
bool check_direct_delete_sql_part(
st_select_lex *select_lex,
longlong select_limit,
@@ -724,7 +717,6 @@ public:
#else
int pre_direct_delete_rows();
#endif
#endif
#endif
int delete_all_rows() override;
int truncate() override;
@@ -895,9 +887,7 @@ public:
void check_pre_call(
bool use_parallel
);
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
void check_insert_dup_update_pushdown();
#endif
#ifdef HA_CAN_BULK_ACCESS
SPIDER_BULK_ACCESS_LINK *create_bulk_access_link();
void delete_bulk_access_link(
@@ -926,10 +916,7 @@ public:
int append_insert_sql_part();
int append_update_sql_part();
int append_update_set_sql_part();
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
int append_direct_update_set_sql_part();
#endif
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
int append_dup_update_pushdown_sql_part(
const char *alias,
uint alias_length
@@ -939,7 +926,6 @@ public:
uint alias_length
);
int check_update_columns_sql_part();
#endif
int append_delete_sql_part();
int append_select_sql_part(
ulong sql_type

View File

@@ -4100,7 +4100,6 @@ bool spider_conn_use_handler(
DBUG_PRINT("info",("spider use_handler=%d", use_handler));
DBUG_PRINT("info",("spider spider->conn_kind[link_idx]=%u",
spider->conn_kind[link_idx]));
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
if (spider->do_direct_update)
{
spider->sql_kinds |= SPIDER_SQL_KIND_SQL;
@@ -4109,7 +4108,6 @@ bool spider_conn_use_handler(
DBUG_PRINT("info",("spider FALSE by using direct_update"));
DBUG_RETURN(FALSE);
}
#endif
if (spider->use_spatial_index)
{
DBUG_PRINT("info",("spider FALSE by use_spatial_index"));

View File

@@ -6908,7 +6908,6 @@ int spider_db_update(
DBUG_RETURN(0);
}
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS_WITH_HS
int spider_db_direct_update(
ha_spider *spider,
@@ -6956,17 +6955,14 @@ int spider_db_direct_update(
(spider->direct_update_kinds & SPIDER_SQL_KIND_HS)
*/
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
if (!spider->do_direct_update)
{
#endif
if (
(spider->sql_kinds & SPIDER_SQL_KIND_SQL) &&
(error_num = spider->append_update_set_sql_part())
) {
DBUG_RETURN(error_num);
}
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
} else {
if (
(spider->direct_update_kinds & SPIDER_SQL_KIND_SQL) &&
@@ -6975,7 +6971,6 @@ int spider_db_direct_update(
DBUG_RETURN(error_num);
}
}
#endif
result_list->desc_flg = FALSE;
result_list->sorted = TRUE;
@@ -7171,17 +7166,14 @@ int spider_db_direct_update(
spider->wide_handler->direct_update_fields
*/
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
if (!spider->do_direct_update)
{
#endif
if (
(spider->sql_kinds & SPIDER_SQL_KIND_SQL) &&
(error_num = spider->append_update_set_sql_part())
) {
DBUG_RETURN(error_num);
}
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
} else {
if (
(spider->direct_update_kinds & SPIDER_SQL_KIND_SQL) &&
@@ -7190,7 +7182,6 @@ int spider_db_direct_update(
DBUG_RETURN(error_num);
}
}
#endif
result_list->desc_flg = FALSE;
result_list->sorted = TRUE;
@@ -7351,7 +7342,6 @@ int spider_db_direct_update(
DBUG_RETURN(0);
}
#endif
#endif
#ifdef HA_CAN_BULK_ACCESS
int spider_db_bulk_direct_update(
@@ -7491,7 +7481,6 @@ int spider_db_delete(
DBUG_RETURN(0);
}
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS_WITH_HS
int spider_db_direct_delete(
ha_spider *spider,
@@ -7858,7 +7847,6 @@ int spider_db_direct_delete(
DBUG_RETURN(error_num2);
}
#endif
#endif
int spider_db_delete_all_rows(
ha_spider *spider
@@ -9506,7 +9494,6 @@ int spider_db_append_condition(
DBUG_RETURN(0);
}
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
int spider_db_append_update_columns(
ha_spider *spider,
spider_string *str,
@@ -9561,7 +9548,6 @@ int spider_db_append_update_columns(
str->length(str->length() - SPIDER_SQL_COMMA_LEN);
DBUG_RETURN(0);
}
#endif
#ifdef HANDLER_HAS_DIRECT_AGGREGATE
bool spider_db_check_select_colum_in_group(

View File

@@ -799,7 +799,6 @@ int spider_db_update(
const uchar *old_data
);
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS_WITH_HS
int spider_db_direct_update(
ha_spider *spider,
@@ -817,7 +816,6 @@ int spider_db_direct_update(
ha_rows *found_rows
);
#endif
#endif
#ifdef HA_CAN_BULK_ACCESS
int spider_db_bulk_direct_update(
@@ -838,7 +836,6 @@ int spider_db_delete(
const uchar *buf
);
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS_WITH_HS
int spider_db_direct_delete(
ha_spider *spider,
@@ -854,7 +851,6 @@ int spider_db_direct_delete(
ha_rows *delete_rows
);
#endif
#endif
int spider_db_delete_all_rows(
ha_spider *spider
@@ -1056,7 +1052,6 @@ int spider_db_append_condition(
bool test_flg
);
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
int spider_db_append_update_columns(
ha_spider *spider,
spider_string *str,
@@ -1066,7 +1061,6 @@ int spider_db_append_update_columns(
bool use_fields,
spider_fields *fields
);
#endif
#ifdef HANDLER_HAS_DIRECT_AGGREGATE
bool spider_db_check_select_colum_in_group(

View File

@@ -154,7 +154,6 @@ int spider_db_handler::checksum_table(
}
#endif
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
bool spider_db_handler::check_direct_update(
st_select_lex *select_lex,
longlong select_limit,
@@ -188,4 +187,3 @@ bool spider_db_handler::check_direct_delete(
}
DBUG_RETURN(FALSE);
}
#endif

View File

@@ -1188,7 +1188,6 @@ public:
virtual int append_update_part() = 0;
virtual int append_delete_part() = 0;
virtual int append_update_set_part() = 0;
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
virtual int append_direct_update_set_part() = 0;
virtual int append_dup_update_pushdown_part(
const char *alias,
@@ -1199,7 +1198,6 @@ public:
uint alias_length
) = 0;
virtual int check_update_columns_part() = 0;
#endif
virtual int append_select_part(
ulong sql_type
) = 0;
@@ -1591,7 +1589,6 @@ public:
ulong sql_type
) = 0;
#endif
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
virtual bool check_direct_update(
st_select_lex *select_lex,
longlong select_limit,
@@ -1602,7 +1599,6 @@ public:
longlong select_limit,
longlong offset_limit
);
#endif
};
class spider_db_copy_table

View File

@@ -9167,11 +9167,7 @@ int spider_mbase_handler::append_insert(
spider->wide_handler->ignore_dup_key &&
spider->direct_dup_insert &&
!spider->wide_handler->write_can_replace &&
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
(!spider->wide_handler->insert_with_update || !dup_update_sql.length()) &&
#else
!spider->wide_handler->insert_with_update &&
#endif
/* for direct_dup_insert without patch for partition */
spider->wide_handler->sql_command != SQLCOM_REPLACE &&
spider->wide_handler->sql_command != SQLCOM_REPLACE_SELECT
@@ -9329,7 +9325,6 @@ int spider_mbase_handler::append_update_set(
DBUG_RETURN(0);
}
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
int spider_mbase_handler::append_direct_update_set_part()
{
int error_num;
@@ -9406,7 +9401,6 @@ int spider_mbase_handler::append_update_columns(
alias, alias_length, dbton_id, FALSE, NULL);
DBUG_RETURN(error_num);
}
#endif
int spider_mbase_handler::append_select_part(
ulong sql_type
@@ -15721,7 +15715,6 @@ int spider_mbase_handler::append_order_by(
}
#endif
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
bool spider_mbase_handler::check_direct_update(
st_select_lex *select_lex,
longlong select_limit,
@@ -15741,7 +15734,6 @@ bool spider_mbase_handler::check_direct_delete(
DBUG_PRINT("info",("spider this=%p", this));
DBUG_RETURN(FALSE);
}
#endif
spider_mbase_copy_table::spider_mbase_copy_table(
spider_mbase_share *db_share

View File

@@ -858,7 +858,6 @@ public:
int append_update_set(
spider_string *str
);
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
int append_direct_update_set_part() override;
int append_direct_update_set(
spider_string *str
@@ -877,7 +876,6 @@ public:
const char *alias,
uint alias_length
);
#endif
int append_select_part(
ulong sql_type
) override;
@@ -1555,7 +1553,6 @@ public:
spider_fields *fields
);
#endif
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
bool check_direct_update(
st_select_lex *select_lex,
longlong select_limit,
@@ -1566,7 +1563,6 @@ public:
longlong select_limit,
longlong offset_limit
) override;
#endif
};
class spider_mysql_handler: public spider_mbase_handler

View File

@@ -6329,7 +6329,6 @@ int spider_oracle_handler::append_update_set(
DBUG_RETURN(0);
}
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
int spider_oracle_handler::append_direct_update_set_part()
{
int error_num;
@@ -6446,7 +6445,6 @@ int spider_oracle_handler::append_update_columns(
DBUG_RETURN(error_num);
*/
}
#endif
int spider_oracle_handler::append_select_part(
ulong sql_type

View File

@@ -743,7 +743,6 @@ public:
int append_update_set(
spider_string *str
);
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
int append_direct_update_set_part();
int append_direct_update_set(
spider_string *str
@@ -762,7 +761,6 @@ public:
const char *alias,
uint alias_length
);
#endif
int append_select_part(
ulong sql_type
);

View File

@@ -25,7 +25,6 @@
#define SPIDER_SUPPORT_CREATE_OR_REPLACE_TABLE
#define HANDLER_HAS_TOP_TABLE_FIELDS
#define HANDLER_HAS_DIRECT_UPDATE_ROWS
#define HANDLER_HAS_DIRECT_AGGREGATE
#define PARTITION_HAS_GET_PART_SPEC
#define HANDLER_HAS_NEED_INFO_FOR_AUTO_INC

View File

@@ -1033,10 +1033,8 @@ static int spider_prepare_init_scan(
for (link_idx = 0; link_idx < (int) share->link_count; ++link_idx)
spider->sql_kind[link_idx] = SPIDER_SQL_KIND_SQL;
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
spider->do_direct_update = FALSE;
spider->direct_update_kinds = 0;
#endif
spider_get_select_limit(spider, &select_lex, &select_limit, &offset_limit);
direct_order_limit = spider_param_direct_order_limit(thd,
share->direct_order_limit);

View File

@@ -880,10 +880,8 @@ typedef struct st_spider_wide_handler
#ifdef WITH_PARTITION_STORAGE_ENGINE
SPIDER_PARTITION_HANDLER *partition_handler;
#endif
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
List<Item> *direct_update_fields;
List<Item> *direct_update_values;
#endif
TABLE_SHARE *top_share;
enum thr_lock_type lock_type;
uchar lock_table_type;
@@ -892,11 +890,9 @@ typedef struct st_spider_wide_handler
int cond_check_error;
uint sql_command;
uint top_table_fields;
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
#ifdef INFO_KIND_FORCE_LIMIT_BEGIN
longlong info_limit;
#endif
#endif
#ifdef HA_CAN_BULK_ACCESS
ulonglong external_lock_cnt;
#endif

View File

@@ -109,7 +109,6 @@ extern volatile ulonglong spider_mon_table_cache_version_req;
MYSQL_SYSVAR_NAME(param_name).def_val; \
}
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
static int spider_direct_update(THD *thd, SHOW_VAR *var, void *,
system_status_var *, enum_var_type)
{
@@ -133,7 +132,6 @@ static int spider_direct_delete(THD *thd, SHOW_VAR *var, void *,
var->value = (char *) &trx->direct_delete_count;
DBUG_RETURN(error_num);
}
#endif
static int spider_direct_order_limit(THD *thd, SHOW_VAR *var, void *,
system_status_var *, enum_var_type)
@@ -178,7 +176,6 @@ struct st_mysql_show_var spider_status_variables[] =
(char *) &spider_mon_table_cache_version, SHOW_LONGLONG},
{"Spider_mon_table_cache_version_req",
(char *) &spider_mon_table_cache_version_req, SHOW_LONGLONG},
#ifdef HANDLER_HAS_DIRECT_UPDATE_ROWS
#ifdef SPIDER_HAS_SHOW_SIMPLE_FUNC
{"Spider_direct_update", (char *) &spider_direct_update, SHOW_SIMPLE_FUNC},
{"Spider_direct_delete", (char *) &spider_direct_delete, SHOW_SIMPLE_FUNC},
@@ -186,7 +183,6 @@ struct st_mysql_show_var spider_status_variables[] =
{"Spider_direct_update", (char *) &spider_direct_update, SHOW_FUNC},
{"Spider_direct_delete", (char *) &spider_direct_delete, SHOW_FUNC},
#endif
#endif
#ifdef SPIDER_HAS_SHOW_SIMPLE_FUNC
{"Spider_direct_order_limit",
(char *) &spider_direct_order_limit, SHOW_SIMPLE_FUNC},