Handle CTRL-C gracefully (client side) #20

Open
opened 2024-08-06 01:27:03 +02:00 by oysteikt · 4 comments
Owner

We are currently not doing any signal handling, and it's unclear what happens with a database operation if a user were to interrupt it. We should explicitly handle SIGINT and ensure any database operations are shut down gracefully.

We are currently not doing any signal handling, and it's unclear what happens with a database operation if a user were to interrupt it. We should explicitly handle SIGINT and ensure any database operations are shut down gracefully.
oysteikt added the feature request label 2024-08-06 01:27:03 +02:00
Author
Owner

We might need to wrap the mysql connection in an Arc<Mutex<_>> for the signal checking thread to close it safely. Not sure how to handle this when the entire operation is wrapped in a transaction meant for #90

<s>We might need to wrap the mysql connection in an `Arc<Mutex<_>>` for the signal checking thread to close it safely. Not sure how to handle this when the entire operation is wrapped in a transaction</s> meant for #90
Author
Owner

The daemon should probably handle graceful termination in the first place, there just needs to be an option for the user to send a request for graceful termination of their connection async to the actual request.

The daemon should probably handle graceful termination in the first place, there just needs to be an option for the user to send a request for graceful termination of their connection async to the actual request.
oysteikt changed title from Handle CTRL-C gracefully to Handle CTRL-C gracefully (client side) 2025-11-25 20:17:34 +01:00
Author
Owner

Note that this is different than #90

Note that this is different than #90
Author
Owner

Server supports graceful termination all the way now, but not the client. If we implement #21, then terminating a client interaction should trigger a rollback on the server side.

Server supports graceful termination all the way now, but not the client. If we implement #21, then terminating a client interaction should trigger a rollback on the server side.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Projects/muscl#20