🎨 调整数据库缓存

This commit is contained in:
Liang Ding 2023-02-09 17:18:29 +08:00
parent 6a5617dcc1
commit 19f44148d4
No known key found for this signature in database
GPG key ID: 136F30F901A2231D
13 changed files with 17 additions and 22 deletions

8
kernel/cache/ial.go vendored
View file

@ -24,8 +24,8 @@ import (
)
var docIALCache, _ = ristretto.NewCache(&ristretto.Config{
NumCounters: 200000,
MaxCost: 1000 * 1000 * 32,
NumCounters: 10240,
MaxCost: 1024,
BufferItems: 64,
})
@ -55,8 +55,8 @@ func ClearDocsIAL() {
}
var blockIALCache, _ = ristretto.NewCache(&ristretto.Config{
NumCounters: 800000,
MaxCost: 1000 * 1000 * 64,
NumCounters: 10240,
MaxCost: 1024,
BufferItems: 64,
})

View file

@ -506,7 +506,6 @@ func ReloadUI() {
func FullReindex() {
task.AppendTask(task.DatabaseIndexFull, fullReindex)
task.AppendTask(task.DatabaseCache, sql.EnableCache)
task.AppendTask(task.DatabaseIndexRef, IndexRefs)
task.AppendTask(task.ReloadUI, util.ReloadUI)
}
@ -521,7 +520,6 @@ func fullReindex() {
}
treenode.InitBlockTree(true)
sql.DisableCache()
openedBoxes := Conf.GetOpenedBoxes()
for _, openedBox := range openedBoxes {
index(openedBox.ID)

View file

@ -242,6 +242,7 @@ func RollbackDocHistory(boxID, historyPath string) (err error) {
return
}
util.ReloadUI()
FullReindex()
IncSync()
return nil
@ -297,9 +298,9 @@ func RollbackNotebookHistory(historyPath string) (err error) {
return
}
util.ReloadUI()
FullReindex()
IncSync()
ReloadUI()
return nil
}

View file

@ -131,9 +131,6 @@ func index(boxID string) {
}
func IndexRefs() {
sql.EnableCache()
defer sql.ClearBlockCache()
start := time.Now()
util.SetBootDetails("Resolving refs...")
util.PushStatusBar(Conf.Language(54))

View file

@ -29,17 +29,17 @@ import (
)
var memCache, _ = ristretto.NewCache(&ristretto.Config{
NumCounters: 800000,
MaxCost: 1000 * 1000 * 100,
NumCounters: 10240,
MaxCost: 1024,
BufferItems: 64,
})
var disabled = true
func EnableCache() {
func enableCache() {
disabled = false
}
func DisableCache() {
func disableCache() {
disabled = true
}

View file

@ -68,8 +68,8 @@ func InitDatabase(forceRebuild bool) (err error) {
defer initDatabaseLock.Unlock()
ClearBlockCache()
DisableCache()
defer EnableCache()
disableCache()
defer enableCache()
util.IncBootProgress(2, "Initializing database...")

View file

@ -105,6 +105,11 @@ func FlushQueue() {
context := map[string]interface{}{eventbus.CtxPushMsg: eventbus.CtxPushMsgToStatusBar}
total := len(ops)
if 512 < total {
disableCache()
defer enableCache()
}
for i, op := range ops {
if util.IsExiting {
return

View file

@ -86,7 +86,6 @@ const (
DatabaseIndexCommit = "task.database.index.commit" // 数据库索引提交
DatabaseIndexRef = "task.database.index.ref" // 数据库索引引用
DatabaseIndexFix = "task.database.index.fix" // 数据库索引订正
DatabaseCache = "task.database.cache" // 数据库缓存
OCRImage = "task.ocr.image" // 图片 OCR 提取文本
HistoryGenerateDoc = "task.history.generateDoc" // 生成文件历史
DatabaseIndexEmbedBlock = "task.database.index.embedBlock" // 数据库索引嵌入块