Handle the loss of a parent connection

When the parent server for a copy node becomes unavailable, the copy node's database remains available. The copy node continues to try to connect to its parent for a period defined by the max_retry_connect_time mirror option (by default, 120 seconds). If a connection cannot be established in the specified time, the copy attempts to connect to its alternate parent (defined using the OR SERVER clause of the CREATE MIRROR SERVER STATEMENT) if one was defined. If an alternate parent was defined, the copy attempts to connect to it for an additional max_retry_connect_time seconds. If a connection cannot be made, the copy tries to connect to the root database server and requests that its former parent be replaced with the copy node itself, assigning any of the copy node's siblings as its children. This behavior can result in a situation where the copy node has more children than specified by the auto_add_fan_out setting.

If the copy server is unable to establish a connection to the root database server within max_disconnected_time seconds (default unlimited) after the parent connection was lost, the database is shut down.

During the time the copy server is trying to connect to another database server, it continues to try to connect to its original parent. If that connection attempt is successful, obtaining log pages from the original parent database server is resumed.

When a read-only node is first started, it makes its database available for read-only connections even if other nodes in the tree, including its parent, are not available.

 Determining the state of a server in a scale-out system
 See also