Starting a Global Service

To start a GDS global service on eligible pool databases, perform gdsctl start service with role or lag options.

The gdsctl start service command is used to start an existing service on the Global Data Services pool databases.

GDSCTL>start service -service emp_report1 -gdspool hr

If the -role parameter is specified for the service, the service only starts on the databases in which the role matches the specified value. If the -lag parameter is specified for the service, the service only starts on the databases for which replication lag does not exceed the specified value. Unless -preferred_all is specified for the service, the service only starts on the databases that are listed as preferred for the service.

A global service is automatically enabled immediately after it has been created. The term enabled means that the service can be started on a database if the database is eligible for running the service, namely, when the following conditions are met:

  • The database is open and registered with a global service manager.
  • The service has not been disabled on that database.
  • The database role matches the role attribute of the service.
  • The replication lag on the database does not exceed the maximum value specified for the service.
  • The service has not reached its cardinality defined by the number of preferred databases.
  • No other database in the pool is a better candidate for starting the service, for example, the service can be started on an available database only if there is no eligible preferred database.

A newly created global service never gets started automatically until the start service command is executed by the user. This gives the pool administrator control over the initial service startup which may be important in the case when multiple services are being added to the pool and a certain sequence of service startups is required.

A service with the automatic management policy (the default option) must be initially started by executing the start service command without the -database option. This command not only starts the service on all eligible databases in the pool, but also enables the automatic service startup in the following cases:

  • After the service is automatically created on a database that is eligible to run it. (The two cases of automatic service creation are listed in the previous section.)
  • A database that was down gets restarted and is eligible for the service.
  • A database becomes eligible to run the service. This can happen, for example, because the replication lag on a database has decreased to an acceptable value, or the service cardinality has been increased by the user.

The start service command with -database option can be used to start a service with the automatic management policy on particular databases if the service was shut down there by the stop service command described in Stopping a Global Service.

A service with the manual policy must be started manually on each individual database, including when a database gets restarted or becomes eligible to run the service. When executed against a service with the manual policy, the start service command without the -database option starts the service on all eligible databases that are currently present in the pool. If used with the -database option, the command starts the service only on the specified databases, if they are eligible to run it.

Note:

The cases of automatic service startup listed in this section only describe what happens when the start service command is executed against a service with the automatic management policy. They do not include cases when a service is started automatically on a database because of a failover from another database. Service failover is not associated with the start service command, and its behavior is the same for services with automatic and manual management policy.

Related Topics

Parent topic: Managing Global Services