From 8652c4cef780284d35f4522b5093ac17d4c21cb4 Mon Sep 17 00:00:00 2001 From: Liang Ding Date: Tue, 22 Nov 2022 10:38:13 +0800 Subject: [PATCH] =?UTF-8?q?:zap:=20=E6=94=B9=E8=BF=9B=E4=B9=A6=E7=AD=BE?= =?UTF-8?q?=E9=9D=A2=E6=9D=BF=E5=8A=A0=E8=BD=BD=E9=80=9F=E5=BA=A6=20https:?= =?UTF-8?q?//github.com/siyuan-note/siyuan/issues/6677?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- kernel/model/bookmark.go | 4 +++- kernel/sql/queue.go | 4 ++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/kernel/model/bookmark.go b/kernel/model/bookmark.go index 5dd1ac861..64db0b445 100644 --- a/kernel/model/bookmark.go +++ b/kernel/model/bookmark.go @@ -160,7 +160,9 @@ func BookmarkLabels() (ret []string) { func BuildBookmark() (ret *Bookmarks) { WaitForWritingFiles() - sql.WaitForWritingDatabase() + if !sql.IsEmptyQueue() { + sql.WaitForWritingDatabase() + } ret = &Bookmarks{} sqlBlocks := sql.QueryBookmarkBlocks() diff --git a/kernel/sql/queue.go b/kernel/sql/queue.go index afc88d467..02e796089 100644 --- a/kernel/sql/queue.go +++ b/kernel/sql/queue.go @@ -81,6 +81,10 @@ func isWritingDatabase() bool { return false } +func IsEmptyQueue() bool { + return 1 > len(operationQueue) && !util.IsMutexLocked(&txLock) +} + func flushTreeQueue() { ops := mergeUpsertTrees() if 1 > len(ops) {