This article answers a common query on whether Scalearc queues incoming connections when the database servers are unavailable such as during database maintenance windows.
By default, ScaleArc automatically queues incoming client connections/queries when there is no server available to route the queries to. ScaleArc queues any client connections that cannot be serviced at a given moment to the Surge Queue, and flushes the queue as server connections to service the requests become available.
ScaleArc will keep the connections/queries queued until the connection has exceeded the configured maximum time in the queue which is set by navigating to CLUSTERS > Cluster Settings > Server tab > Surge Queue Timeout (default value is 60 seconds).
Use the Surge Queue Timeout setting to specify the timeout value for client connection(s) awaiting an available server connection. If ScaleArc is not able to assign the server connection before the specified amount of timeout value, then ScaleArc will return a "Connection timeout in Server Queue" error message.
Some important considerations on the recommended client and server cluster traffic settings:
- Idle Client Connection Time should be larger than the Surge Queue Timeout in the Server settings.
- The Maximum Client Connections allowed for the cluster. The depth of the surge queue is also limited to this number.