Skip to content

core: Restart store on revert errors to clear poisoned writer#6422

Open
incrypto32 wants to merge 1 commit intomasterfrom
krishna/fix-runner-revert-store-restart
Open

core: Restart store on revert errors to clear poisoned writer#6422
incrypto32 wants to merge 1 commit intomasterfrom
krishna/fix-runner-revert-store-restart

Conversation

@incrypto32
Copy link
Member

#6298 mapped Action::Restart from handle_revert to RestartReason::DataSourceExpired, which skips store.restart(). This meant a poisoned writer from a revert error would never be cleared, causing the subgraph to loop indefinitely until process restart.

  • Use RestartReason::StoreError for revert errors so store.restart() is always called (it's a no-op when not poisoned)
  • Remove the unused DataSourceExpired variant from RestartReason

The runner FSM refactor mapped Action::Restart from handle_revert to
RestartReason::DataSourceExpired, skipping store.restart(). Fix by using
RestartReason::StoreError for revert errors and remove the unused
DataSourceExpired variant.
/// New dynamic data source was created that requires filter updates.
DynamicDataSourceCreated,
/// A data source reached its end block.
DataSourceExpired,
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I assume this is unused since we already have to handle the end block of data sources by just ignoring any matching triggers.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants