Skip to content

Commit

Permalink
[workingset] remove action from actpool upon tx container unfold error (
Browse files Browse the repository at this point in the history
  • Loading branch information
dustinxie authored Jun 17, 2024
1 parent 6dd1424 commit c695110
Showing 1 changed file with 3 additions and 2 deletions.
5 changes: 3 additions & 2 deletions state/factory/workingset.go
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ var (
)

errInvalidSystemActionLayout = errors.New("system action layout is invalid")
errUnfoldTxContainer = errors.New("failed to unfold tx container")
)

func init() {
Expand Down Expand Up @@ -161,7 +162,7 @@ func (ws *workingSet) runAction(
if protocol.MustGetFeatureCtx(ctx).UseTxContainer {
if container, ok := selp.Action().(action.TxContainer); ok {
if err := container.Unfold(selp, ctx, ws.checkContract); err != nil {
return nil, errors.Wrapf(err, "Failed to unfold EVM tx inside the container")
return nil, errors.Wrap(errUnfoldTxContainer, err.Error())
}
}
}
Expand Down Expand Up @@ -593,7 +594,7 @@ func (ws *workingSet) pickAndRunActions(
// do nothing
case action.ErrChainID:
continue
case action.ErrGasLimit:
case action.ErrGasLimit, errUnfoldTxContainer:
actionIterator.PopAccount()
continue
default:
Expand Down

0 comments on commit c695110

Please sign in to comment.