🎨 Improve rollback doc file history https://github.com/siyuan-note/siyuan/issues/11575
This commit is contained in:
parent
8ba87a340f
commit
69d0f20501
2 changed files with 12 additions and 2 deletions
|
@ -271,6 +271,11 @@ func RollbackDocHistory(boxID, historyPath string) (err error) {
|
|||
|
||||
FullReindex()
|
||||
IncSync()
|
||||
go func() {
|
||||
sql.WaitForWritingDatabase()
|
||||
// 刷新关联的动态锚文本 https://github.com/siyuan-note/siyuan/issues/11575
|
||||
refreshDynamicRefText(tree.Root, tree)
|
||||
}()
|
||||
return nil
|
||||
}
|
||||
|
||||
|
|
|
@ -36,6 +36,7 @@ var (
|
|||
operationQueue []*dbQueueOperation
|
||||
dbQueueLock = sync.Mutex{}
|
||||
txLock = sync.Mutex{}
|
||||
isWriting = false
|
||||
)
|
||||
|
||||
type dbQueueOperation struct {
|
||||
|
@ -77,7 +78,7 @@ func isWritingDatabase() bool {
|
|||
time.Sleep(util.SQLFlushInterval + 50*time.Millisecond)
|
||||
dbQueueLock.Lock()
|
||||
defer dbQueueLock.Unlock()
|
||||
if 0 < len(operationQueue) {
|
||||
if 0 < len(operationQueue) || isWriting {
|
||||
return true
|
||||
}
|
||||
return false
|
||||
|
@ -103,7 +104,11 @@ func FlushQueue() {
|
|||
}
|
||||
|
||||
txLock.Lock()
|
||||
defer txLock.Unlock()
|
||||
isWriting = true
|
||||
defer func() {
|
||||
isWriting = false
|
||||
txLock.Unlock()
|
||||
}()
|
||||
|
||||
start := time.Now()
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue