Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

watchPromise during buildRootObject causes start failure #9732

Closed
mhofman opened this issue Jul 18, 2024 · 0 comments · Fixed by #9730
Closed

watchPromise during buildRootObject causes start failure #9732

mhofman opened this issue Jul 18, 2024 · 0 comments · Fixed by #9730
Assignees
Labels
bug Something isn't working liveslots requires vat-upgrade to deploy changes SwingSet package: SwingSet

Comments

@mhofman
Copy link
Member

mhofman commented Jul 18, 2024

Describe the bug

Calling watchPromise during buildRootObject causes start vat to fail if the promise is not observed as settled by the time buildRootObject completes. loadWatchedPromiseTable attempts to revive / register all promises in the table, even if the table entry was just created.

This kind of scenario would happen when an orchestrated or async flow replays on restart, or more specifically, when we attempt the shortening of any vow on start.

Upgrade considerations

Any vat that may be doing a watchPromise during start won't be upgradable until liveslots is upgraded with a fix, which requires a chain software upgrade.

@mhofman mhofman added bug Something isn't working SwingSet package: SwingSet liveslots requires vat-upgrade to deploy changes labels Jul 18, 2024
@mhofman mhofman self-assigned this Jul 18, 2024
@mergify mergify bot closed this as completed in #9730 Jul 23, 2024
@mergify mergify bot closed this as completed in c7eca9b Jul 23, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working liveslots requires vat-upgrade to deploy changes SwingSet package: SwingSet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant