From 3d6a87143a8ff412f3756fc3ebf1604e4522eef4 Mon Sep 17 00:00:00 2001 From: Chris Lu Date: Sun, 8 Mar 2026 23:28:11 -0700 Subject: [PATCH] fix: clean up .rdb index files in Go volume operations Add .rdb (redb index) cleanup to removeVolumeFiles and vacuum commit in Go code, for compatibility with mixed Rust/Go volume server deployments. Route .rdb through dirIdx in FileName() like .idx/.ldb. --- weed/storage/volume.go | 2 +- weed/storage/volume_vacuum.go | 1 + weed/storage/volume_write.go | 2 ++ 3 files changed, 4 insertions(+), 1 deletion(-) diff --git a/weed/storage/volume.go b/weed/storage/volume.go index dd8ecbdce..be4f9c7ed 100644 --- a/weed/storage/volume.go +++ b/weed/storage/volume.go @@ -94,7 +94,7 @@ func (v *Volume) IndexFileName() (fileName string) { func (v *Volume) FileName(ext string) (fileName string) { switch ext { - case ".idx", ".cpx", ".ldb", ".cpldb": + case ".idx", ".cpx", ".ldb", ".cpldb", ".rdb": return VolumeFileName(v.dirIdx, v.Collection, int(v.Id)) + ext } // .dat, .cpd, .vif diff --git a/weed/storage/volume_vacuum.go b/weed/storage/volume_vacuum.go index 2c20ce634..5b618b437 100644 --- a/weed/storage/volume_vacuum.go +++ b/weed/storage/volume_vacuum.go @@ -199,6 +199,7 @@ func (v *Volume) CommitCompact() error { //time.Sleep(20 * time.Second) os.RemoveAll(v.FileName(".ldb")) + os.Remove(v.FileName(".rdb")) glog.V(3).Infof("Loading volume %d commit file...", v.Id) if e = v.load(true, false, v.needleMapKind, 0, v.Version()); e != nil { diff --git a/weed/storage/volume_write.go b/weed/storage/volume_write.go index 8cb00bc15..aa28bc913 100644 --- a/weed/storage/volume_write.go +++ b/weed/storage/volume_write.go @@ -99,6 +99,8 @@ func removeVolumeFiles(filename string) { os.Remove(filename + ".cpx") // level db index file os.RemoveAll(filename + ".ldb") + // redb index file (Rust volume server) + os.Remove(filename + ".rdb") // marker for damaged or incomplete volume os.Remove(filename + ".note") }