summaryrefslogtreecommitdiff
path: root/storage/spider/spd_db_handlersocket.cc
diff options
context:
space:
mode:
authorKentoku SHIBA <kentokushiba@gmail.com>2013-08-24 14:42:40 +0900
committerKentoku SHIBA <kentokushiba@gmail.com>2013-08-24 14:42:40 +0900
commit49a4bbe1e7e4e3a1abbc26740d45482de4b4b609 (patch)
treea77e5875bb7fdecd23535dac9cbffd5e03303b00 /storage/spider/spd_db_handlersocket.cc
parente1fc2f4d280584d67e2b04967e55d9b685bb0dba (diff)
downloadmariadb-git-49a4bbe1e7e4e3a1abbc26740d45482de4b4b609.tar.gz
Add spider_general_log and spider_log_result_errors feature.
Diffstat (limited to 'storage/spider/spd_db_handlersocket.cc')
-rw-r--r--storage/spider/spd_db_handlersocket.cc18
1 files changed, 18 insertions, 0 deletions
diff --git a/storage/spider/spd_db_handlersocket.cc b/storage/spider/spd_db_handlersocket.cc
index 1dd6eb655bd..096cf0befa9 100644
--- a/storage/spider/spd_db_handlersocket.cc
+++ b/storage/spider/spd_db_handlersocket.cc
@@ -1061,6 +1061,24 @@ int spider_db_handlersocket::exec_query(
(*hs_conn_p)->get_num_req_rcvd()));
DBUG_PRINT("info",("spider hs response_end_offset=%zu",
(*hs_conn_p)->get_response_end_offset()));
+ if (spider_param_general_log())
+ {
+ const char *tgt_str = conn->hs_sock ? conn->hs_sock : conn->tgt_host;
+ uint32 tgt_len = strlen(tgt_str);
+ spider_string tmp_query_str((*hs_conn_p)->get_writebuf_size() +
+ conn->tgt_wrapper_length +
+ tgt_len + (SPIDER_SQL_SPACE_LEN * 2));
+ tmp_query_str.init_calc_mem(231);
+ tmp_query_str.length(0);
+ tmp_query_str.q_append(conn->tgt_wrapper, conn->tgt_wrapper_length);
+ tmp_query_str.q_append(SPIDER_SQL_SPACE_STR, SPIDER_SQL_SPACE_LEN);
+ tmp_query_str.q_append(tgt_str, tgt_len);
+ tmp_query_str.q_append(SPIDER_SQL_SPACE_STR, SPIDER_SQL_SPACE_LEN);
+ tmp_query_str.q_append((*hs_conn_p)->get_writebuf_begin(),
+ (*hs_conn_p)->get_writebuf_size());
+ general_log_write(current_thd, COM_QUERY, tmp_query_str.ptr(),
+ tmp_query_str.length());
+ }
if ((*hs_conn_p)->request_send() < 0)
{
DBUG_PRINT("info",("spider hs num_req_bufd=%zu",