summaryrefslogtreecommitdiff
path: root/sql/ha_federated.h
diff options
context:
space:
mode:
Diffstat (limited to 'sql/ha_federated.h')
-rw-r--r--sql/ha_federated.h20
1 files changed, 12 insertions, 8 deletions
diff --git a/sql/ha_federated.h b/sql/ha_federated.h
index 28c89561b2c..b5e1c217eb5 100644
--- a/sql/ha_federated.h
+++ b/sql/ha_federated.h
@@ -159,6 +159,7 @@ class ha_federated: public handler
char remote_error_buf[FEDERATED_QUERY_BUFFER_SIZE];
bool ignore_duplicates, replace_duplicates;
bool insert_dup_update;
+ DYNAMIC_STRING bulk_insert;
private:
/*
@@ -173,6 +174,14 @@ private:
bool records_in_range);
int stash_remote_error();
+ bool append_stmt_insert(String *query);
+
+ int read_next(byte *buf, MYSQL_RES *result);
+ int index_read_idx_with_result_set(byte *buf, uint index,
+ const byte *key,
+ uint key_len,
+ ha_rkey_function find_flag,
+ MYSQL_RES **result);
public:
ha_federated(TABLE *table_arg);
~ha_federated()
@@ -258,6 +267,8 @@ public:
int open(const char *name, int mode, uint test_if_locked); // required
int close(void); // required
+ void start_bulk_insert(ha_rows rows);
+ int end_bulk_insert();
int write_row(byte *buf);
int update_row(const byte *old_data, byte *new_data);
int delete_row(const byte *buf);
@@ -301,14 +312,7 @@ public:
THR_LOCK_DATA **store_lock(THD *thd, THR_LOCK_DATA **to,
enum thr_lock_type lock_type); //required
- virtual bool get_error_message(int error, String *buf);
-
- int read_next(byte *buf, MYSQL_RES *result);
- int index_read_idx_with_result_set(byte *buf, uint index,
- const byte *key,
- uint key_len,
- ha_rkey_function find_flag,
- MYSQL_RES **result);
+ bool get_error_message(int error, String *buf);
};
bool federated_db_init(void);