Merge pull request #536 from Wu-Jianqiang/master

主要修复 SocketChannel 默认缓存大小(1MB)不够用时需自动扩充,否则将因缓存空间不足而造成I/O超时假象
This commit is contained in:
agapple
2018-03-12 16:36:07 +08:00
committed by GitHub
3 changed files with 54 additions and 32 deletions

View File

@@ -297,9 +297,15 @@ public class MysqlConnection implements ErosaConnection {
logger.warn("update mariadb_slave_capability failed", e);
}
long periodNano = TimeUnit.SECONDS.toNanos(MASTER_HEARTBEAT_PERIOD_SECONDS);
/**
* MASTER_HEARTBEAT_PERIOD sets the interval in seconds between replication heartbeats.
* Whenever the master's binary log is updated with an event, the waiting period for the next heartbeat is reset.
* interval is a decimal value having the range 0 to 4294967 seconds and a resolution in milliseconds;
* the smallest nonzero value is 0.001. Heartbeats are sent by the master only if there are no unsent events
* in the binary log file for a period longer than interval.
*/
try {
update("SET @master_heartbeat_period=" + periodNano);
update("SET @master_heartbeat_period=" + MASTER_HEARTBEAT_PERIOD_SECONDS);
} catch (Exception e) {
logger.warn("update master_heartbeat_period failed", e);
}