This commit is contained in:
Daniel 2024-05-12 23:04:00 +08:00
parent b959cc2beb
commit 60380f5dee
No known key found for this signature in database
GPG key ID: 86211BA83DF03017
4 changed files with 21 additions and 16 deletions

View file

@ -503,6 +503,10 @@ func genTreeID(tree *parse.Tree) {
func FullReindex() {
task.AppendTask(task.DatabaseIndexFull, fullReindex)
task.AppendTask(task.DatabaseIndexRef, IndexRefs)
go func() {
sql.WaitForWritingDatabase()
ResetVirtualBlockRefCache()
}()
task.AppendTaskWithTimeout(task.DatabaseIndexEmbedBlock, 30*time.Second, autoIndexEmbedBlock)
cache.ClearDocsIAL()
cache.ClearBlocksIAL()

View file

@ -106,23 +106,26 @@ func listSyFiles(dir string) (ret []string) {
func (box *Box) Unindex() {
task.AppendTask(task.DatabaseIndex, unindex, box.ID)
}
func unindex(boxID string) {
ids := treenode.RemoveBlockTreesByBoxID(boxID)
RemoveRecentDoc(ids)
sql.DeleteBoxQueue(boxID)
go func() {
sql.WaitForWritingDatabase()
ResetVirtualBlockRefCache()
}()
}
func unindex(boxID string) {
ids := treenode.RemoveBlockTreesByBoxID(boxID)
RemoveRecentDoc(ids)
sql.DeleteBoxQueue(boxID)
}
func (box *Box) Index() {
task.AppendTask(task.DatabaseIndexRef, removeBoxRefs, box.ID)
task.AppendTask(task.DatabaseIndex, index, box.ID)
task.AppendTask(task.DatabaseIndexRef, IndexRefs)
go func() {
sql.WaitForWritingDatabase()
ResetVirtualBlockRefCache()
}()
}
func removeBoxRefs(boxID string) {
@ -286,8 +289,6 @@ func IndexRefs() {
}
logging.LogInfof("resolved refs [%d] in [%dms]", size, time.Now().Sub(start).Milliseconds())
util.PushStatusBar(fmt.Sprintf(Conf.Language(55), i))
ResetVirtualBlockRefCache()
}
var indexEmbedBlockLock = sync.Mutex{}

View file

@ -51,6 +51,7 @@ import (
"github.com/siyuan-note/logging"
"github.com/siyuan-note/siyuan/kernel/conf"
"github.com/siyuan-note/siyuan/kernel/filesys"
"github.com/siyuan-note/siyuan/kernel/sql"
"github.com/siyuan-note/siyuan/kernel/task"
"github.com/siyuan-note/siyuan/kernel/treenode"
"github.com/siyuan-note/siyuan/kernel/util"
@ -649,6 +650,10 @@ func checkoutRepo(id string) {
task.AppendTask(task.DatabaseIndexFull, fullReindex)
task.AppendTask(task.DatabaseIndexRef, IndexRefs)
go func() {
sql.WaitForWritingDatabase()
ResetVirtualBlockRefCache()
}()
task.AppendTask(task.ReloadUI, util.ReloadUIResetScroll)
if syncEnabled {

View file

@ -106,8 +106,8 @@ func CacheVirtualBlockRefJob() {
task.AppendTask(task.CacheVirtualBlockRef, ResetVirtualBlockRefCache)
}
func cacheVirtualBlockRef() {
virtualBlockRefCache.Del("virtual_ref")
func ResetVirtualBlockRefCache() {
virtualBlockRefCache.Clear()
if !Conf.Editor.VirtualBlockRef {
return
}
@ -116,11 +116,6 @@ func cacheVirtualBlockRef() {
virtualBlockRefCache.Set("virtual_ref", keywords, 1)
}
func ResetVirtualBlockRefCache() {
virtualBlockRefCache.Clear()
cacheVirtualBlockRef()
}
func AddVirtualBlockRefInclude(keyword []string) {
if 1 > len(keyword) {
return