aboutsummaryrefslogtreecommitdiff
path: root/weed/filer/mongodb/mongodb_store.go
diff options
context:
space:
mode:
authortam-i13 <46927823+tam-i13@users.noreply.github.com>2025-11-26 06:35:19 +0300
committerGitHub <noreply@github.com>2025-11-25 19:35:19 -0800
commitb669607fcdb959c9a5c8ba7accd5b65e54cafbc6 (patch)
tree49ebe348b10e2f3ff2edcb5ecf17b04fbcf225e7 /weed/filer/mongodb/mongodb_store.go
parent76f1a23fec89fa59b61767d507bd82325ae4833f (diff)
downloadseaweedfs-b669607fcdb959c9a5c8ba7accd5b65e54cafbc6.tar.xz
seaweedfs-b669607fcdb959c9a5c8ba7accd5b65e54cafbc6.zip
Add error list each entry func (#7485)
* added error return in type ListEachEntryFunc * return error if errClose * fix fmt.Errorf * fix return errClose * use %w fmt.Errorf * added entry in messege error * add callbackErr in ListDirectoryEntries * fix error * add log * clear err when the scanner stops on io.EOF, so returning err doesn’t surface EOF as a failure. * more info in error * add ctx to logs, error handling * fix return eachEntryFunc * fix * fix log * fix return * fix foundationdb test s * fix eachEntryFunc * fix return resEachEntryFuncErr * Update weed/filer/filer.go Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Update weed/filer/elastic/v7/elastic_store.go Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Update weed/filer/hbase/hbase_store.go Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Update weed/filer/foundationdb/foundationdb_store.go Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Update weed/filer/ydb/ydb_store.go Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * fix * add scanErr --------- Co-authored-by: Roman Tamarov <r.tamarov@kryptonite.ru> Co-authored-by: Chris Lu <chrislusf@users.noreply.github.com> Co-authored-by: chrislu <chris.lu@gmail.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Diffstat (limited to 'weed/filer/mongodb/mongodb_store.go')
-rw-r--r--weed/filer/mongodb/mongodb_store.go14
1 files changed, 11 insertions, 3 deletions
diff --git a/weed/filer/mongodb/mongodb_store.go b/weed/filer/mongodb/mongodb_store.go
index 21463dc32..f87878f08 100644
--- a/weed/filer/mongodb/mongodb_store.go
+++ b/weed/filer/mongodb/mongodb_store.go
@@ -319,14 +319,22 @@ func (store *MongodbStore) ListDirectoryPrefixedEntries(ctx context.Context, dir
break
}
- if !eachEntryFunc(entry) {
+ resEachEntryFunc, resEachEntryFuncErr := eachEntryFunc(entry)
+ if resEachEntryFuncErr != nil {
+ err = fmt.Errorf("failed to process eachEntryFunc: %w", resEachEntryFuncErr)
break
}
+ if !resEachEntryFunc {
+ break
+ }
}
- if err := cur.Close(ctx); err != nil {
- glog.V(0).InfofCtx(ctx, "list iterator close: %v", err)
+ if errClose := cur.Close(ctx); errClose != nil {
+ glog.V(0).InfofCtx(ctx, "list iterator close: %v", errClose)
+ if err == nil {
+ return lastFileName, errClose
+ }
}
return lastFileName, err