fix(rivetkit-core): always signal actor stop handle on teardown failure - #5593
Conversation
|
Stack for rivet-dev/actors
Get stack: change xyxnuuus |
|
🚅 Deployed to the actors-pr-5593 environment in rivet-frontend
|
7b51b04 to
9800e86
Compare
|
Review: fix(rivetkit-core): always signal actor stop handle on teardown failure Re-checked against the current diff (single commit 9800e86, unchanged since the last review) - the analysis below still applies. Small, well-scoped fix. Moving the join outcome out of an early Bug:
let final_result = shutdown_result.and(join_result);
This matters because of how Ok(()) => reply_rx
.await
.context("receive actor task stop reply")
.and_then(|result| result),If the actor task panics before it reaches the reply-send path, Because Suggested fix: when both results are let final_result = match (shutdown_result, join_result) {
(Err(e1), Err(e2)) => Err(e1.context(format!("{e2:#}"))),
(Err(e), Ok(())) | (Ok(()), Err(e)) => Err(e),
(Ok(()), Ok(())) => Ok(()),
};Test coverage No test was added. Other notes
|
No description provided.