Skip to content

Disjoint request finalizer timeout from the RPC

Sami Hiltunen requested to merge smh-run-request-finalizers-on-timeout into master

Request finalizer currently uses the same context as the RPC. If the RPC times out, the request finalizer's context is also canceled. This prevents the request finalizer from updating the database state when an RPC has timed out. The RPC could have performed some disk modifications even if it timed out so we have to update the database state. This MR gives the request finalizer a 30 second timeout independent of the RPC that triggered the finalizer. This should be long enough to run the database operations. The database state could still be left unupdated due to various reasons like Praefect crashing or reaching it's graceful shutdown limit.

Closes: #3624 (closed)

Edited by Sami Hiltunen

Merge request reports