Skip to content

Pccs - sync cache get should do network fetch#63

Open
ameba23 wants to merge 3 commits into
peg/bump-dcapqvlfrom
peg/pccs-sync-fetch
Open

Pccs - sync cache get should do network fetch#63
ameba23 wants to merge 3 commits into
peg/bump-dcapqvlfrom
peg/pccs-sync-fetch

Conversation

@ameba23

@ameba23 ameba23 commented Jun 25, 2026

Copy link
Copy Markdown
Collaborator

Currently the PCCS implementation will avoid doing a network fetch during the sync cache getter. This is because it is called from the rustls certificate verifier trait method which is synchronous, and so should not block over a network call when run in an async runtime.

In practice this is quite an issue for usability - see #58

This PR is one possible solution to this problem. There is another solution i am also considering, and both have tradeoffs. Ideally both solutions should be reviewed together so we can choose the best.

We take advantage of the latest dcap-qvl CollateralClient api which lets us pass in a custom http client. This allows us to use ureq (a synchronous http client) for collateral fetches whilst still using dcap-qvl's collateral fetching code (which by default uses reqwest).

Here, we fetch collateral if it is not available in the cache, rather than bailing and starting a spawned task to fetch in the background.

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.

1 participant