Function pgdo::cluster::resource::startup

source ·
pub fn startup<'res>(
    resource: ResourceFree<'res>,
    options: Options<'_>
) -> Result<(State, StartupResource<'res>), Error>
Expand description

Creates the cluster, if it doesn’t already exist, and starts it in a cooperative manner.

The return value has two parts: the state, State, and the resource, StartupResource.

The state is State::Unmodified if the cluster was already running, else State::Modified if the cluster was created or started by this function.

The resource is [Left(ResourceShared)] if the cluster is already in use, or [Right(ResourceExclusive)] otherwise. Typically one would drop the exclusive hold down to shared as soon as possible, but the option is there to do maintenance, for example, that requires an exclusive hold.