Skip to content
This repository has been archived by the owner on Nov 15, 2023. It is now read-only.

pvf: We don't add an execution request when retrying preparation #6535

Closed
mrcnski opened this issue Jan 10, 2023 · 1 comment · Fixed by #6537
Closed

pvf: We don't add an execution request when retrying preparation #6535

mrcnski opened this issue Jan 10, 2023 · 1 comment · Fixed by #6537
Assignees
Labels
I3-bug Fails to follow expected behavior.

Comments

@mrcnski
Copy link
Contributor

mrcnski commented Jan 10, 2023

ISSUE

Overview

On repeated execution requests where the preparation previously failed, we retry the preparation under certain conditions:

https://github.com/paritytech/polkadot/blob/30005e6b6e/node/core/pvf/src/host.rs#L527

However, I noticed that we don't do anything with result_tx in this case. I think we are missing a line:

// Add an execution request that will wait to run after this prepare job has finished.
awaiting_prepare.add(artifact_id, execution_timeout, params, result_tx);

I can't remember if there was a reason I left this out, but it seems like a mistake. cc @slumber

@mrcnski mrcnski self-assigned this Jan 10, 2023
@slumber
Copy link
Contributor

slumber commented Jan 10, 2023

Yes, the sender gets dropped. Please also extend a test to ensure that it doesn't happen (try_recv doesn't return Err(Canceled))

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
I3-bug Fails to follow expected behavior.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants