[SERVER-9013] Graceful Server Shutdown (no new connections, wait for existing ops to complete) Created: 18/Mar/13  Updated: 25/Mar/21  Resolved: 26/May/20

Status: Closed
Project: Core Server
Component/s: Admin
Affects Version/s: None
Fix Version/s: 4.7.0

Type: New Feature Priority: Major - P3
Reporter: Scott D'Aquila Assignee: Tess Avitabile (Inactive)
Resolution: Done Votes: 2
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Documented
Duplicate
is duplicated by SERVER-4274 mongos: support a graceful shutdown Closed
Related
Backwards Compatibility: Fully Compatible
Sprint: Repl 2020-06-01
Participants:
Case:

 Description   

mongod secondaries and mongos now enter a quiesce mode prior to shutdown, to allow short-running operations to finish. During this time, new and existing operations are allowed to run, but isMaster requests return a ShutdownInProgress error, to indicate that clients should start routing operations to other nodes. On mongod, quiesce mode happens after the stepdown attempt, and only if the node is now in state SECONDARY. The combined time for stepdown and quiesce mode is specified by the timeoutSecs parameter to the shutdown command (for command-based shutdown) or the shutdownTimeoutMillisForSignaledShutdown/mongosShutdownTimeoutMillisForSignaledShutdown server parameter (for signaled shutdown). This work is fully implemented following SERVER-46952 and SERVER-46958.

Original description:
It would be nice to have a feature that would allow open connections to complete existing operations to complete while disallowing new ones to begin, perhaps with a configurable timeout for the existing clients. This is a common feature in relational databases, like Oracle's shutdown "normal" / "immediate" / "abort".

http://docs.oracle.com/cd/B28359_01/server.111/b28310/start003.htm has some details on this particular comparison.


Generated at Thu Feb 08 03:19:04 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.