mirror of
https://github.com/siyuan-note/siyuan.git
synced 2025-12-19 16:10:12 +01:00
🎨 改进内核任务调度机制提升稳定性 https://github.com/siyuan-note/siyuan/issues/7113
This commit is contained in:
parent
07ad00ec95
commit
a4d779258c
3 changed files with 24 additions and 7 deletions
|
|
@ -174,6 +174,11 @@ func checkBlockExist(c *gin.Context) {
|
|||
ret.Data = id
|
||||
return
|
||||
}
|
||||
if errors.Is(err, model.ErrIndexing) {
|
||||
ret.Code = 3
|
||||
ret.Data = id
|
||||
return
|
||||
}
|
||||
ret.Data = nil != b
|
||||
}
|
||||
|
||||
|
|
@ -377,6 +382,11 @@ func getBlockInfo(c *gin.Context) {
|
|||
ret.Data = id
|
||||
return
|
||||
}
|
||||
if errors.Is(err, model.ErrIndexing) {
|
||||
ret.Code = 3
|
||||
ret.Data = id
|
||||
return
|
||||
}
|
||||
if nil == block {
|
||||
ret.Code = -1
|
||||
ret.Msg = fmt.Sprintf(model.Conf.Language(15), id)
|
||||
|
|
@ -403,6 +413,11 @@ func getBlockInfo(c *gin.Context) {
|
|||
ret.Data = id
|
||||
return
|
||||
}
|
||||
if errors.Is(err, model.ErrIndexing) {
|
||||
ret.Code = 3
|
||||
ret.Data = id
|
||||
return
|
||||
}
|
||||
rootTitle := root.IAL["title"]
|
||||
rootTitle = html.UnescapeString(rootTitle)
|
||||
ret.Data = map[string]string{
|
||||
|
|
|
|||
|
|
@ -393,11 +393,10 @@ func getBlock(id string) (ret *Block, err error) {
|
|||
|
||||
tree, err := loadTreeByBlockID(id)
|
||||
if nil != err {
|
||||
waitForIndexing()
|
||||
tree, err = loadTreeByBlockID(id)
|
||||
if nil != err {
|
||||
return
|
||||
if indexing {
|
||||
err = ErrIndexing
|
||||
}
|
||||
return
|
||||
}
|
||||
|
||||
node := treenode.GetNodeInTree(tree, id)
|
||||
|
|
|
|||
|
|
@ -138,9 +138,12 @@ func loadTree(localPath string, luteEngine *lute.Lute) (ret *parse.Tree, err err
|
|||
return
|
||||
}
|
||||
|
||||
var ErrBoxNotFound = errors.New("notebook not found")
|
||||
var ErrBlockNotFound = errors.New("block not found")
|
||||
var ErrTreeNotFound = errors.New("tree not found")
|
||||
var (
|
||||
ErrBoxNotFound = errors.New("notebook not found")
|
||||
ErrBlockNotFound = errors.New("block not found")
|
||||
ErrTreeNotFound = errors.New("tree not found")
|
||||
ErrIndexing = errors.New("indexing")
|
||||
)
|
||||
|
||||
func loadTreeByBlockID(id string) (ret *parse.Tree, err error) {
|
||||
if "" == id {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue