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

9449 chainHub durability #9665

Merged
merged 4 commits into from
Jul 9, 2024
Merged

9449 chainHub durability #9665

merged 4 commits into from
Jul 9, 2024

Conversation

turadg
Copy link
Member

@turadg turadg commented Jul 8, 2024

refs: #9449

Description

This makes ChainHub return durable vows. The underlying lookup functions are not durable but they made so by the retriable helper.

So this also introduces a stub version of #9541 pulled from @dtribble 's #9657

Security Considerations

none

Scaling Considerations

none

Documentation Considerations

none

Testing Considerations

CI

Upgrade Considerations

not yet upgradable. Communicated by

* TODO FIXME make this real
* Create a function that retries the given function if the underlying

Copy link

cloudflare-workers-and-pages bot commented Jul 8, 2024

Deploying agoric-sdk with  Cloudflare Pages  Cloudflare Pages

Latest commit: ec65bfa
Status: ✅  Deploy successful!
Preview URL: https://39b9a070.agoric-sdk.pages.dev
Branch Preview URL: https://9449-chainhub-durability.agoric-sdk.pages.dev

View logs

packages/orchestration/src/exos/chain-hub.js Outdated Show resolved Hide resolved
packages/orchestration/src/exos/chain-hub.js Outdated Show resolved Hide resolved
Comment on lines 53 to 55
// TODO this needs to be an anonymous durable zone for the watched function
// Ideally, it should be a lazy one that only allocates the subzone if it gets used
const fnSubzone = makeHeapZone(`${name} hack subzone`);
Copy link
Member

Choose a reason for hiding this comment

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

Let's remove this for now. I am not convinced we need this in the final version

* @returns {(...args: unknown[]) => Vow<T>}
*/
const retriable =
(fnZone, name, fn) =>
Copy link
Member

Choose a reason for hiding this comment

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

Wondering if we should put a dummy fnZone.prepareExo here to force the user to call retriable top level, even though that would only let us detect issues during upgrades.

@turadg turadg marked this pull request as ready for review July 8, 2024 21:12
@turadg turadg requested a review from mhofman July 8, 2024 23:16
packages/orchestration/src/exos/chain-hub.js Outdated Show resolved Hide resolved
packages/orchestration/src/exos/chain-hub.js Outdated Show resolved Hide resolved
@turadg turadg requested a review from mhofman July 9, 2024 19:24
@turadg turadg added the automerge:rebase Automatically rebase updates, then merge label Jul 9, 2024
@mergify mergify bot merged commit 023e19f into master Jul 9, 2024
78 checks passed
@mergify mergify bot deleted the 9449-chainHub-durability branch July 9, 2024 20:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
automerge:rebase Automatically rebase updates, then merge
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants