From 400f0c3e5df9a5fc829d238c6cc47df28e4aba7d Mon Sep 17 00:00:00 2001 From: qzh <951012707@qq.com> Date: Tue, 16 Aug 2022 12:56:47 +0800 Subject: [PATCH] fix(filer.sync): initializing the offset is related to the path (#3450) Co-authored-by: zhihao.qu --- weed/command/filer_sync.go | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/weed/command/filer_sync.go b/weed/command/filer_sync.go index af880ef03..5c085947a 100644 --- a/weed/command/filer_sync.go +++ b/weed/command/filer_sync.go @@ -130,7 +130,7 @@ func runFilerSynchronize(cmd *Command, args []string) bool { go func() { // a->b // set synchronization start timestamp to offset - initOffsetError := initOffsetFromTsMs(grpcDialOption, filerB, aFilerSignature, *syncOptions.bFromTsMs) + initOffsetError := initOffsetFromTsMs(grpcDialOption, filerB, aFilerSignature, *syncOptions.bFromTsMs, getSignaturePrefixByPath(*syncOptions.aPath)) if initOffsetError != nil { glog.Errorf("init offset from timestamp %d error from %s to %s: %v", *syncOptions.bFromTsMs, *syncOptions.filerA, *syncOptions.filerB, initOffsetError) os.Exit(2) @@ -165,7 +165,7 @@ func runFilerSynchronize(cmd *Command, args []string) bool { if !*syncOptions.isActivePassive { // b->a // set synchronization start timestamp to offset - initOffsetError := initOffsetFromTsMs(grpcDialOption, filerA, bFilerSignature, *syncOptions.aFromTsMs) + initOffsetError := initOffsetFromTsMs(grpcDialOption, filerA, bFilerSignature, *syncOptions.aFromTsMs, getSignaturePrefixByPath(*syncOptions.bPath)) if initOffsetError != nil { glog.Errorf("init offset from timestamp %d error from %s to %s: %v", *syncOptions.aFromTsMs, *syncOptions.filerB, *syncOptions.filerA, initOffsetError) os.Exit(2) @@ -205,14 +205,14 @@ func runFilerSynchronize(cmd *Command, args []string) bool { } // initOffsetFromTsMs Initialize offset -func initOffsetFromTsMs(grpcDialOption grpc.DialOption, targetFiler pb.ServerAddress, sourceFilerSignature int32, fromTsMs int64) error { +func initOffsetFromTsMs(grpcDialOption grpc.DialOption, targetFiler pb.ServerAddress, sourceFilerSignature int32, fromTsMs int64, signaturePrefix string) error { if fromTsMs <= 0 { return nil } // convert to nanosecond fromTsNs := fromTsMs * 1000_000 // If not successful, exit the program. - setOffsetErr := setOffset(grpcDialOption, targetFiler, SyncKeyPrefix, sourceFilerSignature, fromTsNs) + setOffsetErr := setOffset(grpcDialOption, targetFiler, signaturePrefix, sourceFilerSignature, fromTsNs) if setOffsetErr != nil { return setOffsetErr }