跳到内容
新问题

有关于这个项目的问题吗?注册一个免费的GitHub帐户以打开一个问题,并联系其维护者和社区。

单击“注册GitHub”,表示您同意我们的服务条款隐私声明。我们偶尔会向您发送与帐户相关的电子邮件。

已经在GitHub上了?登录到您的帐户

PT-1508添加--只读间隔标志和唤醒时的只读检查 #302

已合并
将14个提交合并到 2018年3月26日
已合并
40处变更:增加38处,删除2处 bin/pt心跳
原始文件行号 差异线编号 差异线更改
向上展开 @@-5805,8+5805,9@@次干管{
我的$start_time=时间;
my$runtime=$o->get('run-time');
my$interval=$o->get('interval')|5;
my$read_only_interval=$o->get('read-only-interval')||$interval;
while(server_is_readonly($dbh)){
睡眠($间隔);
睡眠($只读间隔);
如果(
($run_time&&$run_time<time-$start_time)
||-f$哨兵
向下展开 向上展开 @@-6204,6+6205,8@@次干管{
PTDEBUG&&_d($end?('退出时间',ts($end)):'永远运行');

我的$get_next_interval=make_interval_iter($interval,$skew);
my$max_successive_errors=$o->get('fail-successive-errors')||0;
我的$num_successive_errors=0;

while(#如果…则停止。。。
(!$end||int(time)<$end)#超出运行时,或
全部展开 @@-6223,6+6226,18@@次干管{
睡眠$next_interval-$time;
PTDEBUG&&_d('起床时间',ts(时间));

if($o->get('check-ron-only')&&$o->get('update')){
my$read_only_interval=$o->get('read-only-interval')||$interval;
while(server_is_readonly($dbh)){
睡眠($read_only_interval);
如果(
-f$哨兵
) {
返回0;
}
}
}

#必要时连接或重新连接。
if(!$dbh->ping()){
$dbh=$dp->get_dbh($dp->get_cxn_params($dsn),{AutoCommit=>1});
向下展开 向上展开 @@-6265,13+6280,20@@支管{
}
};
if($EVAL_ERROR){
$num_successive_errors=$num_successive_errors+1;
my($err)=$EVAL_ERROR=~m/^(?:DBI | DBD).*失败:(.*?)\s*位于\s+行.*/;
if($err){
警告“$err\n”;
}
其他{
死亡$EVAL_ERROR;
}
if($max_successive_errors>0&&$num_successsive_erroris>=$max_sccessive_errors){
死亡$EVAL_ERROR;
}
}
其他{
$num_successive_errors=0;
}
}

向下展开 向上展开 @@延迟前为-6619,7+6641,7@@。L<“--recurse”>仅适用于MySQL。
=项--选中只读

检查服务器是否启用了只读;如果是这样,工具将跳过
任何插件。
任何插件。另请参阅L<“--read-only-interval”>

=项目--配置

向下展开 向上展开 @@-6806,6+6828,13@@L<“--帧”>。例如,

5秒[0.25秒,0.05秒,0.02秒]

=项--失败-成功-错误

类型:int

如果指定,pt心跳将在给定数量的连续DBI错误后失败
(无法连接到服务器或发出查询)。

=项--密码

缩写:-p;类型:字符串
向下展开 向上展开 @@-6835,6+6864,13@@打印自动检测或给定的L<“--master-server-id”>。如果L<“--check”>
或指定了L<“--monitor”>,则指定此选项将打印
在每行末尾自动检测或给定L<“--master-server-id”>。

=项--只读间隔

类型:int

当指定了L<“--check-ron-only”>时
发现服务器为只读。如果未指定,则使用L<“--interval”>。

=项目--递归

类型:int
向下展开