diff --git a/kernel/model/attribute_view.go b/kernel/model/attribute_view.go index 8bdf7cc27..77acae96b 100644 --- a/kernel/model/attribute_view.go +++ b/kernel/model/attribute_view.go @@ -1345,7 +1345,12 @@ func (tx *Transaction) doRemoveAttrViewView(operation *Operation) (ret *TxErr) { if 0 > index { index = 0 } + attrView.ViewID = attrView.Views[index].ID + if err = av.SaveAttributeView(attrView); nil != err { + logging.LogErrorf("save attribute view [%s] failed: %s", avID, err) + return &TxErr{code: TxErrCodeWriteTree, msg: err.Error(), id: avID} + } mirrorBlocks := av.GetMirrorBlockIDs(avID) mirrorBlockTree := map[string]*parse.Tree{} @@ -1399,11 +1404,6 @@ func (tx *Transaction) doRemoveAttrViewView(operation *Operation) (ret *TxErr) { return } } - - if err = av.SaveAttributeView(attrView); nil != err { - logging.LogErrorf("save attribute view [%s] failed: %s", avID, err) - return &TxErr{code: TxErrCodeWriteTree, msg: err.Error(), id: avID} - } return }