Merge pull request #30 from alibaba/github-develop

GitHub develop
v4
Vinllen Chen 6 years ago committed by GitHub
commit ef0f3d9065
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 6
      conf/redis-shake.conf
  2. 1
      src/redis-shake/common/utils.go
  3. 9
      src/redis-shake/sync.go

@ -4,9 +4,9 @@
id = redis-shake
# log file,日志文件,不配置将打印到stdout (e.g. /var/log/redis-shake.log )
log_file =
# pid path,进程文件存储地址,不配置将输出到项目目录下(e.g. /var/run/), 注意这个是目录
# 真正的pid是`{pid_path}/{id}.pid`
pid_path =
# pid path,进程文件存储地址(e.g. /var/run/),不配置将默认输出到执行下面,
# 注意这个是目录,真正的pid是`{pid_path}/{id}.pid`
pid_path =
# pprof port
system_profile = 9310

@ -84,7 +84,6 @@ func OpenReadWriteFile(name string) *os.File {
}
func SendPSyncListeningPort(c net.Conn, port int) {
_, err := c.Write(redis.MustEncodeToBytes(redis.NewCommand("replconf", "listening-port", port)))
if err != nil {
log.PanicError(errors.Trace(err), "write replconf listening-port failed")

@ -100,10 +100,8 @@ func (cmd *CmdSync) Main() {
log.Panic("invalid argument: target")
}
log.Infof("sync from '%s' to '%s' http '%d'\n", from, target, conf.Options.HttpProfile)
log.Infof("sync from '%s' to '%s' with http-port[%d]\n", from, target, conf.Options.HttpProfile)
cmd.wait_full = make(chan struct{})
log.Infof("sync from '%s' to '%s'\n", from, target)
var sockfile *os.File
if len(conf.Options.SockFileName) != 0 {
@ -172,10 +170,15 @@ func (cmd *CmdSync) SendSyncCmd(master, auth_type, passwd string) (net.Conn, int
func (cmd *CmdSync) SendPSyncCmd(master, auth_type, passwd string) (pipe.Reader, int64) {
c := utils.OpenNetConn(master, auth_type, passwd)
log.Infof("psync connect '%v' with auth type[%v] OK!", master, auth_type)
utils.SendPSyncListeningPort(c, conf.Options.HttpProfile)
log.Infof("psync send listening port[%v] OK!", conf.Options.HttpProfile)
br := bufio.NewReaderSize(c, utils.ReaderBufferSize)
bw := bufio.NewWriterSize(c, utils.WriterBufferSize)
log.Infof("try to send 'psync' command")
runid, offset, wait := utils.SendPSyncFullsync(br, bw)
cmd.targetOffset.Set(offset)
log.Infof("psync runid = %s offset = %d, fullsync", runid, offset)

Loading…
Cancel
Save