aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorchrislu <chris.lu@gmail.com>2025-08-14 23:36:52 -0700
committerchrislu <chris.lu@gmail.com>2025-08-15 10:35:33 -0700
commitd5ded63ce3fb93697b20fdae31818f3e5d0605a5 (patch)
tree6b2ece9e4f68e1039bc299c6d46c427c9c2685c3
parentfdfa08975427d0c699f667781fc27458b6b62f10 (diff)
downloadseaweedfs-d5ded63ce3fb93697b20fdae31818f3e5d0605a5.tar.xz
seaweedfs-d5ded63ce3fb93697b20fdae31818f3e5d0605a5.zip
day-advance fix
-rw-r--r--weed/server/filer_grpc_server_sub_meta.go10
1 files changed, 10 insertions, 0 deletions
diff --git a/weed/server/filer_grpc_server_sub_meta.go b/weed/server/filer_grpc_server_sub_meta.go
index 00c2e0ff3..a0a192a10 100644
--- a/weed/server/filer_grpc_server_sub_meta.go
+++ b/weed/server/filer_grpc_server_sub_meta.go
@@ -170,6 +170,16 @@ func (fs *FilerServer) SubscribeLocalMetadata(req *filer_pb.SubscribeMetadataReq
time.Sleep(1127 * time.Millisecond)
continue
}
+ // If no persisted entries were read for this day, check the next day for logs
+ nextDayTs := util.GetNextDayTsNano(lastReadTime.UnixNano())
+ position := log_buffer.NewMessagePosition(nextDayTs, -2)
+ found, err := fs.filer.HasPersistedLogFiles(position)
+ if err != nil {
+ return fmt.Errorf("checking persisted log files: %w", err)
+ }
+ if found {
+ lastReadTime = position
+ }
}
glog.V(0).Infof("read in memory %v local subscribe %s from %+v", clientName, req.PathPrefix, lastReadTime)