-
Notifications
You must be signed in to change notification settings - Fork 82
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
Handle async pipeline creation errors more gracefully #3158
base: main
Are you sure you want to change the base?
Conversation
Hey @toji - is this PR ready for review? It's marked draft, but has 3 reviewers assigned. |
@ben-clayton I'm seeing no reviews requested, just 3 suggestions made by GitHub. |
Right you are. Completely unable to parse the GitHub UI |
I think it's worthwhile to land this. Kai, could you PTAL? |
} else { | ||
throw err; | ||
} | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nothing fundamentally wrong with this change, but it is supposed to be totally fine to throw an exception from a test function (which awaiting a promise that rejects will do). I also don't want to cargo-cult this every place we use create*PipelineAsync if it's not necessary.
// build the shader module | ||
const module = t.device.createShaderModule({ code: source }); | ||
|
||
// build the pipeline | ||
return t.device.createComputePipeline({ | ||
return t.device.createComputePipelineAsync({ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is just an unrelated extra switch to async, right?
Any progress on this? |
These tests used to be producing validation errors which could be caught by the normal test harness, but after my changes in #3125 they're rejecting and throwing uncaught exceptions instead. This adds some try-catches around them and does an explicit
t.fail()
if aGPUPipelineError
is thrown.Not landing just yet, because I haven't been able to repro original issue yet so this is just speculative. Should be easier to test early next week according to conversation in the linked issue.
Issue: #3157
Requirements for PR author:
.unimplemented()
./** documented */
and new helper files are found inhelper_index.txt
.Requirements for reviewer sign-off:
When landing this PR, be sure to make any necessary issue status updates.