mirror of
https://github.com/siyuan-note/siyuan.git
synced 2026-01-06 11:50:04 -06:00
🎨 Auto rebuild history database index when indexing failed https://github.com/siyuan-note/siyuan/issues/8543
This commit is contained in:
@@ -33,6 +33,7 @@ import (
|
||||
"github.com/88250/lute/ast"
|
||||
"github.com/88250/lute/parse"
|
||||
"github.com/88250/lute/render"
|
||||
"github.com/siyuan-note/eventbus"
|
||||
"github.com/siyuan-note/filelock"
|
||||
"github.com/siyuan-note/logging"
|
||||
"github.com/siyuan-note/siyuan/kernel/conf"
|
||||
@@ -691,3 +692,13 @@ func fromSQLHistories(sqlHistories []*sql.History) (ret []*HistoryItem) {
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
func init() {
|
||||
subscribeSQLHistoryEvents()
|
||||
}
|
||||
|
||||
func subscribeSQLHistoryEvents() {
|
||||
eventbus.Subscribe(util.EvtSQLHistoryRebuild, func() {
|
||||
ReindexHistory()
|
||||
})
|
||||
}
|
||||
|
||||
@@ -83,7 +83,7 @@ func FlushHistoryQueue() {
|
||||
if err = execHistoryOp(op, tx, context); nil != err {
|
||||
tx.Rollback()
|
||||
logging.LogErrorf("queue operation failed: %s", err)
|
||||
util.PushMsg("History database index failed, please try to manually rebuild it in [Data history - File history]", 5000)
|
||||
eventbus.Publish(util.EvtSQLHistoryRebuild)
|
||||
return
|
||||
}
|
||||
|
||||
|
||||
@@ -404,4 +404,6 @@ func existAvailabilityStatus(workspaceAbsPath string) bool {
|
||||
|
||||
const (
|
||||
EvtConfPandocInitialized = "conf.pandoc.initialized"
|
||||
|
||||
EvtSQLHistoryRebuild = "sql.history.rebuild"
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user