fix(search): duplicate folder on autoupdate (#6063 close #6062)

* fix(search): the problem of not returning in time when index does not support auto update.

* fix(search): the problem of duplicate indexing of folders.
pull/5826/head
不插电 2024-02-20 19:12:07 +08:00 committed by GitHub
parent 47f4b05517
commit 53926d5cd0
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 10 additions and 8 deletions

View File

@ -211,14 +211,15 @@ func Update(parent string, objs []model.Obj) {
}
for i := range objs {
if toAdd.Contains(objs[i].GetName()) {
log.Debugf("add index: %s", path.Join(parent, objs[i].GetName()))
err = Index(ctx, parent, objs[i])
if err != nil {
log.Errorf("update search index error while index new node: %+v", err)
return
}
// build index if it's a folder
if objs[i].IsDir() {
if !objs[i].IsDir() {
log.Debugf("add index: %s", path.Join(parent, objs[i].GetName()))
err = Index(ctx, parent, objs[i])
if err != nil {
log.Errorf("update search index error while index new node: %+v", err)
return
}
} else {
// build index if it's a folder
dir := path.Join(parent, objs[i].GetName())
err = BuildIndex(ctx,
[]string{dir},

View File

@ -51,6 +51,7 @@ func UpdateIndex(c *gin.Context) {
}
if !search.Config(c).AutoUpdate {
common.ErrorStrResp(c, "update is not supported for current index", 400)
return
}
go func() {
ctx := context.Background()