MCPcopy Create free account
hub / github.com/Meituan-Dianping/SQLAdvisor / init_update_queries

Function init_update_queries

sql/sql_parse.cc:161–468  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

159uint server_command_flags[COM_END+1];
160
161void init_update_queries(void)
162{
163 /* Initialize the server command flags array. */
164 memset(server_command_flags, 0, sizeof(server_command_flags));
165
166 server_command_flags[COM_STATISTICS]= CF_SKIP_QUESTIONS;
167 server_command_flags[COM_PING]= CF_SKIP_QUESTIONS;
168 server_command_flags[COM_STMT_PREPARE]= CF_SKIP_QUESTIONS;
169 server_command_flags[COM_STMT_CLOSE]= CF_SKIP_QUESTIONS;
170 server_command_flags[COM_STMT_RESET]= CF_SKIP_QUESTIONS;
171
172 /* Initialize the sql command flags array. */
173 memset(sql_command_flags, 0, sizeof(sql_command_flags));
174
175 /*
176 In general, DDL statements do not generate row events and do not go
177 through a cache before being written to the binary log. However, the
178 CREATE TABLE...SELECT is an exception because it may generate row
179 events. For that reason, the SQLCOM_CREATE_TABLE which represents
180 a CREATE TABLE, including the CREATE TABLE...SELECT, has the
181 CF_CAN_GENERATE_ROW_EVENTS flag. The distinction between a regular
182 CREATE TABLE and the CREATE TABLE...SELECT is made in other parts of
183 the code, in particular in the Query_log_event's constructor.
184 */
185 sql_command_flags[SQLCOM_CREATE_TABLE]= CF_CHANGES_DATA | CF_REEXECUTION_FRAGILE |
186 CF_AUTO_COMMIT_TRANS |
187 CF_CAN_GENERATE_ROW_EVENTS;
188 sql_command_flags[SQLCOM_CREATE_INDEX]= CF_CHANGES_DATA | CF_AUTO_COMMIT_TRANS;
189 sql_command_flags[SQLCOM_ALTER_TABLE]= CF_CHANGES_DATA | CF_WRITE_LOGS_COMMAND |
190 CF_AUTO_COMMIT_TRANS;
191 sql_command_flags[SQLCOM_TRUNCATE]= CF_CHANGES_DATA | CF_WRITE_LOGS_COMMAND |
192 CF_AUTO_COMMIT_TRANS;
193 sql_command_flags[SQLCOM_DROP_TABLE]= CF_CHANGES_DATA | CF_AUTO_COMMIT_TRANS;
194 sql_command_flags[SQLCOM_LOAD]= CF_CHANGES_DATA | CF_REEXECUTION_FRAGILE |
195 CF_CAN_GENERATE_ROW_EVENTS;
196 sql_command_flags[SQLCOM_CREATE_DB]= CF_CHANGES_DATA | CF_AUTO_COMMIT_TRANS;
197 sql_command_flags[SQLCOM_DROP_DB]= CF_CHANGES_DATA | CF_AUTO_COMMIT_TRANS;
198 sql_command_flags[SQLCOM_ALTER_DB_UPGRADE]= CF_AUTO_COMMIT_TRANS;
199 sql_command_flags[SQLCOM_ALTER_DB]= CF_CHANGES_DATA | CF_AUTO_COMMIT_TRANS;
200 sql_command_flags[SQLCOM_RENAME_TABLE]= CF_CHANGES_DATA | CF_AUTO_COMMIT_TRANS;
201 sql_command_flags[SQLCOM_DROP_INDEX]= CF_CHANGES_DATA | CF_AUTO_COMMIT_TRANS;
202 sql_command_flags[SQLCOM_CREATE_VIEW]= CF_CHANGES_DATA | CF_REEXECUTION_FRAGILE |
203 CF_AUTO_COMMIT_TRANS;
204 sql_command_flags[SQLCOM_DROP_VIEW]= CF_CHANGES_DATA | CF_AUTO_COMMIT_TRANS;
205 sql_command_flags[SQLCOM_CREATE_TRIGGER]= CF_CHANGES_DATA | CF_AUTO_COMMIT_TRANS;
206 sql_command_flags[SQLCOM_DROP_TRIGGER]= CF_CHANGES_DATA | CF_AUTO_COMMIT_TRANS;
207 sql_command_flags[SQLCOM_CREATE_EVENT]= CF_CHANGES_DATA | CF_AUTO_COMMIT_TRANS;
208 sql_command_flags[SQLCOM_ALTER_EVENT]= CF_CHANGES_DATA | CF_AUTO_COMMIT_TRANS;
209 sql_command_flags[SQLCOM_DROP_EVENT]= CF_CHANGES_DATA | CF_AUTO_COMMIT_TRANS;
210
211 sql_command_flags[SQLCOM_UPDATE]= CF_CHANGES_DATA | CF_REEXECUTION_FRAGILE |
212 CF_CAN_GENERATE_ROW_EVENTS |
213 CF_OPTIMIZER_TRACE |
214 CF_CAN_BE_EXPLAINED;
215 sql_command_flags[SQLCOM_UPDATE_MULTI]= CF_CHANGES_DATA | CF_REEXECUTION_FRAGILE |
216 CF_CAN_GENERATE_ROW_EVENTS |
217 CF_OPTIMIZER_TRACE |
218 CF_CAN_BE_EXPLAINED;

Callers 1

init_server_componentsFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected