暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

MYSQL跟踪


在学习编译和调试MYSQL源码的时候,我们是先有了鸡,才去找蛋!

是你知道了函数名,然后给它打个断点,然后去调试,步步追随!

以下两种调试方法

用VSCODE 编辑编译调试MYSQL8
这个用IDE的 需要一个干净的环境才好

这个是用LINUX下 编译查看源码的 主要使用GDB命令

MYSQL 源码DEBUG编译


假设 你想知道一个SQL语句到底要执行哪些函数呢? 那么就要使用MYSQL
TRAC功能了

要开启MYSQL TRAC功能 需要DEBUG版本

那我们上面的工作是有价值意义的.

在 shell 命令行指定调试控制字符串,示例:

--debug=d:t
--debug=d:f,main,subr1:F:L:t,20
--debug=d,input,output,files:n
--debug=d:t:i:O,\\mysqld.trace
复制

对于mysqld,也可以通过设置debug系统变量在运行时更改DBUG设置。此变量具有全局值和会话值:

mysql> SET GLOBAL debug = 'debug_options';
mysql
> SET SESSION debug = 'debug_options';
复制

debug_options值是一系列冒号分隔的字段,值中的每个字段都由一个强制标志字符组成,前面可选+或-字符,后面可选逗号分隔的修饰符列表

[+|-]flag[,modifier,modifier,...,modifier]
复制

下表介绍标志字符。无法识别的标志字符将被自动忽略。 

这些东西稍微看看,不要死记硬背,看不懂意思也就算了,没啥大不了的,当作手册,以后可查!

标识字符描述
d为当前状态启用DBUG_XXX宏的输出。后面可能会有一个关键字列表,该列表仅为具有该关键字的DBUG宏启用输出。关键字的空列表启用所有宏的输出.在MySQL中,要启用的常见调试宏关键字有enter、exit、error、warning、info和loop。如:set debug = 'd,info';   获取代码中DBUG_PRINT("info:" 打印的日志)
D每个调试器输出行之后的延迟。论点是延迟,以十分之一秒为单位,取决于机器的能力。例如,D,20指定两秒的延迟。
f将调试、跟踪和分析限制在命名函数列表中。空列表启用所有功能。仍然必须给出适当的d或t标志;此标志仅在启用时限制其操作。
F标识每行调试或跟踪输出的源文件名。
i用每行调试或跟踪输出的PID或线程ID标识进程
L标识调试或跟踪输出每行的源文件行号
n打印每行调试或跟踪输出的当前函数嵌套深度
N对调试输出的每行进行编号
o将调试器输出流重定向到指定文件。默认输出为stderr
O与o类似,但文件在每次写入之间都会被刷新。需要时,在每次写入之间关闭并重新打开文件
P将调试器操作限制为指定进程。一个进程必须用DBUG_进程宏标识,并与列表中的一个进程匹配,才能执行调试器操作
p打印每行调试或跟踪输出的当前进程名称
r推送新状态时,不要继承以前状态的函数嵌套级别。当输出从左边距开始时有用。
S在每个已调试的函数上执行函数_sanity(_file_,_line_))直到_sanity()返回与0不同的内容
t启用函数调用/退出跟踪线。后面可能会有一个列表(仅包含一个修饰符),给出数字最大跟踪级别,超过该级别,调试或跟踪宏都不会出现输出。默认为编译时选项。

前导+或-字符和尾随修饰符列表用于标志字符,如d或f,可以对所有适用修饰符或其中一些修饰符启用调试操作:

如果没有前导+或-,则标志值将精确设置为给定的修饰符列表。使用前导+或-,列表中的修饰符将添加到当前修饰符列表或从中减去

以下示例显示了这如何适用于d标志。为所有调试宏启用了空d列表输出。非空列表仅为列表中的宏关键字启用输出。

这些语句将d值设置为给定的修饰符列表:


mysql> SET debug = 'd';
mysql> SELECT @@debug;
+---------+
| @@debug |
+---------+
| d       |
+---------+
mysql> SET debug = 'd,error,warning';
mysql> SELECT @@debug;
+-----------------+
| @@debug         |
+-----------------+
| d,error,warning |
+-----------------+

复制


删除标志符号

mysql> SET debug = '+d,loop';
mysql> SELECT @@debug;
+----------------------+
| @@debug              |
+----------------------+
| d,error,warning,loop |
+----------------------+

mysql> SET debug = '-d,error,loop';
mysql> SELECT @@debug;
+-----------+
| @@debug   |
+-----------+
| d,warning |
+-----------+

复制

复制
set debug = 'd:t:o,/tmp/mysqld.trace';   只对当前会话生效,只对当前执行的语句 trace。
复制
结果比较清晰
复制

复制
我们玩一把
复制
mysql> set debug = 'd:t:F:i:L:n:p:o,/root/mysqld.trace'
Query OK, 0 rows affected (0.00 sec)

mysql> select * from treenodes;
+----+----------+------+
| id | nodename | pid  |
+----+----------+------+
|  1 | A        |    0 |
|  2 | B        |    1 |
|  3 | C        |    1 |
|  4 | D        |    2 |
|  5 | E        |    2 |
|  6 | F        |    3 |
|  7 | G        |    6 |
|  8 | H        |    0 |
|  9 | I        |    8 |
| 10 | J        |    8 |
| 11 | K        |    8 |
| 12 | L        |    9 |
| 13 | M        |    9 |
| 14 | N        |   12 |
| 15 | O        |   12 |
| 16 | P        |   15 |
| 17 | Q        |   15 |
+----+----------+------+
17 rows in set (0.00 sec)


复制

复制

复制
开另外个窗口查看 ,约116K ,
复制
第一列不知道啥,
复制
第二列是源码文件名,
复制
第三列不知道啥
复制
第四列是 嵌套统计
复制
第五列 竖型符号 用来嵌套格式化 好看
第六列 大于和小于 < > 表示函数进入,函数退出
第7列 是 类::成员函数
复制
第八列 是源码文件+行号
复制
-rw-r-----  1 0 0 116K 2038-03-23 17:45:16 mysqld.trace
[root@localhost ~]# vim mysqld.trace 

T@238: sql_security_ctx.cc:   792:    6: | | | | | >Security_context::user
T@238: sql_security_ctx.cc:    6: | | | | | <Security_context::user
T@238: sql_security_ctx.cc:   792:    6: | | | | | >Security_context::user
T@238: sql_security_ctx.cc:    6: | | | | | <Security_context::user
T@238: sql_security_ctx.cc:   850:    6: | | | | | >Security_context::host
T@238: sql_security_ctx.cc:    6: | | | | | <Security_context::host
T@238: sql_security_ctx.cc:   850:    6: | | | | | >Security_context::host
T@238: sql_security_ctx.cc:    6: | | | | | <Security_context::host
T@238:     set_var.cc:    5: | | | | <sql_set_variables
T@238:   sql_error.cc:   375:    5: | | | | >Diagnostics_area::set_ok_status
T@238:   sql_error.cc:    5: | | | | <Diagnostics_area::set_ok_status
T@238:   sql_parse.cc:   314:    4: | | | | THD::enter_stage: 'query end' /home/source_code/mysql-8.0.24/sql/sql_parse.cc:4542
T@238: sql_profile.cc:   350:    5: | | | | >PROFILING::status_change
T@238: sql_profile.cc:    5: | | | | <PROFILING::status_change
T@238:   sql_audit.cc:  1084:    5: | | | | >mysql_audit_acquire_plugins
T@238:   sql_audit.cc:    5: | | | | <mysql_audit_acquire_plugins
T@238: transaction.cc:   513:    5: | | | | >trans_commit_stmt
T@238: transaction.cc:   130:    5: | | | | | debug: add_unsafe_rollback_flags: 0
T@238:      binlog.cc:  7932:    6: | | | | | >TC_LOG::enum_result MYSQL_BIN_LOG::commit
T@238:      binlog.cc:  7934:    6: | | | | | | info: query='set debug = 'd:t:F:i:L:n:p:o,/root/mysqld.trace''
T@238:      binlog.cc:  7945:    6: | | | | | | enter: thd: 0x7f3f6802f2c0, all: no, xid: 0, cache_mngr: 0x0
T@238:     handler.cc:  1866:    7: | | | | | | >ha_commit_low
T@238:     handler.cc:    7: | | | | | | <ha_commit_low
T@238:      binlog.cc:    6: | | | | | <TC_LOG::enum_result MYSQL_BIN_LOG::commit
T@238: rpl_context.cc:    69:    6: | | | | | >bool Session_consistency_gtids_ctx::notify_after_transaction_commit
T@238: rpl_context.cc:    6: | | | | | <bool Session_consistency_gtids_ctx::notify_after_transaction_commit
T@238: transaction.cc:   134:    5: | | | | | debug: reset_unsafe_rollback_flags
T@238: transaction.cc:    5: | | | | <trans_commit_stmt
T@238:   sql_union.cc:  1294:    5: | | | | >Query_expression::cleanup
T@238:   sql_union.cc:    5: | | | | <Query_expression::cleanup
T@238:   sql_parse.cc:   314:    4: | | | | THD::enter_stage: 'closing tables' /home/source_code/mysql-8.0.24/sql/sql_parse.cc:4593
T@238: sql_profile.cc:   350:    5: | | | | >PROFILING::status_change
T@238: sql_profile.cc:    5: | | | | <PROFILING::status_change
T@238:    sql_base.cc:  1531:    5: | | | | >close_thread_tables
T@238:    sql_base.cc:    5: | | | | <close_thread_tables
T@238:   sql_class.cc:  1645:    5: | | | | >THD::rollback_item_tree_changes
T@238:   sql_class.cc:    5: | | | | <THD::rollback_item_tree_changes
T@238:   sql_parse.cc:   362:    5: | | | | >stmt_causes_implicit_commit
T@238:   sql_parse.cc:    5: | | | | <stmt_causes_implicit_commit
T@238:         mdl.cc:  4490:    5: | | | | >MDL_context::release_transactional_locks
T@238:         mdl.cc:  4219:    6: | | | | | >MDL_context::release_locks_stored_before
                                                                                                     


复制

复制

删除n 嵌套层数

mysql> set debug = 'd:t:F:i:L:p:o,/root/mysqld2.trace';
Query OK, 0 rows affected (0.01 sec)

mysql> select * from treenodes;
+----+----------+------+
| id | nodename | pid  |
+----+----------+------+
|  1 | A        |    0 |
|  2 | B        |    1 |
|  3 | C        |    1 |
|  4 | D        |    2 |
|  5 | E        |    2 |
|  6 | F        |    3 |
|  7 | G        |    6 |
|  8 | H        |    0 |
|  9 | I        |    8 |
| 10 | J        |    8 |
| 11 | K        |    8 |
| 12 | L        |    9 |
| 13 | M        |    9 |
| 14 | N        |   12 |
| 15 | O        |   12 |
| 16 | P        |   15 |
| 17 | Q        |   15 |
+----+----------+------+
17 rows in set (0.01 sec)
                                                                                           


复制


T@238: sql_security_ctx.cc:   792: | | | | | >Security_context::user
T@238: sql_security_ctx.cc: | | | | | <Security_context::user
T@238: sql_security_ctx.cc:   792: | | | | | >Security_context::user
T@238: sql_security_ctx.cc: | | | | | <Security_context::user
T@238: sql_security_ctx.cc:   850: | | | | | >Security_context::host
T@238: sql_security_ctx.cc: | | | | | <Security_context::host
T@238: sql_security_ctx.cc:   850: | | | | | >Security_context::host
T@238: sql_security_ctx.cc: | | | | | <Security_context::host
T@238:     set_var.cc: | | | | <sql_set_variables
T@238:   sql_error.cc:   375: | | | | >Diagnostics_area::set_ok_status
T@238:   sql_error.cc: | | | | <Diagnostics_area::set_ok_status
T@238:   sql_parse.cc:   314: | | | | THD::enter_stage: 'query end' /home/source_code/mysql-8.0.24/sql/sql_parse.cc:4542
T@238: sql_profile.cc:   350: | | | | >PROFILING::status_change
T@238: sql_profile.cc: | | | | <PROFILING::status_change
T@238:   sql_audit.cc:  1084: | | | | >mysql_audit_acquire_plugins
T@238:   sql_audit.cc: | | | | <mysql_audit_acquire_plugins
T@238: transaction.cc:   513: | | | | >trans_commit_stmt
T@238: transaction.cc:   130: | | | | | debug: add_unsafe_rollback_flags: 0
T@238:      binlog.cc:  7932: | | | | | >TC_LOG::enum_result MYSQL_BIN_LOG::commit
T@238:      binlog.cc:  7934: | | | | | | info: query='set debug = 'd:t:F:i:L:p:o,/root/mysqld2.trace''
T@238:      binlog.cc:  7945: | | | | | | enter: thd: 0x7f3f6802f2c0, all: no, xid: 521644, cache_mngr: 0x0
T@238:     handler.cc:  1866: | | | | | | >ha_commit_low
T@238:     handler.cc: | | | | | | <ha_commit_low
T@238:      binlog.cc: | | | | | <TC_LOG::enum_result MYSQL_BIN_LOG::commit
T@238: rpl_context.cc:    69: | | | | | >bool Session_consistency_gtids_ctx::notify_after_transaction_commit
T@238: rpl_context.cc: | | | | | <bool Session_consistency_gtids_ctx::notify_after_transaction_commit
T@238: transaction.cc:   134: | | | | | debug: reset_unsafe_rollback_flags
T@238: transaction.cc: | | | | <trans_commit_stmt
T@238:   sql_union.cc:  1294: | | | | >Query_expression::cleanup
T@238:   sql_union.cc: | | | | <Query_expression::cleanup
T@238:   sql_parse.cc:   314: | | | | THD::enter_stage: 'closing tables' /home/source_code/mysql-8.0.24/sql/sql_parse.cc:4593
T@238: sql_profile.cc:   350: | | | | >PROFILING::status_change
T@238: sql_profile.cc: | | | | <PROFILING::status_change
T@238:    sql_base.cc:  1531: | | | | >close_thread_tables
T@238:    sql_base.cc: | | | | <close_thread_tables
T@238:   sql_class.cc:  1645: | | | | >THD::rollback_item_tree_changes
T@238:   sql_class.cc: | | | | <THD::rollback_item_tree_changes
T@238:   sql_parse.cc:   362: | | | | >stmt_causes_implicit_commit
T@238:   sql_parse.cc: | | | | <stmt_causes_implicit_commit
T@238:         mdl.cc:  4490: | | | | >MDL_context::release_transactional_locks
T@238:         mdl.cc:  4219: | | | | | >MDL_context::release_locks_stored_before
"mysqld2.trace" [noeol] 1461L, 102400C                                         
                                                                                           


复制

这次少掉了i 没有了T@238

mysql> set debug = 'd:t:F:L:o,/root/mysqld4.trace';

复制
rpl_handler.cc:  1284: | | | | >launch_hook_trans_begin
rpl_handler.cc:   314: | | | | | THD::enter_stage: 'Executing hook on transaction begin.' /home/source_code/mysql-8.0.24/sql/rpl_handler.cc:1377
sql_profile.cc:   350: | | | | | >PROFILING::status_change
sql_profile.cc: | | | | | <PROFILING::status_change
rpl_handler.cc:   150: | | | | | debug: is_empty: 1
rpl_handler.cc:   314: | | | | | THD::enter_stage: 'starting' /home/source_code/mysql-8.0.24/sql/rpl_handler.cc:1379
sql_profile.cc:   350: | | | | | >PROFILING::status_change
sql_profile.cc: | | | | | <PROFILING::status_change
rpl_handler.cc: | | | | <launch_hook_trans_begin
  sql_parse.cc:  1345: | | | | >deny_updates_if_read_only_option
sql_authorization.cc:  1876: | | | | | >check_readonly
sql_authorization.cc: | | | | | <check_readonly
  sql_parse.cc: | | | | <deny_updates_if_read_only_option
opt_trace2server.cc:   140: | | | | >TABLE_LIST*, enum_sql_command, List<set_var_base>*, const char*, size_t, sp_printable*, const CHARSET_INFO*)
  opt_trace.cc:   833: | | | | | >Opt_trace_context::start                                                                                          

复制

RPL_HANDLER.CC 1284: 看来像源码行号

应该不是行号,后面才是

rpl_handler.cc:   314: | | | | | THD::enter_stage: 'Executing hook on transaction begin.' /home/source_code/mysql-8.0.24/sql/rpl_handler.cc:1377
rpl_handler.cc:   314: | | | | | THD::enter_stage: 'starting' /home/source_code/mysql-8.0.24/sql/rpl_handler.cc:1379

复制

那这314是啥呢?

好像这不是重点,我们来是找蛋的,下面挺长的,没关系,能看下大概就行,
看一两百行就行了,后面还有些没有贴出来


 viosocket.cc: | | <vio_read
   net_serv.cc: | <net_read_raw_loop
  sql_parse.cc:   314: | THD::enter_stage: 'starting' /home/source_code/mysql-8.0.24/sql/conn_handler/init_net_server_extension.cc:102
sql_profile.cc:   350: | >PROFILING::status_change
sql_profile.cc: | <PROFILING::status_change
  sql_parse.cc:  1446: | packet_header: Memory: 0x7f3f80005b60  Bytes: (4)
1A 00 00 00
   net_serv.cc:  1341: | >net_read_raw_loop
  viosocket.cc:   138: | | >vio_read
  viosocket.cc: | | <vio_read
   net_serv.cc: | <net_read_raw_loop
  sql_parse.cc:  2085: | net read: Memory: 0x7f3f80005b60  Bytes: (26)
03 00 01 73 65 6C 65 63 74 20 2A 20 66 72 6F 6D 20 74 72 65 65 6E 6F 64 65 73
protocol_classic.cc:  2820: | >Protocol_classic::parse_packet
protocol_classic.cc:  2808: | | info: param count 0l
protocol_classic.cc: | <Protocol_classic::parse_packet
  sql_parse.cc:  1304: | info: Command on socket (69) = 3 (Query)
  sql_parse.cc:  1308: | info: packet: '                         'command: 3
   net_serv.cc:  2209: | >my_net_set_read_timeout
   net_serv.cc:  2210: | | enter: timeout: 30
  viosocket.cc:   312: | | >vio_socket_timeout
  viosocket.cc: | | <vio_socket_timeout
   net_serv.cc: | <my_net_set_read_timeout
  sql_parse.cc:  1524: | >dispatch_command
  sql_parse.cc:  1525: | | info: command: 3
sql_profile.cc:   369: | | >PROFILING::start_new_query
sql_profile.cc: | | <PROFILING::start_new_query
  sql_audit.cc:  1084: | | >mysql_audit_acquire_plugins
  sql_audit.cc: | | <mysql_audit_acquire_plugins
  sql_parse.cc:  1814: | | query: select * from treenodes
sql_profile.cc:   485: | | >PROFILING::set_query_source
sql_profile.cc: | | <PROFILING::set_query_source
  sql_parse.cc:  4877: | | >dispatch_sql_command
  sql_parse.cc:  4878: | | | dispatch_sql_command: query: 'select * from treenodes'
  sql_parse.cc:  4787: | | | >THD::reset_for_next_command
  sql_parse.cc:   134: | | | | debug: reset_unsafe_rollback_flags
   sql_class.h:  2897: | | | | >THD::clear_error
   sql_class.h: | | | | <THD::clear_error
  sql_error.cc:   357: | | | | >Diagnostics_area::reset_diagnostics_area
  sql_error.cc: | | | | <Diagnostics_area::reset_diagnostics_area
   sql_class.h:  3137: | | | | >THD::reset_current_stmt_binlog_format_row
 sql_class.h:  3139: | | | | | debug: in_sub_stmt: 0, system_thread: NON_SYSTEM_THREAD
   sql_class.h:  3127: | | | | | >THD::set_current_stmt_binlog_format_row
   sql_class.h: | | | | | <THD::set_current_stmt_binlog_format_row
   sql_class.h: | | | | <THD::reset_current_stmt_binlog_format_row
   sql_class.h:  2329: | | | | >THD::set_trans_pos
   sql_class.h:  2349: | | | | | return: m_trans_log_file: (null), m_trans_fixed_log_file: (null), m_trans_end_pos: 0
   sql_class.h: | | | | <THD::set_trans_pos
  sql_parse.cc:  4850: | | | | debug: is_current_stmt_binlog_format_row(): 1
sql_security_ctx.cc:   377: | | | | >Security_context::checkout_access_maps
sql_security_ctx.cc: | | | | <Security_context::checkout_access_maps
  sql_parse.cc: | | | <THD::reset_for_next_command
    sql_lex.cc:   509: | | | >lex_start
    sql_lex.cc:   766: | | | | >LEX::new_top_level_query
    sql_lex.cc:   647: | | | | | >LEX::new_query
    sql_lex.cc:   464: | | | | | | outer_field: creating ctx 0x7f3f8000d658
    sql_lex.cc:   692: | | | | | | outer_field: ctx 0x7f3f8000d658 <-> SL# 1
    sql_lex.cc: | | | | | <LEX::new_query
    sql_lex.cc: | | | | <LEX::new_top_level_query
    sql_lex.cc: | | | <lex_start
  sql_error.cc:   357: | | | >Diagnostics_area::reset_diagnostics_area
  sql_error.cc: | | | <Diagnostics_area::reset_diagnostics_area
   my_alloc.cc:   166: | | | >MEM_ROOT::Clear
   my_alloc.cc:   167: | | | | enter: root: 0x7f3f80003450
   my_alloc.cc: | | | <MEM_ROOT::Clear
  sql_audit.cc:  1084: | | | >mysql_audit_acquire_plugins
  sql_audit.cc: | | | <mysql_audit_acquire_plugins
  sql_parse.cc:  6733: | | | >parse_sql
  sql_class.cc:  1510: | | | | >THD::convert_string
  sql_class.cc: | | | | <THD::convert_string
  sql_parse.cc:  5578: | | | | >Query_block::add_table_to_list
  sql_parse.cc: | | | | <Query_block::add_table_to_list
  sql_parse.cc:  5940: | | | | >Query_block::add_joined_table
   my_alloc.cc:   103: | | | | | >MEM_ROOT::AllocSlow
   my_alloc.cc:   104: | | | | | | enter: root: 0x7f3f80002e38
   my_alloc.cc:    58: | | | | | | >long unsigned int> MEM_ROOT::AllocBlock
   my_alloc.cc: | | | | | | <long unsigned int> MEM_ROOT::AllocBlock
   my_alloc.cc: | | | | | <MEM_ROOT::AllocSlow
  sql_parse.cc: | | | | <Query_block::add_joined_table
  sql_parse.cc: | | | <parse_sql
  sql_error.cc:   357: | | | >Diagnostics_area::reset_diagnostics_area
  sql_error.cc: | | | <Diagnostics_area::reset_diagnostics_area
   my_alloc.cc:   166: | | | >MEM_ROOT::Clear
   my_alloc.cc:   167: | | | | enter: root: 0x7f3f80003450
   my_alloc.cc: | | | <MEM_ROOT::Clear
  sql_audit.cc:  1084: | | | >mysql_audit_acquire_plugins
  sql_audit.cc: | | | <mysql_audit_acquire_plugins
sql_rewrite.cc:   337: | | | >mysql_rewrite_query
sql_rewrite.cc: | | | <mysql_rewrite_query
  sql_audit.cc:  1084: | | | >mysql_audit_acquire_plugins
  sql_audit.cc: | | | <mysql_audit_acquire_plugins
resource_group_mgr.cc:    98: | | | >resourcegroups::Resource_group_mgr* resourcegroups::Resource_group_mgr::instance
resource_group_mgr.cc: | | | <resourcegroups::Resource_group_mgr* resourcegroups::Resource_group_mgr::instance
  sql_parse.cc:  2718: | | | >mysql_execute_command
  sql_error.cc:   357: | | | | >Diagnostics_area::reset_diagnostics_area
  sql_error.cc: | | | | <Diagnostics_area::reset_diagnostics_area
   my_alloc.cc:   166: | | | | >MEM_ROOT::Clear
   my_alloc.cc:   167: | | | | | enter: root: 0x7f3f80002e90
   my_alloc.cc: | | | | <MEM_ROOT::Clear
rpl_handler.cc:  1284: | | | | >launch_hook_trans_begin
rpl_handler.cc:   314: | | | | | THD::enter_stage: 'Executing hook on transaction begin.' /home/source_code/mysql-8.0.24/sql/rpl_handler.cc:1377
sql_profile.cc:   350: | | | | | >PROFILING::status_change
sql_profile.cc: | | | | | <PROFILING::status_change
rpl_handler.cc:   150: | | | | | debug: is_empty: 1
rpl_handler.cc:   314: | | | | | THD::enter_stage: 'starting' /home/source_code/mysql-8.0.24/sql/rpl_handler.cc:1379
sql_profile.cc:   350: | | | | | >PROFILING::status_change
sql_profile.cc: | | | | | <PROFILING::status_change
rpl_handler.cc: | | | | <launch_hook_trans_begin
  sql_parse.cc:  1345: | | | | >deny_updates_if_read_only_option
sql_authorization.cc:  1876: | | | | | >check_readonly
sql_authorization.cc: | | | | | <check_readonly
  sql_parse.cc: | | | | <deny_updates_if_read_only_option
opt_trace2server.cc:   140: | | | | >TABLE_LIST*, enum_sql_command, List<set_var_base>*, const char*, size_t, sp_printable*, const CHARSET_INFO*)
  opt_trace.cc:   833: | | | | | >Opt_trace_context::start
  opt_trace.cc:   918: | | | | | | opt: new stmt 0x7f3f8000ed30 support_I_S 0
  opt_trace.cc:  1002: | | | | | | >Opt_trace_context::purge_stmts
  opt_trace.cc: | | | | | | <Opt_trace_context::purge_stmts
  opt_trace.cc:  1102: | | | | | | opt: rc 1048576 max_mem_size 1048576
  opt_trace.cc: | | | | | <Opt_trace_context::start
opt_trace2server.cc:   422: | | | | | >{anonymous}::opt_trace_disable_if_no_tables_access
opt_trace2server.cc: | | | | | <{anonymous}::opt_trace_disable_if_no_tables_access
opt_trace2server.cc: | | | | <TABLE_LIST*, enum_sql_command, List<set_var_base>*, const char*, size_t, sp_printable*, const CHARSET_INFO*)
  sql_parse.cc:   273: | | | | opt: (null): starting struct
  sql_parse.cc:   273: | | | | opt: steps: starting struct
rpl_gtid_execution.cc:   444: | | | | >gtid_pre_statement_checks
rpl_gtid_execution.cc:   451: | | | | | info: gtid_next->type=0 owned_gtid.{sidno,gno}={0,0}
  sql_parse.cc:   362: | | | | | >stmt_causes_implicit_commit
  sql_parse.cc: | | | | | <stmt_causes_implicit_commit
rpl_gtid_execution.cc:   405: | | | | | >is_stmt_taking_table_wr_locks
rpl_gtid_execution.cc: | | | | | <is_stmt_taking_table_wr_locks
rpl_gtid_execution.cc: | | | | <gtid_pre_statement_checks
  sql_parse.cc:   362: | | | | >stmt_causes_implicit_commit
  sql_parse.cc: | | | | <stmt_causes_implicit_commit
rpl_gtid_execution.cc:   552: | | | | >gtid_pre_statement_post_implicit_commit_checks
rpl_gtid_execution.cc:   405: | | | | | >is_stmt_taking_table_wr_locks
rpl_gtid_execution.cc: | | | | | <is_stmt_taking_table_wr_locks
     binlog.cc: 10598: | | | | | >THD::is_ddl_gtid_compatible
     binlog.cc: 10615: | | | | | | info: SQLCOM_CREATE:0 CREATE-TMP:0 SELECT:1 SQLCOM_DROP:0 DROP-TMP:0 trx:0
     binlog.cc: | | | | | <THD::is_ddl_gtid_compatible
rpl_gtid_execution.cc: | | | | <gtid_pre_statement_post_implicit_commit_checks
  sql_audit.cc:  1084: | | | | >mysql_audit_acquire_plugins
  sql_audit.cc: | | | | <mysql_audit_acquire_plugins
   sql_base.cc:  7326: | | | | >open_temporary_tables
   sql_base.cc:  7243: | | | | | >open_temporary_table
   sql_base.cc:  7244: | | | | | | enter: table: 'dba'.'treenodes'
   sql_base.cc: | | | | | <open_temporary_table
   sql_base.cc: | | | | <open_temporary_tables
 sql_select.cc:   480: | | | | >bool Sql_cmd_dml::execute
  sql_timer.cc:   158: | | | | | >thd_timer_set
  sql_timer.cc: | | | | | <thd_timer_set
 sql_select.cc:   318: | | | | | >bool Sql_cmd_dml::prepare
sql_authorization.cc:  2386: | | | | | | >check_table_access
sql_authorization.cc:  2422: | | | | | | | info: table: treenodes derived: 0  view: 0
sql_authorization.cc:  2188: | | | | | | | >check_access
sql_authorization.cc:  2191: | | | | | | | | enter: db: dba  want_access: 1  master_access: 2147483647
sql_authorization.cc:   314: | | | | | | | | THD::enter_stage: 'checking permissions' /home/source_code/mysql-8.0.24/sql/auth/sql_authorization.cc:2200
sql_profile.cc:   350: | | | | | | | | >PROFILING::status_change
sql_profile.cc: | | | | | | | | <PROFILING::status_change
sql_security_ctx.cc:   320: | | | | | | | | >Security_context::check_access
sql_security_ctx.cc: | | | | | | | | <Security_context::check_access
sql_security_ctx.cc:   320: | | | | | | | | >Security_context::check_access
sql_security_ctx.cc: | | | | | | | | <Security_context::check_access
sql_authorization.cc: | | | | | | | <check_access
sql_authorization.cc:  3744: | | | | | | | >check_grant
sql_authorization.cc: | | | | | | | <check_grant
sql_authorization.cc: | | | | | | <check_table_access
   sql_base.cc:  6692: | | | | | | >open_tables_for_query
   sql_base.cc:  5735: | | | | | | | >open_tables
   sql_base.cc:   314: | | | | | | | | THD::enter_stage: 'Opening tables' /home/source_code/mysql-8.0.24/sql/sql_base.cc:5761
sql_profile.cc:   350: | | | | | | | | >PROFILING::status_change
sql_profile.cc: | | | | | | | | <PROFILING::status_change
   sql_base.cc:  4894: | | | | | | | | >open_and_process_table
   sql_base.cc:  4931: | | | | | | | | | tcache: opening table: 'dba'.'treenodes'  item: 0x7f3f8000e3d0
   sql_base.cc:  2794: | | | | | | | | | >open_table
  ha_innodb.cc:  2795: | | | | | | | | | | >ha_innobase::update_thd
  ha_innodb.cc:  2797: | | | | | | | | | | | ha_innobase::update_thd: user_thd: 0x7f3f800009c0 -> 0x7f3f800009c0
  ha_innodb.cc:  2575: | | | | | | | | | | | >innobase_trx_init
  ha_innodb.cc: | | | | | | | | | | | <innobase_trx_init
  ha_innodb.cc: | | | | | | | | | | <ha_innobase::update_thd
  ha_innodb.cc:  2795: | | | | | | | | | | >ha_innobase::update_thd
  ha_innodb.cc:  2797: | | | | | | | | | | | ha_innobase::update_thd: user_thd: 0x7f3f800009c0 -> 0x7f3f800009c0
  ha_innodb.cc:  2575: | | | | | | | | | | | >innobase_trx_init
  ha_innodb.cc: | | | | | | | | | | | <innobase_trx_init
  ha_innodb.cc: | | | | | | | | | | <ha_innobase::update_thd
    handler.cc:  3901: | | | | | | | | | | >void handler::column_bitmaps_signal
    handler.cc:  3903: | | | | | | | | | | | info: read_set: 0x7f3f8000fe28  write_set: 0x7f3f8000fe40
    handler.cc: | | | | | | | | | | <void handler::column_bitmaps_signal
  ha_innodb.cc:  2795: | | | | | | | | | | >ha_innobase::update_thd
  ha_innodb.cc:  2797: | | | | | | | | | | | ha_innobase::update_thd: user_thd: 0x7f3f800009c0 -> 0x7f3f800009c0
  ha_innodb.cc:  2575: | | | | | | | | | | | >innobase_trx_init
  ha_innodb.cc: | | | | | | | | | | | <innobase_trx_init
  ha_innodb.cc: | | | | | | | | | | <ha_innobase::update_thd
   sql_base.cc: | | | | | | | | | <open_table
  ha_innodb.cc:  2795: | | | | | | | | | >ha_innobase::update_thd
  ha_innodb.cc:  2797: | | | | | | | | | | ha_innobase::update_thd: user_thd: 0x7f3f800009c0 -> 0x7f3f800009c0
  ha_innodb.cc:  2575: | | | | | | | | | | >innobase_trx_init
  ha_innodb.cc: | | | | | | | | | | <innobase_trx_init
  ha_innodb.cc: | | | | | | | | | <ha_innobase::update_thd
   sql_base.cc: | | | | | | | | <open_and_process_table
  sql_audit.cc:  1084: | | | | | | | | >mysql_audit_acquire_plugins
sql_audit.cc: | | | | | | | | <mysql_audit_acquire_plugins
   sql_base.cc:  6052: | | | | | | | | open_tables: returning: 0
   sql_base.cc: | | | | | | | <open_tables
   sql_base.cc: | | | | | | <open_tables_for_query
sql_resolver.cc:   171: | | | | | | >Query_block::prepare
sql_resolver.cc:   273: | | | | | | | opt: (null): starting struct
sql_resolver.cc:   273: | | | | | | | opt: join_preparation: starting struct
sql_resolver.cc:   328: | | | | | | | opt: select#: 1
sql_resolver.cc:   273: | | | | | | | opt: steps: starting struct
sql_resolver.cc:  1129: | | | | | | | >Query_block::setup_tables
sql_resolver.cc: | | | | | | | <Query_block::setup_tables
sql_resolver.cc:  1558: | | | | | | | >Query_block::setup_wild
   sql_base.cc:  9205: | | | | | | | | >insert_fields
   sql_base.cc:  9206: | | | | | | | | | arena: stmt arena: 0x7f3f800009c8
      table.cc:  5159: | | | | | | | | | >Field_iterator_table_ref::set_field_iterator
      table.cc:  5196: | | | | | | | | | | info: field_it for 'treenodes' is Field_iterator_table
      table.cc: | | | | | | | | | <Field_iterator_table_ref::set_field_iterator
      table.cc:  5454: | | | | | | | | | >TABLE::mark_column_used
      table.cc: | | | | | | | | | <TABLE::mark_column_used
      table.cc:  5454: | | | | | | | | | >TABLE::mark_column_used
      table.cc: | | | | | | | | | <TABLE::mark_column_used
      table.cc:  5454: | | | | | | | | | >TABLE::mark_column_used
      table.cc: | | | | | | | | | <TABLE::mark_column_used
   sql_base.cc: | | | | | | | | <insert_fields
sql_resolver.cc: | | | | | | | <Query_block::setup_wild
sql_resolver.cc:  2542: | | | | | | | info: setup_ref_array this 0x7f3f8000d4a8    5 :    0    0    3    1    1    0    0
   sql_base.cc:  8904: | | | | | | | >setup_fields
   sql_base.cc:  8923: | | | | | | | | info: thd->mark_used_columns: 1
   sql_base.cc:  9057: | | | | | | | | info: thd->mark_used_columns: 1
   sql_base.cc: | | | | | | | <setup_fields
sql_resolver.cc:  1614: | | | | | | | >Query_block::setup_conds
sql_resolver.cc:  1629: | | | | | | | | info: thd->mark_used_columns: 1
sql_resolver.cc:  1677: | | | | | | | | >Query_block::setup_join_cond
sql_resolver.cc: | | | | | | | | <Query_block::setup_join_cond
sql_resolver.cc: | | | | | | | <Query_block::setup_conds
sql_resolver.cc:   273: | | | | | | | opt: (null): starting struct
sql_resolver.cc:   286: | | | | | | | opt: (null): ending struct
sql_resolver.cc:   725: | | | | | | | >Query_block::apply_local_transforms
sql_resolver.cc:  1886: | | | | | | | | >Query_block::simplify_joins
sql_resolver.cc: | | | | | | | | <Query_block::simplify_joins
sql_optimizer.cc:  4697: | | | | | | | | >build_bitmap_for_nested_joins
sql_optimizer.cc: | | | | | | | | <build_bitmap_for_nested_joins
sql_resolver.cc: | | | | | | | <Query_block::apply_local_transforms
sql_resolver.cc:   286: | | | | | | | opt: steps: ending struct
sql_resolver.cc:   286: | | | | | | | opt: join_preparation: ending struct
sql_resolver.cc:   286: | | | | | | | opt: (null): ending struct
sql_resolver.cc: | | | | | | <Query_block::prepare
 sql_select.cc: | | | | | <bool Sql_cmd_dml::prepare
 sql_select.cc:   314: | | | | | THD::enter_stage: 'init' /home/source_code/mysql-8.0.24/sql/sql_select.cc:553
sql_profile.cc:   350: | | | | | >PROFILING::status_change
sql_profile.cc: | | | | | <PROFILING::status_change
   sql_base.cc:  6774: | | | | | >lock_tables
       lock.cc:   323: | | | | | | >mysql_lock_tables
       lock.cc:   152: | | | | | | | >lock_tables_check
       lock.cc: | | | | | | | <lock_tables_check
       lock.cc:   641: | | | | | | | >get_lock_data
       lock.cc:   644: | | | | | | | | info: count 1
  ha_innodb.cc:  2575: | | | | | | | | >innobase_trx_init
  ha_innodb.cc: | | | | | | | | <innobase_trx_init
       lock.cc:   713: | | | | | | | | info: sql_lock->table_count 1 sql_lock->lock_count 0
       lock.cc: | | | | | | | <get_lock_data
       lock.cc:   314: | | | | | | | THD::enter_stage: 'System lock' /home/source_code/mysql-8.0.24/sql/lock.cc:331
sql_profile.cc:   350: | | | | | | | >PROFILING::status_change
sql_profile.cc: | | | | | | | <PROFILING::status_change
       lock.cc:   333: | | | | | | | info: thd->proc_info System lock
       lock.cc:   378: | | | | | | | >lock_external
       lock.cc:   380: | | | | | | | | info: count 1
    handler.cc:  7747: | | | | | | | | >handler::ha_external_lock
  ha_innodb.cc: 18109: | | | | | | | | | >int ha_innobase::external_lock
  ha_innodb.cc: 18110: | | | | | | | | | | enter: lock_type: 0
  ha_innodb.cc:  2795: | | | | | | | | | | >ha_innobase::update_thd
  ha_innodb.cc:  2797: | | | | | | | | | | | ha_innobase::update_thd: user_thd: 0x7f3f800009c0 -> 0x7f3f800009c0
  ha_innodb.cc:  2575: | | | | | | | | | | | >innobase_trx_init
  ha_innodb.cc: | | | | | | | | | | | <innobase_trx_init
  ha_innodb.cc: | | | | | | | | | | <ha_innobase::update_thd
    handler.cc:  1279: | | | | | | | | | | >trans_register_ha
    handler.cc:  1280: | | | | | | | | | | | enter: stmt
transaction_info.h:   415: | | | | | | | | | | | >Ha_trx_info::register_ha
transaction_info.h: | | | | | | | | | | | <Ha_trx_info::register_ha
transaction_info.h:   282: | | | | | | | | | | | >Transaction_ctx::set_ha_trx_info
transaction_info.h: | | | | | | | | | | | <Transaction_ctx::set_ha_trx_info
rpl_gtid_execution.cc:   582: | | | | | | | | | | | >gtid_set_performance_schema_values
rpl_gtid_execution.cc: | | | | | | | | | | | <gtid_set_performance_schema_values
    handler.cc: | | | | | | | | | | <trans_register_ha
  ha_innodb.cc: | | | | | | | | | <int ha_innobase::external_lock
    handler.cc: | | | | | | | | <handler::ha_external_lock
       lock.cc: | | | | | | | <lock_external
   thr_lock.cc:   900: | | | | | | | >thr_multi_lock
   thr_lock.cc:   901: | | | | | | | | lock: data: 0x7f3f8000fc98  count: 0
   thr_lock.cc: | | | | | | | <thr_multi_lock
       lock.cc: | | | | | | <mysql_lock_tables
     binlog.cc:  9906: | | | | | | >THD::decide_logging_format
     binlog.cc:  9907: | | | | | | | info: query: select * from treenodes
     binlog.cc:  9908: | | | | | | | info: variables.binlog_format: 2
     sql_lex.h:  2776: | | | | | | | >Query_tables_list::get_stmt_unsafe_flags
     sql_lex.h: | | | | | | | <Query_tables_list::get_stmt_unsafe_flags
     binlog.cc:  9910: | | | | | | | info: lex->get_stmt_unsafe_flags(): 0x0
     binlog.cc: 10008: | | | | | | | debug: prelocked_mode: LTM_NONE
     binlog.cc: 10084: | | | | | | | info: table: treenodes; ha_table_flags: 0x8ffa8c00638496
     sql_lex.h:  2911: | | | | | | | >Query_tables_list::set_stmt_accessed_table
     sql_lex.h: | | | | | | | <Query_tables_list::set_stmt_accessed_table
     binlog.cc: 10219: | | | | | | | info: flags_write_all_set: 0xc00000000
     binlog.cc: 10220: | | | | | | | info: flags_write_some_set: 0x0
     binlog.cc: 10222: | | | | | | | info: flags_access_some_set: 0x8ffa8c00638496
     binlog.cc: 10223: | | | | | | | info: multi_write_engine: 0
     binlog.cc: 10224: | | | | | | | info: multi_access_engine: 0
     sql_lex.h:  2930: | | | | | | | >Query_tables_list::stmt_accessed_table
     sql_lex.h: | | | | | | | <Query_tables_list::stmt_accessed_table
     sql_lex.h:  2930: | | | | | | | >Query_tables_list::stmt_accessed_table
     sql_lex.h: | | | | | | | <Query_tables_list::stmt_accessed_table
     sql_lex.h:  2776: | | | | | | | >Query_tables_list::get_stmt_unsafe_flags
     sql_lex.h: | | | | | | | <Query_tables_list::get_stmt_unsafe_flags
     sql_lex.h:  2930: | | | | | | | >Query_tables_list::stmt_accessed_table
     sql_lex.h: | | | | | | | <Query_tables_list::stmt_accessed_table
     sql_lex.h:  2930: | | | | | | | >Query_tables_list::stmt_accessed_table
     sql_lex.h: | | | | | | | <Query_tables_list::stmt_accessed_table
     binlog.cc: 10658: | | | | | | | >THD::is_dml_gtid_compatible
     binlog.cc: 10691: | | | | | | | | info: some_non_transactional_table=0 some_transactional_table=0 trans_has_updated_trans_table=0 non_transactional_tables_are_tmp=0 is_current_stmt_binlog_format_row=1
     binlog.cc: | | | | | | | <THD::is_dml_gtid_compatible
   binlog.cc: 10443: | | | | | | | info: decision: logging in ROW format
     binlog.cc: | | | | | | <THD::decide_logging_format
   sql_base.cc: | | | | | <lock_tables
  sql_union.cc:   661: | | | | | >Query_expression::optimize
 sql_select.cc:  1805: | | | | | | >Query_block::optimize
sql_optimizer.cc:   256: | | | | | | | >JOIN::optimize
sql_optimizer.cc:   314: | | | | | | | | THD::enter_stage: 'optimizing' /home/source_code/mysql-8.0.24/sql/sql_optimizer.cc:270
sql_profile.cc:   350: | | | | | | | | >PROFILING::status_change
sql_profile.cc: | | | | | | | | <PROFILING::status_change
sql_optimizer.cc:   273: | | | | | | | | opt: (null): starting struct
sql_optimizer.cc:   273: | | | | | | | | opt: join_optimization: starting struct
sql_optimizer.cc:   328: | | | | | | | | opt: select#: 1
sql_optimizer.cc:   273: | | | | | | | | opt: steps: starting struct
 sql_select.cc:  3780: | | | | | | | | >count_field_types
 sql_select.cc: | | | | | | | | <count_field_types
 sql_select.cc:  3961: | | | | | | | | >JOIN::alloc_func_list
 sql_select.cc: | | | | | | | | <JOIN::alloc_func_list
sql_optimizer.cc: 10322: | | | | | | | | >get_sort_by_table
sql_optimizer.cc: | | | | | | | | <get_sort_by_table
sql_optimizer.cc:   314: | | | | | | | | THD::enter_stage: 'statistics' /home/source_code/mysql-8.0.24/sql/sql_optimizer.cc:534
sql_profile.cc:   350: | | | | | | | | >PROFILING::status_change
sql_profile.cc: | | | | | | | | <PROFILING::status_change
sql_optimizer.cc:  4978: | | | | | | | | >JOIN::make_join_plan
  ha_innodb.cc: 16718: | | | | | | | | | >int ha_innobase::info_low
  ha_innodb.cc:  2795: | | | | | | | | | | >ha_innobase::update_thd
  ha_innodb.cc:  2797: | | | | | | | | | | | ha_innobase::update_thd: user_thd: 0x7f3f800009c0 -> 0x7f3f800009c0
  ha_innodb.cc:  2575: | | | | | | | | | | | >innobase_trx_init
  ha_innodb.cc: | | | | | | | | | | | <innobase_trx_init
  ha_innodb.cc: | | | | | | | | | | <ha_innobase::update_thd
  ha_innodb.cc: 10043: | | | | | | | | | | >dict_index_t* ha_innobase::innobase_get_index
  ha_innodb.cc: | | | | | | | | | | <dict_index_t* ha_innobase::innobase_get_index
  ha_innodb.cc: | | | | | | | | | <int ha_innobase::info_low
sql_optimizer.cc:   273: | | | | | | | | | opt: (null): starting struct
sql_optimizer.cc:   273: | | | | | | | | | opt: table_dependencies: starting struct
sql_optimizer.cc:   273: | | | | | | | | | opt: (null): starting struct
sql_optimizer.cc:   296: | | | | | | | | | opt: table: "`treenodes`"
sql_optimizer.cc:   309: | | | | | | | | | opt: row_may_be_null: 0
sql_optimizer.cc:   328: | | | | | | | | | opt: map_bit: 0
sql_optimizer.cc:   273: | | | | | | | | | opt: depends_on_map_bits: starting struct
sql_optimizer.cc:   286: | | | | | | | | | opt: depends_on_map_bits: ending struct
sql_optimizer.cc:   286: | | | | | | | | | opt: table_dependencies: ending struct
sql_optimizer.cc:   286: | | | | | | | | | opt: (null): ending struct
sql_optimizer.cc:   273: | | | | | | | | | opt: (null): starting struct
sql_optimizer.cc:   273: | | | | | | | | | opt: rows_estimation: starting struct
sql_optimizer.cc:   273: | | | | | | | | | opt: (null): starting struct
sql_optimizer.cc:   296: | | | | | | | | | opt: table: "`treenodes`"
sql_optimizer.cc:   273: | | | | | | | | | opt: table_scan: starting struct
sql_optimizer.cc:   328: | | | | | | | | | opt: rows: 17
sql_optimizer.cc:   339: | | | | | | | | | opt: cost: 0.25
sql_optimizer.cc:   286: | | | | | | | | | opt: table_scan: ending struct
sql_optimizer.cc:   286: | | | | | | | | | opt: (null): ending struct
sql_optimizer.cc:   286: | | | | | | | | | opt: rows_estimation: ending struct
sql_optimizer.cc:   286: | | | | | | | | | opt: (null): ending struct
sql_planner.cc:  1912: | | | | | | | | | >Optimize_table_order::choose_table_order
sql_resolver.cc:  1732: | | | | | | | | | | >Query_block::reset_nj_counters
sql_resolver.cc: | | | | | | | | | | <Query_block::reset_nj_counters
sql_planner.cc:   273: | | | | | | | | | | opt: (null): starting struct
sql_planner.cc:   273: | | | | | | | | | | opt: considered_execution_plans: starting struct
sql_planner.cc:  2291: | | | | | | | | | | >Optimize_table_order::greedy_search
sql_planner.cc:  2688: | | | | | | | | | | | >Optimize_table_order::best_extension_by_limited_search
part_plan; idx: 0  best: DBL_MAX  atime: 0  itime: 0  count: 1
     POSITIONS:

      BEST_REF: treenodes(17,17,0)
sql_planner.cc:   273: | | | | | | | | | | | | opt: (null): starting struct
sql_planner.cc:   273: | | | | | | | | | | | | opt: plan_prefix: starting struct
sql_planner.cc:   286: | | | | | | | | | | | | opt: plan_prefix: ending struct
sql_planner.cc:   296: | | | | | | | | | | | | opt: table: "`treenodes`"
sql_planner.cc:   981: | | | | | | | | | | | | >Optimize_table_order::best_access_path
sql_planner.cc:   273: | | | | | | | | | | | | | opt: best_access_path: starting struct
sql_planner.cc:   273: | | | | | | | | | | | | | opt: considered_access_paths: starting struct
sql_planner.cc:   273: | | | | | | | | | | | | | opt: (null): starting struct
sql_planner.cc:   328: | | | | | | | | | | | | | opt: rows_to_scan: 17
sql_planner.cc:   296: | | | | | | | | | | | | | opt: access_type: "scan"
sql_planner.cc:   339: | | | | | | | | | | | | | opt: resulting_rows: 17
sql_planner.cc:   339: | | | | | | | | | | | | | opt: cost: 1.95
sql_planner.cc:   309: | | | | | | | | | | | | | opt: chosen: 1
sql_planner.cc:   286: | | | | | | | | | | | | | opt: (null): ending struct
sql_planner.cc:   286: | | | | | | | | | | | | | opt: considered_access_paths: ending struct
sql_planner.cc:   286: | | | | | | | | | | | | | opt: best_access_path: ending struct
sql_planner.cc: | | | | | | | | | | | | <Optimize_table_order::best_access_path
sql_planner.cc:   339: | | | | | | | | | | | | opt: condition_filtering_pct: 100
sql_planner.cc:   339: | | | | | | | | | | | | opt: rows_for_plan: 17
sql_planner.cc:   339: | | | | | | | | | | | | opt: cost_for_plan: 1.95
sql_planner.cc:   309: | | | | | | | | | | | | opt: chosen: 1
full_plan; idx :1  best: 1.949  accumulated: 1.95  increment: 1.95  count: 17
     POSITIONS: treenodes
BEST_POSITIONS: treenodes
      BEST_REF: treenodes(17,17,0)
sql_planner.cc:   286: | | | | | | | | | | | | opt: (null): ending struct
sql_planner.cc: | | | | | | | | | | | <Optimize_table_order::best_extension_by_limited_search
optimal; idx :1  best: 1.949  accumulated: 0  increment: 0  count: 1
     POSITIONS: treenodes
BEST_POSITIONS: treenodes
      BEST_REF: treenodes(17,17,0)
sql_planner.cc: | | | | | | | | | | <Optimize_table_order::greedy_search
sql_planner.cc:  3332: | | | | | | | | | | >Optimize_table_order::fix_semijoin_strategies
sql_planner.cc: | | | | | | | | | | <Optimize_table_order::fix_semijoin_strategies
sql_planner.cc:   286: | | | | | | | | | | opt: considered_execution_plans: ending struct
sql_planner.cc:   286: | | | | | | | | | | opt: (null): ending struct
sql_planner.cc: | | | | | | | | | <Optimize_table_order::choose_table_order
sql_optimizer.cc:  2815: | | | | | | | | | >JOIN::get_best_combination
sql_optimizer.cc: | | | | | | | | | <JOIN::get_best_combination
sql_optimizer.cc: | | | | | | | | <JOIN::make_join_plan
 sql_select.cc:  2006: | | | | | | | | >JOIN::init_ref_access
 sql_select.cc: | | | | | | | | <JOIN::init_ref_access
sql_optimizer.cc:   314: | | | | | | | | THD::enter_stage: 'preparing' /home/source_code/mysql-8.0.24/sql/sql_optimizer.cc:618
sql_profile.cc:   350: | | | | | | | | >PROFILING::status_change
sql_profile.cc: | | | | | | | | <PROFILING::status_change
sql_optimizer.cc:  9142: | | | | | | | | >make_join_query_block
sql_optimizer.cc:  6033: | | | | | | | | | >add_not_null_conds
sql_optimizer.cc: | | | | | | | | | <add_not_null_conds

WHERE:(constants) (nil)
sql_optimizer.cc:   273: | | | | | | | | | opt: (null): starting struct
sql_optimizer.cc:   273: | | | | | | | | | opt: attaching_conditions_to_tables: starting struct
sql_optimizer.cc:   346: | | | | | | | | | opt: original_condition: null
sql_optimizer.cc:   273: | | | | | | | | | opt: attached_conditions_computation: starting struct
WHERE:(treenodes) (nil)
sql_optimizer.cc:  8406: | | | | | | | | | >JOIN::attach_join_conditions
sql_optimizer.cc: | | | | | | | | | <JOIN::attach_join_conditions
sql_optimizer.cc:   286: | | | | | | | | | opt: attached_conditions_computation: ending struct
sql_optimizer.cc:   273: | | | | | | | | | opt: attached_conditions_summary: starting struct
sql_optimizer.cc:   273: | | | | | | | | | opt: (null): starting struct
sql_optimizer.cc:   296: | | | | | | | | | opt: table: "`treenodes`"
sql_optimizer.cc:   346: | | | | | | | | | opt: attached: null
sql_optimizer.cc:   286: | | | | | | | | | opt: (null): ending struct
sql_optimizer.cc:   286: | | | | | | | | | opt: attached_conditions_summary: ending struct
sql_optimizer.cc:   286: | | | | | | | | | opt: attaching_conditions_to_tables: ending struct
sql_optimizer.cc:   286: | | | | | | | | | opt: (null): ending struct
sql_optimizer.cc: | | | | | | | | <make_join_query_block
sql_optimizer.cc:  1273: | | | | | | | | >JOIN::optimize_distinct_group_order
sql_optimizer.cc:   273: | | | | | | | | | opt: (null): starting struct
sql_optimizer.cc:   273: | | | | | | | | | opt: optimizing_distinct_group_by_order_by: starting struct
sql_optimizer.cc:  9724: | | | | | | | | | >JOIN::remove_const
sql_optimizer.cc:   273: | | | | | | | | | | opt: simplifying_order_by: starting struct
sql_optimizer.cc:   296: | | | | | | | | | | opt: original_clause: ""
sql_optimizer.cc:   273: | | | | | | | | | | opt: items: starting struct
sql_optimizer.cc:  4757: | | | | | | | | | | >JOIN::update_depend_map
sql_optimizer.cc: | | | | | | | | | | <JOIN::update_depend_map
sql_optimizer.cc:  9831: | | | | | | | | | | exit: simple_order: 1
sql_optimizer.cc:   286: | | | | | | | | | | opt: items: ending struct
sql_optimizer.cc:   309: | | | | | | | | | | opt: resulting_clause_is_simple: 1
sql_optimizer.cc:   296: | | | | | | | | | | opt: resulting_clause: ""
sql_optimizer.cc:   286: | | | | | | | | | | opt: simplifying_order_by: ending struct
sql_optimizer.cc: | | | | | | | | | <JOIN::remove_const
sql_optimizer.cc:  9724: | | | | | | | | | >JOIN::remove_const
sql_optimizer.cc:   273: | | | | | | | | | | opt: simplifying_group_by: starting struct
sql_optimizer.cc:   296: | | | | | | | | | | opt: original_clause: ""
sql_optimizer.cc:   273: | | | | | | | | | | opt: items: starting struct
sql_optimizer.cc:  4757: | | | | | | | | | | >JOIN::update_depend_map
sql_optimizer.cc: | | | | | | | | | | <JOIN::update_depend_map
sql_optimizer.cc:  9831: | | | | | | | | | | exit: simple_order: 1
sql_optimizer.cc:   286: | | | | | | | | | | opt: items: ending struct
sql_optimizer.cc:   309: | | | | | | | | | | opt: resulting_clause_is_simple: 1
sql_optimizer.cc:   296: | | | | | | | | | | opt: resulting_clause: ""
sql_optimizer.cc:   286: | | | | | | | | | | opt: simplifying_group_by: ending struct
sql_optimizer.cc: | | | | | | | | | <JOIN::remove_const
sql_select.cc:  3884: | | | | | | | | | >calc_group_buffer
 sql_select.cc: | | | | | | | | | <calc_group_buffer
  my_bitmap.cc:   140: | | | | | | | | | >bitmap_init
  my_bitmap.cc: | | | | | | | | | <bitmap_init
 sql_select.cc:  4009: | | | | | | | | | >JOIN::make_sum_func_list
 sql_select.cc: | | | | | | | | | <JOIN::make_sum_func_list
sql_optimizer.cc:   286: | | | | | | | | | opt: optimizing_distinct_group_by_order_by: ending struct
sql_optimizer.cc:   286: | | | | | | | | | opt: (null): ending struct
sql_optimizer.cc: | | | | | | | | <JOIN::optimize_distinct_group_order
sql_optimizer.cc:  1207: | | | | | | | | >JOIN::replace_index_subquery
sql_optimizer.cc: | | | | | | | | <JOIN::replace_index_subquery
   sql_test.cc:   110: | | | | | | | | >TEST_join

Info about JOIN
treenodes         type: ALL      q_keys: 0  refs: 0  key: -1  len: 0
   sql_test.cc: | | | | | | | | <TEST_join
sql_optimizer.cc:  1460: | | | | | | | | >JOIN::test_skip_sort
sql_optimizer.cc: | | | | | | | | <JOIN::test_skip_sort
sql_optimizer.cc:   273: | | | | | | | | opt: (null): starting struct
sql_optimizer.cc:   273: | | | | | | | | opt: finalizing_table_conditions: starting struct
sql_optimizer.cc:   286: | | | | | | | | opt: finalizing_table_conditions: ending struct
sql_optimizer.cc:   286: | | | | | | | | opt: (null): ending struct
 sql_select.cc:  3128: | | | | | | | | >make_join_readinfo
 sql_select.cc:   273: | | | | | | | | | opt: (null): starting struct
 sql_select.cc:   273: | | | | | | | | | opt: refine_plan: starting struct
 sql_select.cc:  1337: | | | | | | | | | >setup_semijoin_dups_elimination
 sql_select.cc: | | | | | | | | | <setup_semijoin_dups_elimination
 sql_select.cc:   273: | | | | | | | | | opt: (null): starting struct
 sql_select.cc:   296: | | | | | | | | | opt: table: "`treenodes`"
  ha_innodb.cc: 16718: | | | | | | | | | >int ha_innobase::info_low
  ha_innodb.cc:  2795: | | | | | | | | | | >ha_innobase::update_thd
  ha_innodb.cc:  2797: | | | | | | | | | | | ha_innobase::update_thd: user_thd: 0x7f3f800009c0 -> 0x7f3f800009c0
  ha_innodb.cc:  2575: | | | | | | | | | | | >innobase_trx_init
  ha_innodb.cc: | | | | | | | | | | | <innobase_trx_init
  ha_innodb.cc: | | | | | | | | | | <ha_innobase::update_thd
  ha_innodb.cc: 10043: | | | | | | | | | | >dict_index_t* ha_innobase::innobase_get_index
  ha_innodb.cc: | | | | | | | | | | <dict_index_t* ha_innobase::innobase_get_index
  ha_innodb.cc: | | | | | | | | | <int ha_innobase::info_low
 sql_select.cc:   286: | | | | | | | | | opt: (null): ending struct
 sql_select.cc:   286: | | | | | | | | | opt: refine_plan: ending struct
sql_select.cc:   286: | | | | | | | | | opt: (null): ending struct
 sql_select.cc: | | | | | | | | <make_join_readinfo
sql_optimizer.cc:   273: | | | | | | | | opt: (null): starting struct
sql_optimizer.cc:   273: | | | | | | | | opt: considering_tmp_tables: starting struct
 sql_select.cc:  4205: | | | | | | | | >JOIN::make_tmp_tables_info
sql_executor.cc:   637: | | | | | | | | | >JOIN::get_end_select_func
sql_executor.cc:   648: | | | | | | | | | | info: Using end_send
sql_executor.cc: | | | | | | | | | <JOIN::get_end_select_func
 sql_select.cc: | | | | | | | | <JOIN::make_tmp_tables_info
sql_optimizer.cc:   286: | | | | | | | | opt: considering_tmp_tables: ending struct
sql_optimizer.cc:   286: | | | | | | | | opt: (null): ending struct
sql_optimizer.cc:   961: | | | | | | | | >JOIN::push_to_engines
sql_optimizer.cc: | | | | | | | | <JOIN::push_to_engines
 sql_select.cc:  3780: | | | | | | | | >count_field_types
 sql_select.cc: | | | | | | | | <count_field_types
sql_optimizer.cc:   286: | | | | | | | | opt: steps: ending struct
sql_optimizer.cc:   286: | | | | | | | | opt: join_optimization: ending struct
sql_optimizer.cc:   286: | | | | | | | | opt: (null): ending struct
sql_optimizer.cc: | | | | | | | <JOIN::optimize
 sql_select.cc: | | | | | | <Query_block::optimize
  sql_union.cc: | | | | | <Query_expression::optimize
  sql_union.cc:  1269: | | | | | >Query_expression::execute
  sql_union.cc:   314: | | | | | | THD::enter_stage: 'executing' /home/source_code/mysql-8.0.24/sql/sql_union.cc:1126
sql_profile.cc:   350: | | | | | | >PROFILING::status_change
sql_profile.cc: | | | | | | <PROFILING::status_change
  sql_union.cc:   273: | | | | | | opt: (null): starting struct
  sql_union.cc:   273: | | | | | | opt: join_execution: starting struct
  sql_union.cc:   328: | | | | | | opt: select#: 1
  sql_union.cc:   273: | | | | | | opt: steps: starting struct
  sql_class.cc:  2489: | | | | | | >THD::send_result_metadata
protocol_classic.cc:  3059: | | | | | | | >bool Protocol_classic::start_result_metadata
protocol_classic.cc:  3060: | | | | | | | | info: num_cols 3, flags 5
protocol_classic.cc:   436: | | | | | | | | net write: Memory: 0x7f3fd82bbbd7  Bytes: (1)
03
 viosocket.cc:   305: | | | | | | | | >vio_is_blocking
  viosocket.cc: | | | | | | | | <vio_is_blocking
   net_serv.cc:   936: | | | | | | | | >net_write_buff
   net_serv.cc: | | | | | | | | <net_write_buff
   net_serv.cc:   936: | | | | | | | | >net_write_buff
   net_serv.cc: | | | | | | | | <net_write_buff
protocol_classic.cc: | | | | | | | <bool Protocol_classic::start_result_metadata
protocol_classic.cc:  3248: | | | | | | | >bool Protocol_classic::send_field_metadata
protocol_classic.cc: | | | | | | | <bool Protocol_classic::send_field_metadata
protocol_classic.cc:  3341: | | | | | | | >bool Protocol_classic::end_row
protocol_classic.cc:   436: | | | | | | | | net write: Memory: 0x7f3f80013610  Bytes: (47)
03 64 65 66 03 64 62 61 09 74 72 65 65 6E 6F 64 65 73 09 74 72 65 65 6E 6F 64
65 73 02 69 64 02 69 64 0C 3F 00 0B 00 00 00 03 03 50 00 00 00
  viosocket.cc:   305: | | | | | | | | >vio_is_blocking
  viosocket.cc: | | | | | | | | <vio_is_blocking
   net_serv.cc:   936: | | | | | | | | >net_write_buff
   net_serv.cc: | | | | | | | | <net_write_buff
   net_serv.cc:   936: | | | | | | | | >net_write_buff
   net_serv.cc: | | | | | | | | <net_write_buff
protocol_classic.cc: | | | | | | | <bool Protocol_classic::end_row
protocol_classic.cc:  3248: | | | | | | | >bool Protocol_classic::send_field_metadata
protocol_classic.cc: | | | | | | | <bool Protocol_classic::send_field_metadata
protocol_classic.cc:  3341: | | | | | | | >bool Protocol_classic::end_row
protocol_classic.cc:   436: | | | | | | | | net write: Memory: 0x7f3f80013610  Bytes: (59)
03 64 65 66 03 64 62 61 09 74 72 65 65 6E 6F 64 65 73 09 74 72 65 65 6E 6F 64
65 73 08 6E 6F 64 65 6E 61 6D 65 08 6E 6F 64 65 6E 61 6D 65 0C FF 00 50 00 00
00 FD 00 00 00 00 00
  viosocket.cc:   305: | | | | | | | | >vio_is_blocking
  viosocket.cc: | | | | | | | | <vio_is_blocking
   net_serv.cc:   936: | | | | | | | | >net_write_buff
   net_serv.cc: | | | | | | | | <net_write_buff
   net_serv.cc:   936: | | | | | | | | >net_write_buff
   net_serv.cc: | | | | | | | | <net_write_buff
protocol_classic.cc: | | | | | | | <bool Protocol_classic::end_row
protocol_classic.cc:  3248: | | | | | | | >bool Protocol_classic::send_field_metadata
protocol_classic.cc: | | | | | | | <bool Protocol_classic::send_field_metadata
protocol_classic.cc:  3341: | | | | | | | >bool Protocol_classic::end_row
protocol_classic.cc:   436: | | | | | | | | net write: Memory: 0x7f3f80013610  Bytes: (49)
03 64 65 66 03 64 62 61 09 74 72 65 65 6E 6F 64 65 73 09 74 72 65 65 6E 6F 64
65 73 03 70 69 64 03 70 69 64 0C 3F 00 0B 00 00 00 03 00 00 00 00 00
  viosocket.cc:   305: | | | | | | | | >vio_is_blocking
  viosocket.cc: | | | | | | | | <vio_is_blocking
   net_serv.cc:   936: | | | | | | | | >net_write_buff
   net_serv.cc: | | | | | | | | <net_write_buff
   net_serv.cc:   936: | | | | | | | | >net_write_buff
   net_serv.cc: | | | | | | | | <net_write_buff
protocol_classic.cc: | | | | | | | <bool Protocol_classic::end_row
protocol_classic.cc:  3103: | | | | | | | >bool Protocol_classic::end_result_metadata
protocol_classic.cc:  3104: | | | | | | | | info: num_cols 3, flags 5
protocol_classic.cc: | | | | | | | <bool Protocol_classic::end_result_metadata
  sql_class.cc: | | | | | | <THD::send_result_metadata
    handler.cc:  2937: | | | | | | >handler::ha_rnd_init
  ha_innodb.cc: 10441: | | | | | | | >int ha_innobase::rnd_init
  ha_innodb.cc: 10084: | | | | | | | | >ha_innobase::change_active_index
  ha_innodb.cc: 10043: | | | | | | | | | >dict_index_t* ha_innobase::innobase_get_index
  ha_innodb.cc: | | | | | | | | | <dict_index_t* ha_innobase::innobase_get_index
  ha_innodb.cc: | | | | | | | | <ha_innobase::change_active_index
  ha_innodb.cc: | | | | | | | <int ha_innobase::rnd_init
    handler.cc: | | | | | | <handler::ha_rnd_init
    handler.cc:  2978: | | | | | | >handler::ha_rnd_next
  ha_innodb.cc: 10472: | | | | | | | >int ha_innobase::rnd_next
  ha_innodb.cc: 10301: | | | | | | | | >int ha_innobase::index_first
  ha_innodb.cc:  9860: | | | | | | | | | >int ha_innobase::index_read
    row0sel.cc:  4457: | | | | | | | | | | >row_search_mvcc
    row0sel.cc:  2976: | | | | | | | | | | | >row_sel_store_mysql_rec
    row0sel.cc:  2801: | | | | | | | | | | | | >row_sel_store_mysql_field_func
    row0sel.cc: | | | | | | | | | | | | <row_sel_store_mysql_field_func
    row0sel.cc:  2801: | | | | | | | | | | | | >row_sel_store_mysql_field_func
    row0sel.cc: | | | | | | | | | | | | <row_sel_store_mysql_field_func
    row0sel.cc:  2801: | | | | | | | | | | | | >row_sel_store_mysql_field_func
    row0sel.cc: | | | | | | | | | | | | <row_sel_store_mysql_field_func
    row0sel.cc: | | | | | | | | | | | <row_sel_store_mysql_rec
    row0sel.cc:  2976: | | | | | | | | | | | >row_sel_store_mysql_rec
  row0sel.cc:  2801: | | | | | | | | | | | | >row_sel_store_mysql_field_func
    row0sel.cc: | | | | | | | | | | | | <row_sel_store_mysql_field_func
    row0sel.cc:  2801: | | | | | | | | | | | | >row_sel_store_mysql_field_func
    row0sel.cc: | | | | | | | | | | | | <row_sel_store_mysql_field_func
    row0sel.cc:  2801: | | | | | | | | | | | | >row_sel_store_mysql_field_func
    row0sel.cc: | | | | | | | | | | | | <row_sel_store_mysql_field_func
    row0sel.cc: | | | | | | | | | | | <row_sel_store_mysql_rec
    row0sel.cc:  2976: | | | | | | | | | | | >row_sel_store_mysql_rec
    row0sel.cc:  2801: | | | | | | | | | | | | >row_sel_store_mysql_field_func
    row0sel.cc: | | | | | | | | | | | | <row_sel_store_mysql_field_func
    row0sel.cc:  2801: | | | | | | | | | | | | >row_sel_store_mysql_field_func
    row0sel.cc: | | | | | | | | | | | | <row_sel_store_mysql_field_func
    row0sel.cc:  2801: | | | | | | | | | | | | >row_sel_store_mysql_field_func
    row0sel.cc: | | | | | | | | | | | | <row_sel_store_mysql_field_func
    row0sel.cc: | | | | | | | | | | | <row_sel_store_mysql_rec
    row0sel.cc:  2976: | | | | | | | | | | | >row_sel_store_mysql_rec
    row0sel.cc:  2801: | | | | | | | | | | | | >row_sel_store_mysql_field_func
    row0sel.cc: | | | | | | | | | | | | <row_sel_store_mysql_field_func
    row0sel.cc:  2801: | | | | | | | | | | | | >row_sel_store_mysql_field_func
    row0sel.cc: | | | | | | | | | | | | <row_sel_store_mysql_field_func
    row0sel.cc:  2801: | | | | | | | | | | | | >row_sel_store_mysql_field_func
    row0sel.cc: | | | | | | | | | | | | <row_sel_store_mysql_field_func
    row0sel.cc: | | | | | | | | | | | <row_sel_store_mysql_rec
    row0sel.cc:  2976: | | | | | | | | | | | >row_sel_store_mysql_rec
    row0sel.cc:  2801: | | | | | | | | | | | | >row_sel_store_mysql_field_func
    row0sel.cc: | | | | | | | | | | | | <row_sel_store_mysql_field_func
    row0sel.cc:  2801: | | | | | | | | | | | | >row_sel_store_mysql_field_func
    row0sel.cc: | | | | | | | | | | | | <row_sel_store_mysql_field_func
    row0sel.cc:  2801: | | | | | | | | | | | | >row_sel_store_mysql_field_func
    row0sel.cc: | | | | | | | | | | | | <row_sel_store_mysql_field_func
    row0sel.cc: | | | | | | | | | | | <row_sel_store_mysql_rec
    row0sel.cc:  2976: | | | | | | | | | | | >row_sel_store_mysql_rec
    row0sel.cc:  2801: | | | | | | | | | | | | >row_sel_store_mysql_field_func
    row0sel.cc: | | | | | | | | | | | | <row_sel_store_mysql_field_func
    row0sel.cc:  2801: | | | | | | | | | | | | >row_sel_store_mysql_field_func
    row0sel.cc: | | | | | | | | | | | | <row_sel_store_mysql_field_func
    row0sel.cc:  2801: | | | | | | | | | | | | >row_sel_store_mysql_field_func
  row0sel.cc:  2801: | | | | | | | | | | | | >row_sel_store_mysql_field_func
    row0sel.cc: | | | | | | | | | | | | <row_sel_store_mysql_field_func
    row0sel.cc: | | | | | | | | | | | <row_sel_store_mysql_rec
    row0sel.cc: | | | | | | | | | | <row_search_mvcc
  ha_innodb.cc: | | | | | | | | | <int ha_innobase::index_read
  ha_innodb.cc: | | | | | | | | <int ha_innobase::index_first
  ha_innodb.cc: | | | | | | | <int ha_innobase::rnd_next
    handler.cc: | | | | | | <handler::ha_rnd_next
query_result.cc:    96: | | | | | | >bool Query_result_send::send_data
  sql_class.cc:  2531: | | | | | | | >THD::send_result_set_row
  sql_class.cc: | | | | | | | <THD::send_result_set_row
protocol_classic.cc:  3341: | | | | | | | >bool Protocol_classic::end_row
protocol_classic.cc:   436: | | | | | | | | net write: Memory: 0x7f3f80013610  Bytes: (6)
01 31 01 41 01 30
  viosocket.cc:   305: | | | | | | | | >vio_is_blocking
  viosocket.cc: | | | | | | | | <vio_is_blocking
   net_serv.cc:   936: | | | | | | | | >net_write_buff
   net_serv.cc: | | | | | | | | <net_write_buff
   net_serv.cc:   936: | | | | | | | | >net_write_buff
   net_serv.cc: | | | | | | | | <net_write_buff
protocol_classic.cc: | | | | | | | <bool Protocol_classic::end_row
query_result.cc: | | | | | | <bool Query_result_send::send_data
    handler.cc:  2978: | | | | | | >handler::ha_rnd_next
  ha_innodb.cc: 10472: | | | | | | | >int ha_innobase::rnd_next
  ha_innodb.cc: 10186: | | | | | | | | >ha_innobase::general_fetch
    row0sel.cc:  4457: | | | | | | | | | >row_search_mvcc
    row0sel.cc: | | | | | | | | | <row_search_mvcc
  ha_innodb.cc: | | | | | | | | <ha_innobase::general_fetch
  ha_innodb.cc: | | | | | | | <int ha_innobase::rnd_next
    handler.cc: | | | | | | <handler::ha_rnd_next
query_result.cc:    96: | | | | | | >bool Query_result_send::send_data
  sql_class.cc:  2531: | | | | | | | >THD::send_result_set_row
  sql_class.cc: | | | | | | | <THD::send_result_set_row
protocol_classic.cc:  3341: | | | | | | | >bool Protocol_classic::end_row
protocol_classic.cc:   436: | | | | | | | | net write: Memory: 0x7f3f80013610  Bytes: (6)
01 32 01 42 01 31
  viosocket.cc:   305: | | | | | | | | >vio_is_blocking
  viosocket.cc: | | | | | | | | <vio_is_blocking
   net_serv.cc:   936: | | | | | | | | >net_write_buff
   net_serv.cc: | | | | | | | | <net_write_buff
   net_serv.cc:   936: | | | | | | | | >net_write_buff
   net_serv.cc: | | | | | | | | <net_write_buff
protocol_classic.cc: | | | | | | | <bool Protocol_classic::end_row
query_result.cc: | | | | | | <bool Query_result_send::send_data
    handler.cc:  2978: | | | | | | >handler::ha_rnd_next
  ha_innodb.cc: 10472: | | | | | | | >int ha_innobase::rnd_next
  ha_innodb.cc: 10186: | | | | | | | | >ha_innobase::general_fetch
    row0sel.cc:  4457: | | | | | | | | | >row_search_mvcc
    row0sel.cc: | | | | | | | | | <row_search_mvcc
  ha_innodb.cc: | | | | | | | | <ha_innobase::general_fetch
  ha_innodb.cc: | | | | | | | <int ha_innobase::rnd_next
    handler.cc: | | | | | | <handler::ha_rnd_next
query_result.cc:    96: | | | | | | >bool Query_result_send::send_data
  sql_class.cc:  2531: | | | | | | | >THD::send_result_set_row
  sql_class.cc: | | | | | | | <THD::send_result_set_row
protocol_classic.cc:  3341: | | | | | | | >bool Protocol_classic::end_row
protocol_classic.cc:   436: | | | | | | | | net write: Memory: 0x7f3f80013610  Bytes: (6)
01 33 01 43 01 31
  viosocket.cc:   305: | | | | | | | | >vio_is_blocking
  viosocket.cc: | | | | | | | | <vio_is_blocking
   net_serv.cc:   936: | | | | | | | | >net_write_buff
   net_serv.cc: | | | | | | | | <net_write_buff
   net_serv.cc:   936: | | | | | | | | >net_write_buff
   net_serv.cc: | | | | | | | | <net_write_buff
protocol_classic.cc: | | | | | | | <bool Protocol_classic::end_row
query_result.cc: | | | | | | <bool Query_result_send::send_data
    handler.cc:  2978: | | | | | | >handler::ha_rnd_next
  ha_innodb.cc: 10472: | | | | | | | >int ha_innobase::rnd_next
  ha_innodb.cc: 10186: | | | | | | | | >ha_innobase::general_fetch
    row0sel.cc:  4457: | | | | | | | | | >row_search_mvcc
    row0sel.cc: | | | | | | | | | <row_search_mvcc
  ha_innodb.cc: | | | | | | | | <ha_innobase::general_fetch
  ha_innodb.cc: | | | | | | | <int ha_innobase::rnd_next
    handler.cc: | | | | | | <handler::ha_rnd_next
query_result.cc:    96: | | | | | | >bool Query_result_send::send_data
  sql_class.cc:  2531: | | | | | | | >THD::send_result_set_row
  sql_class.cc: | | | | | | | <THD::send_result_set_row
protocol_classic.cc:  3341: | | | | | | | >bool Protocol_classic::end_row
protocol_classic.cc:   436: | | | | | | | | net write: Memory: 0x7f3f80013610  Bytes: (6)
01 34 01 44 01 32
  viosocket.cc:   305: | | | | | | | | >vio_is_blocking
  viosocket.cc: | | | | | | | | <vio_is_blocking
   net_serv.cc:   936: | | | | | | | | >net_write_buff
   net_serv.cc: | | | | | | | | <net_write_buff
   net_serv.cc:   936: | | | | | | | | >net_write_buff
   net_serv.cc: | | | | | | | | <net_write_buff
protocol_classic.cc: | | | | | | | <bool Protocol_classic::end_row
query_result.cc: | | | | | | <bool Query_result_send::send_data
    handler.cc:  2978: | | | | | | >handler::ha_rnd_next
  ha_innodb.cc: 10472: | | | | | | | >int ha_innobase::rnd_next
  ha_innodb.cc: 10186: | | | | | | | | >ha_innobase::general_fetch
    row0sel.cc:  4457: | | | | | | | | | >row_search_mvcc
    row0sel.cc: | | | | | | | | | <row_search_mvcc
  ha_innodb.cc: | | | | | | | | <ha_innobase::general_fetch
  ha_innodb.cc: | | | | | | | <int ha_innobase::rnd_next
    handler.cc: | | | | | | <handler::ha_rnd_next
query_result.cc:    96: | | | | | | >bool Query_result_send::send_data
  sql_class.cc:  2531: | | | | | | | >THD::send_result_set_row
  sql_class.cc: | | | | | | | <THD::send_result_set_row
protocol_classic.cc:  3341: | | | | | | | >bool Protocol_classic::end_row
protocol_classic.cc:   436: | | | | | | | | net write: Memory: 0x7f3f80013610  Bytes: (6)
01 35 01 45 01 32
  viosocket.cc:   305: | | | | | | | | >vio_is_blocking
  viosocket.cc: | | | | | | | | <vio_is_blocking
   net_serv.cc:   936: | | | | | | | | >net_write_buff
   net_serv.cc: | | | | | | | | <net_write_buff
   net_serv.cc:   936: | | | | | | | | >net_write_buff
   net_serv.cc: | | | | | | | | <net_write_buff
protocol_classic.cc: | | | | | | | <bool Protocol_classic::end_row
query_result.cc: | | | | | | <bool Query_result_send::send_data
    handler.cc:  2978: | | | | | | >handler::ha_rnd_next
  ha_innodb.cc: 10472: | | | | | | | >int ha_innobase::rnd_next
  ha_innodb.cc: 10186: | | | | | | | | >ha_innobase::general_fetch
    row0sel.cc:  4457: | | | | | | | | | >row_search_mvcc



复制

MVCC  快照读

 ha_innodb.cc: | | | | | | | | <ha_innobase::general_fetch
  ha_innodb.cc: | | | | | | | <int ha_innobase::rnd_next
    handler.cc: | | | | | | <handler::ha_rnd_next
query_result.cc:    96: | | | | | | >bool Query_result_send::send_data
  sql_class.cc:  2531: | | | | | | | >THD::send_result_set_row
  sql_class.cc: | | | | | | | <THD::send_result_set_row
protocol_classic.cc:  3341: | | | | | | | >bool Protocol_classic::end_row
protocol_classic.cc:   436: | | | | | | | | net write: Memory: 0x7f3f80013610  Bytes: (8)
02 31 37 01 51 02 31 35
  viosocket.cc:   305: | | | | | | | | >vio_is_blocking
  viosocket.cc: | | | | | | | | <vio_is_blocking
   net_serv.cc:   936: | | | | | | | | >net_write_buff
   net_serv.cc: | | | | | | | | <net_write_buff
   net_serv.cc:   936: | | | | | | | | >net_write_buff
   net_serv.cc: | | | | | | | | <net_write_buff
protocol_classic.cc: | | | | | | | <bool Protocol_classic::end_row
query_result.cc: | | | | | | <bool Query_result_send::send_data
    handler.cc:  2978: | | | | | | >handler::ha_rnd_next
  ha_innodb.cc: 10472: | | | | | | | >int ha_innobase::rnd_next
  ha_innodb.cc: 10186: | | | | | | | | >ha_innobase::general_fetch
    row0sel.cc:  4457: | | | | | | | | | >row_search_mvcc
    row0sel.cc: | | | | | | | | | <row_search_mvcc
  ha_innodb.cc: | | | | | | | | <ha_innobase::general_fetch
  ha_innodb.cc: | | | | | | | <int ha_innobase::rnd_next
    handler.cc: | | | | | | <handler::ha_rnd_next
 sql_select.cc:  3528: | | | | | | >JOIN::join_free
 sql_select.cc:  3590: | | | | | | | >JOIN::cleanup
    handler.cc:  2954: | | | | | | | | >handler::ha_rnd_end
  ha_innodb.cc:  9738: | | | | | | | | | >int ha_innobase::index_end
    handler.cc:  6618: | | | | | | | | | | >DsMrr_impl::dsmrr_close
handler.cc: | | | | | | | | | | <DsMrr_impl::dsmrr_close
  ha_innodb.cc: | | | | | | | | | <int ha_innobase::index_end
    handler.cc: | | | | | | | | <handler::ha_rnd_end
   sql_base.cc:  1113: | | | | | | | | >free_io_cache
   sql_base.cc: | | | | | | | | <free_io_cache
   filesort.cc:   661: | | | | | | | | >filesort_free_buffers
   filesort.cc: | | | | | | | | <filesort_free_buffers
 sql_select.cc: | | | | | | | <JOIN::cleanup
       lock.cc:   432: | | | | | | | >mysql_unlock_read_tables
       lock.cc:   608: | | | | | | | | >unlock_external
    handler.cc:  7747: | | | | | | | | | >handler::ha_external_lock
  ha_innodb.cc: 18109: | | | | | | | | | | >int ha_innobase::external_lock
  ha_innodb.cc: 18110: | | | | | | | | | | | enter: lock_type: 2
  ha_innodb.cc:  2795: | | | | | | | | | | | >ha_innobase::update_thd
  ha_innodb.cc:  2797: | | | | | | | | | | | | ha_innobase::update_thd: user_thd: 0x7f3f800009c0 -> 0x7f3f800009c0
  ha_innodb.cc:  2575: | | | | | | | | | | | | >innobase_trx_init
  ha_innodb.cc: | | | | | | | | | | | | <innobase_trx_init
  ha_innodb.cc: | | | | | | | | | | | <ha_innobase::update_thd
  ha_innodb.cc:  5470: | | | | | | | | | | | >innobase_commit
  ha_innodb.cc:  5472: | | | | | | | | | | | | trans: ending transaction
  ha_innodb.cc:  2575: | | | | | | | | | | | | >innobase_trx_init
  ha_innodb.cc: | | | | | | | | | | | | <innobase_trx_init
  ha_innodb.cc: | | | | | | | | | | | <innobase_commit
  ha_innodb.cc: | | | | | | | | | | <int ha_innobase::external_lock
    handler.cc: | | | | | | | | | <handler::ha_external_lock
       lock.cc: | | | | | | | | <unlock_external
       lock.cc: | | | | | | | <mysql_unlock_read_tables
 sql_select.cc: | | | | | | <JOIN::join_free
  sql_error.cc:   394: | | | | | | >Diagnostics_area::set_eof_status
  sql_error.cc: | | | | | | <Diagnostics_area::set_eof_status
  sql_union.cc:   286: | | | | | | opt: steps: ending struct
  sql_union.cc:   286: | | | | | | opt: join_execution: ending struct
  sql_union.cc:   286: | | | | | | opt: (null): ending struct
  sql_union.cc: | | | | | <Query_expression::execute
 sql_select.cc:   314: | | | | | THD::enter_stage: 'end' /home/source_code/mysql-8.0.24/sql/sql_select.cc:586
sql_profile.cc:   350: | | | | | >PROFILING::status_change
sql_profile.cc: | | | | | <PROFILING::status_change
  sql_union.cc:  1294: | | | | | >Query_expression::cleanup
 sql_select.cc:  3590: | | | | | | >JOIN::cleanup
   sql_base.cc:  1113: | | | | | | | >free_io_cache
   sql_base.cc: | | | | | | | <free_io_cache
   filesort.cc:   661: | | | | | | | >filesort_free_buffers
   filesort.cc: | | | | | | | <filesort_free_buffers
 sql_select.cc: | | | | | | <JOIN::cleanup
  sql_union.cc: | | | | | <Query_expression::cleanup
  sql_timer.cc:   222: | | | | | >thd_timer_reset
  sql_timer.cc: | | | | | <thd_timer_reset
 sql_select.cc: | | | | <bool Sql_cmd_dml::execute
  sql_parse.cc:   314: | | | | THD::enter_stage: 'query end' /home/source_code/mysql-8.0.24/sql/sql_parse.cc:4542
sql_profile.cc:   350: | | | | >PROFILING::status_change
sql_profile.cc: | | | | <PROFILING::status_change
  sql_audit.cc:  1084: | | | | >mysql_audit_acquire_plugins
  sql_audit.cc: | | | | <mysql_audit_acquire_plugins
transaction.cc:   513: | | | | >trans_commit_stmt
transaction.cc:   130: | | | | | debug: add_unsafe_rollback_flags: 0
transaction.cc:   314: | | | | | THD::enter_stage: 'waiting for handler commit' /home/source_code/mysql-8.0.24/sql/handler.cc:1594
sql_profile.cc:   350: | | | | | >PROFILING::status_change
sql_profile.cc: | | | | | <PROFILING::status_change
    handler.cc:  1519: | | | | | >bool> commit_owned_gtids
    handler.cc: | | | | | <bool> commit_owned_gtids
    handler.cc:  1624: | | | | | >ha_commit_trans
    handler.cc:  1627: | | | | | | info: all=0 thd->in_sub_stmt=0 ha_info=0x7f3f80002028 is_real_trans=1
     binlog.cc:  7932: | | | | | | >TC_LOG::enum_result MYSQL_BIN_LOG::commit
     binlog.cc:  7934: | | | | | | | info: query='select * from treenodes'
     binlog.cc:  7945: | | | | | | | enter: thd: 0x7f3f800009c0, all: no, xid: 523630, cache_mngr: 0x0
    handler.cc:  1866: | | | | | | | >ha_commit_low
rpl_slave_commit_order_manager.cc:   422: | | | | | | | | >bool Commit_order_manager::get_rollback_status
rpl_slave_commit_order_manager.cc: | | | | | | | | <bool Commit_order_manager::get_rollback_status
  ha_innodb.cc:  5470: | | | | | | | | >innobase_commit
  ha_innodb.cc:  5472: | | | | | | | | | trans: ending transaction
  ha_innodb.cc:  2575: | | | | | | | | | >innobase_trx_init
  ha_innodb.cc: | | | | | | | | | <innobase_trx_init
  ha_innodb.cc: | | | | | | | | <innobase_commit
transaction_info.h:   436: | | | | | | | | >Ha_trx_info::reset
transaction_info.h: | | | | | | | | <Ha_trx_info::reset
transaction_info.h:   358: | | | | | | | | >Transaction_ctx::reset_scope
transaction_info.h: | | | | | | | | <Transaction_ctx::reset_scope
    handler.cc: | | | | | | | <ha_commit_low
     binlog.cc: | | | | | | <TC_LOG::enum_result MYSQL_BIN_LOG::commit
transaction_info.h:   224: | | | | | | >Transaction_ctx::cleanup
rpl_transaction_ctx.cc:    43: | | | | | | | >Rpl_transaction_ctx::cleanup
rpl_transaction_ctx.cc: | | | | | | | <Rpl_transaction_ctx::cleanup
rpl_transaction_write_set_ctx.cc:   103: | | | | | | | >Rpl_transaction_write_set_ctx::reset_state
rpl_transaction_write_set_ctx.cc:   110: | | | | | | | | >Rpl_transaction_write_set_ctx::clear_write_set
rpl_transaction_write_set_ctx.cc: | | | | | | | | <Rpl_transaction_write_set_ctx::clear_write_set
rpl_transaction_write_set_ctx.cc: | | | | | | | <Rpl_transaction_write_set_ctx::reset_state
   my_alloc.cc:   184: | | | | | | | >MEM_ROOT::ClearForReuse
   my_alloc.cc: | | | | | | | <MEM_ROOT::ClearForReuse
transaction_info.h: | | | | | | <Transaction_ctx::cleanup
    handler.cc: | | | | | <ha_commit_trans
rpl_context.cc:    69: | | | | | >bool Session_consistency_gtids_ctx::notify_after_transaction_commit
rpl_context.cc: | | | | | <bool Session_consistency_gtids_ctx::notify_after_transaction_commit
transaction.cc:   134: | | | | | debug: reset_unsafe_rollback_flags
transaction.cc: | | | | <trans_commit_stmt
  sql_union.cc:  1294: | | | | >Query_expression::cleanup
   sql_base.cc:  1113: | | | | | >free_io_cache
   sql_base.cc: | | | | | <free_io_cache
   filesort.cc:   661: | | | | | >filesort_free_buffers
   filesort.cc: | | | | | <filesort_free_buffers
  sql_union.cc: | | | | <Query_expression::cleanup
  sql_parse.cc:   314: | | | | THD::enter_stage: 'closing tables' /home/source_code/mysql-8.0.24/sql/sql_parse.cc:4593
sql_profile.cc:   350: | | | | >PROFILING::status_change
sql_profile.cc: | | | | <PROFILING::status_change
   sql_base.cc:  1531: | | | | >close_thread_tables
   sql_base.cc:  1565: | | | | | tcache: table: 'treenodes'  query_id: 0
  ha_innodb.cc:  2795: | | | | | >ha_innobase::update_thd
  ha_innodb.cc:  2797: | | | | | | ha_innobase::update_thd: user_thd: 0x7f3f800009c0 -> 0x7f3f800009c0
  ha_innodb.cc:  2575: | | | | | | >innobase_trx_init
  ha_innodb.cc: | | | | | | <innobase_trx_init
  ha_innodb.cc: | | | | | <ha_innobase::update_thd
      table.cc:  7512: | | | | | >TABLE::cleanup_partial_update
      table.cc: | | | | | <TABLE::cleanup_partial_update
     binlog.cc: 11230: | | | | | >THD::binlog_flush_pending_rows_event
     binlog.cc: | | | | | <THD::binlog_flush_pending_rows_event
     binlog.cc: 11230: | | | | | >THD::binlog_flush_pending_rows_event
     binlog.cc: | | | | | <THD::binlog_flush_pending_rows_event
       lock.cc:   406: | | | | | >mysql_unlock_tables
       lock.cc: | | | | | <mysql_unlock_tables
   sql_base.cc:  1400: | | | | | info: thd->open_tables: 0x7f3f8000fcd0
   sql_base.cc:  1712: | | | | | >close_thread_table
ha_innodb.cc:  2795: | | | | | | >ha_innobase::update_thd
  ha_innodb.cc:  2797: | | | | | | | ha_innobase::update_thd: user_thd: 0x7f3f800009c0 -> 0x7f3f800009c0
  ha_innodb.cc:  2575: | | | | | | | >innobase_trx_init
  ha_innodb.cc: | | | | | | | <innobase_trx_init
  ha_innodb.cc: | | | | | | <ha_innobase::update_thd
    handler.cc:  7789: | | | | | | >handler::ha_reset
   sql_base.cc:  1113: | | | | | | | >free_io_cache
   sql_base.cc: | | | | | | | <free_io_cache
  ha_innodb.cc:  2795: | | | | | | | >ha_innobase::update_thd
  ha_innodb.cc:  2797: | | | | | | | | ha_innobase::update_thd: user_thd: 0x7f3f800009c0 -> 0x7f3f800009c0
  ha_innodb.cc:  2575: | | | | | | | | >innobase_trx_init
  ha_innodb.cc: | | | | | | | | <innobase_trx_init
  ha_innodb.cc: | | | | | | | <ha_innobase::update_thd
  ha_innodb.cc:  2795: | | | | | | | >ha_innobase::update_thd
  ha_innodb.cc:  2797: | | | | | | | | ha_innobase::update_thd: user_thd: 0x7f3f800009c0 -> 0x7f3f800009c0
  ha_innodb.cc:  2575: | | | | | | | | >innobase_trx_init
  ha_innodb.cc: | | | | | | | | <innobase_trx_init
  ha_innodb.cc: | | | | | | | <ha_innobase::update_thd
    handler.cc:  6629: | | | | | | | >DsMrr_impl::reset
    handler.cc: | | | | | | | <DsMrr_impl::reset
    handler.cc: | | | | | | <handler::ha_reset
   sql_base.cc: | | | | | <close_thread_table
   sql_base.cc: | | | | <close_thread_tables
  sql_class.cc:  1645: | | | | >THD::rollback_item_tree_changes
  sql_class.cc: | | | | <THD::rollback_item_tree_changes
  sql_parse.cc:   362: | | | | >stmt_causes_implicit_commit
  sql_parse.cc: | | | | <stmt_causes_implicit_commit
        mdl.cc:  4490: | | | | >MDL_context::release_transactional_locks
        mdl.cc:  4219: | | | | | >MDL_context::release_locks_stored_before
        mdl.cc: | | | | | <MDL_context::release_locks_stored_before
        mdl.cc:  4219: | | | | | >MDL_context::release_locks_stored_before
        mdl.cc:  4228: | | | | | | info: found lock to release ticket=0x7f3f8000f9a0
        mdl.cc:  4087: | | | | | | >MDL_context::release_lock
        mdl.cc:  4088: | | | | | | | enter: db=dba name=treenodes
        mdl.cc: | | | | | | <MDL_context::release_lock
        mdl.cc: | | | | | <MDL_context::release_locks_stored_before
        mdl.cc: | | | | <MDL_context::release_transactional_locks
  sql_parse.cc:  2645: | | | | >binlog_gtid_end_transaction
  sql_parse.cc:   362: | | | | | >stmt_causes_implicit_commit
  sql_parse.cc: | | | | | <stmt_causes_implicit_commit
  sql_parse.cc: | | | | <binlog_gtid_end_transaction
  sql_parse.cc:   286: | | | | opt: steps: ending struct
  sql_parse.cc:   286: | | | | opt: (null): ending struct
opt_trace2server.cc:   239: | | | | >Opt_trace_start::~Opt_trace_start
Complete optimizer trace:
  opt_trace.cc:  1002: | | | | | >Opt_trace_context::purge_stmts
  opt_trace.cc: | | | | | <Opt_trace_context::purge_stmts
opt_trace2server.cc: | | | | <Opt_trace_start::~Opt_trace_start
  sql_parse.cc: | | | <mysql_execute_command
  sql_parse.cc:   314: | | | THD::enter_stage: 'freeing items' /home/source_code/mysql-8.0.24/sql/sql_parse.cc:5042
sql_profile.cc:   350: | | | >PROFILING::status_change
sql_profile.cc: | | | <PROFILING::status_change
  sql_class.cc:  1688: | | | >THD::end_statement
    sql_lex.cc:   533: | | | | >lex_end
    sql_lex.cc:   534: | | | | | enter: lex: 0x7f3f80003920
    sql_lex.cc: | | | | <lex_end
  sql_class.cc: | | | <THD::end_statement
  sql_parse.cc:  1179: | | | >cleanup_items
       item.cc:  5475: | | | | >void Item_field::cleanup
       item.cc: | | | | <void Item_field::cleanup
       item.cc:  5475: | | | | >void Item_field::cleanup
       item.cc: | | | | <void Item_field::cleanup
       item.cc:  5475: | | | | >void Item_field::cleanup
       item.cc: | | | | <void Item_field::cleanup
       item.cc:  5475: | | | | >void Item_field::cleanup
       item.cc: | | | | <void Item_field::cleanup
  sql_parse.cc: | | | <cleanup_items
  sql_class.cc:  1666: | | | >Query_arena::free_items
  sql_class.cc: | | | <Query_arena::free_items
  sql_parse.cc: | | <dispatch_sql_command
  sql_parse.cc:  1942: | | info: query ready
  sql_class.cc:  2545: | | >THD::send_statement_status
protocol_classic.cc:  1315: | | | >bool Protocol_classic::send_eof
protocol_classic.cc:   875: | | | | >net_send_ok
protocol_classic.cc:   911: | | | | | info: affected_rows: 0  id: 0  status: 34  warning_count: 0
protocol_classic.cc:   436: | | | | | net write: Memory: 0x7f3fd82bd5e0  Bytes: (7)
FE 00 00 22 00 00 00
  viosocket.cc:   305: | | | | | >vio_is_blocking
  viosocket.cc: | | | | | <vio_is_blocking
   net_serv.cc:   936: | | | | | >net_write_buff
 net_serv.cc: | | | | | <net_write_buff
   net_serv.cc:   283: | | | | | >net_flush
   net_serv.cc:  1288: | | | | | | >net_write_packet
  viosocket.cc:   215: | | | | | | | >vio_write
  viosocket.cc: | | | | | | | <vio_write
   net_serv.cc: | | | | | | <net_write_packet
   net_serv.cc: | | | | | <net_flush
protocol_classic.cc:   967: | | | | | info: OK sent, so no more error sending allowed
protocol_classic.cc: | | | | <net_send_ok
protocol_classic.cc: | | | <bool Protocol_classic::send_eof
  sql_class.cc: | | <THD::send_statement_status
rpl_context.cc:   144: | | >bool Session_consistency_gtids_ctx::notify_after_response_packet
rpl_context.cc: | | <bool Session_consistency_gtids_ctx::notify_after_response_packet
  sql_audit.cc:  1084: | | >mysql_audit_acquire_plugins
  sql_audit.cc: | | <mysql_audit_acquire_plugins
  sql_audit.cc:  1084: | | >mysql_audit_acquire_plugins
  sql_audit.cc: | | <mysql_audit_acquire_plugins
  sql_audit.cc:  1084: | | >mysql_audit_acquire_plugins
  sql_audit.cc: | | <mysql_audit_acquire_plugins
        log.cc:  1598: | | >log_slow_applicable
        log.cc: | | <log_slow_applicable




复制


文章转载自海鲨数据库架构师,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论