Galaxy driver initialize often exceeds the 5 s initialize timeout against a real gateway (25% of restarts on VD03) #875
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Found by #761 gate F (2026-11-11, docker-dev on master
5ac55205against the VD03 DEV mxaccessgw2b13564e).GalaxyDriverinitialize against VD03 takes 4–5 s (session open plus the per-template platform seed) against the 5 s default driver-initialize timeout. 10 of 40 restarts failed with "initialize failed … 00:00:05". Each failure cost a 10 s retry and showed on the gateway as a killed worker plus anOpenSessionFailed/WorkerFaultedfault. The gateway cleaned up every one (no session leak, gate F PASS), so the cost is restart latency and gateway fault noise.Fix: a per-driver initialize budget for Galaxy (default around 30 s), or have the timeout cover only the session open and finish seeding in the background. Find where the 5 s comes from (driver host initialize timeout) and make it overridable per driver type. Check it against the comms-loss watchdog and the deploy apply deadline.
Fixed, pushed to master (
95bde828, merged as$(git rev-parse --short HEAD)).The 5 s came from the Tier A
Initializepolicy inDriverResilienceOptions, not from the actor; the actor's own pessimistic bound is 30 s. A driver type can now register capability defaults with its factory:DriverFactoryRegistry.Register(..., capabilityDefaults:), read back byGetCapabilityDefaults. They layer over the tier table and under the per-instanceResilienceConfig, and the Host wires them intoDriverCapabilityInvokerFactory.Galaxy registers
Initialize= 20 s, with no retry and breaker threshold 2, which stays under the actor's 30 s bound. A per-instance ResilienceConfig still overrides it.Tests:
DriverTypeCapabilityDefaultsTests(layering order, registry and invoker), plus a Galaxy registration test. The full local suite is green (21 projects). Documented in docs/DriverLifecycle.md.Correction: the merge commit is
f109e5f2.