24.6.2调试同步激活/取消激活

调试同步工具是MySQL Server的可选部分。默认情况下,在调试服务器中启用它。

默认情况下,禁用在编译时的调试同步工具。要启用它,请使用--debug-sync-timeout [= n]选项启动mysqld,其中n是大于0. n的超时值成为双方同步点的操作的默认超时。如果n为0,则Debug Sync Stands已禁用。如果在没有值的情况下给出该选项,则超时设置为300秒。

debug_sync系统变量是调试同步设施的用户界面。如果未编译调试同步,则此变量不可用。如果编译in,则仅读取全局Debug_sync值,并指示该设施是否已启用。默认情况下,禁用调试同步且Debug_sync的值为“关闭”。如果使用--debug-sync-timeout = n启动服务器,其中n是超时值大于0,则启用调试同步,Debug_sync的值是“当前信号”,后跟信号名称。此外,n成为单个同步点的默认超时。

可以由任何用户读取会话值,并且将具有与全局变量相同的值。会话值可以由具有超级特权来控制同步点的用户设置。

设置debug_sync系统变量需要“超级”权限。除非您分配变量已经具有的值,否则您无法读取分配给变量的字符串。但这会给解析错误。在语法上正确的字符串被解析为调试同步点操作并与变量值分开存储。

默认情况下在测试套件中启用调试同步工具,但可以禁用:

mysql-test-run.pl ... --debug-sync-timeout = 0 ...

同样,可以设置默认等待超时:

mysql-test-run.pl ... --debug-sync-timeout = 10 ...

对于需要调试同步工具的测试用例,请在测试用例文件中包含以下行:

--source包含/ has_debug_sync.inc