From d87e1de8ceb19df819b7acaa89bdfa6418a2d4e7 Mon Sep 17 00:00:00 2001 From: Liang Ding Date: Fri, 15 Jul 2022 22:48:32 +0800 Subject: [PATCH 1/2] =?UTF-8?q?:bug:=20=E5=90=8C=E6=AD=A5=E5=90=8E?= =?UTF-8?q?=E9=9C=80=E8=A6=81=E9=87=8D=E5=BB=BA=E7=B4=A2=E5=BC=95=E7=9A=84?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- kernel/model/sync.go | 39 +++++++++++++++++++++------------------ 1 file changed, 21 insertions(+), 18 deletions(-) diff --git a/kernel/model/sync.go b/kernel/model/sync.go index bdf0d48b6..3327a7552 100644 --- a/kernel/model/sync.go +++ b/kernel/model/sync.go @@ -122,8 +122,28 @@ func SyncData(boot, exit, byHand bool) { // incReindex 增量重建索引。 func incReindex(upserts, removes []string) { - needPushUpsertProgress := 32 < len(upserts) needPushRemoveProgress := 32 < len(removes) + needPushUpsertProgress := 32 < len(upserts) + + // 先执行 remove,否则移动文档时 upsert 会被忽略,导致未被索引 + + for _, removeFile := range removes { + if !strings.HasSuffix(removeFile, ".sy") { + continue + } + + id := strings.TrimSuffix(filepath.Base(removeFile), ".sy") + block := treenode.GetBlockTree(id) + if nil != block { + treenode.RemoveBlockTreesByRootID(block.RootID) + sql.RemoveTreeQueue(block.BoxID, block.RootID) + msg := fmt.Sprintf("Sync remove tree [%s]", block.RootID) + util.PushStatusBar(msg) + if needPushRemoveProgress { + util.PushEndlessProgress(msg) + } + } + } for _, upsertFile := range upserts { if !strings.HasSuffix(upsertFile, ".sy") { @@ -154,23 +174,6 @@ func incReindex(upserts, removes []string) { util.PushEndlessProgress(msg) } } - for _, removeFile := range removes { - if !strings.HasSuffix(removeFile, ".sy") { - continue - } - - id := strings.TrimSuffix(filepath.Base(removeFile), ".sy") - block := treenode.GetBlockTree(id) - if nil != block { - treenode.RemoveBlockTreesByRootID(block.RootID) - sql.RemoveTreeQueue(block.BoxID, block.RootID) - msg := fmt.Sprintf("Sync remove tree [%s]", block.RootID) - util.PushStatusBar(msg) - if needPushRemoveProgress { - util.PushEndlessProgress(msg) - } - } - } if needPushRemoveProgress || needPushUpsertProgress { util.PushClearProgress() From ea8e18fcc9d70c56ce89ac9f0345b178b30c3dca Mon Sep 17 00:00:00 2001 From: Liang Ding Date: Fri, 15 Jul 2022 23:47:38 +0800 Subject: [PATCH 2/2] =?UTF-8?q?:art:=20=E7=B3=BB=E7=BB=9F=E5=85=AC?= =?UTF-8?q?=E5=91=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- kernel/model/liandi.go | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/kernel/model/liandi.go b/kernel/model/liandi.go index ccc6f3740..320b46937 100644 --- a/kernel/model/liandi.go +++ b/kernel/model/liandi.go @@ -178,7 +178,7 @@ func AutoRefreshUser() { defer util.Recover() if nil != Conf.User { - time.Sleep(3 * time.Minute) + time.Sleep(2 * time.Minute) if nil != Conf.User { RefreshUser(Conf.User.UserToken) } @@ -200,6 +200,7 @@ func AutoRefreshUser() { } if err = gulu.JSON.UnmarshalJSON(data, &existingAnnouncements); nil != err { util.LogErrorf("unmarshal announcement conf failed: %s", err) + os.Remove(announcementConf) return } }