About the High Level State of TimesTen Pods

The TimesTen Operator keeps track of the individual health and state of each TimesTen Pod. How often the Operator checks the health is defined by the value of the pollingInterval. For information on pollingInterval, see TimesTenClassicSpecSpec

The TimesTen Operator maintains similar states for replicated and non-replicated objects. However, the values for the states may differ. The following table indicates if the state is supported for replicated or non-replicated objects or both:

State Replicated Objects Non-Replicated Objects

CatchingUp

Y

N

Down

Y

Y

Healthy

Y

N

HealthyActive

Y

N

HealthyStandby

Y

N

Initializing

Y

Y

ManualInterventionRequired

N

Y

Normal

Y

Y

OtherDown

Y

N

Reexamine

N

Y

Terminal

Y

Y

Unknown

Y

Y

UpgradeFailed

Y

N

CatchingUp

The standby has completed the process of duplicating the database from the active. The newly created standby is catching up to any transactions that ran on the active while the duplicate operation was running.

Down

Either the Pod or the TimesTen components within the Pod (or both) are not functioning properly.

Healthy

The Pod and the TimesTen components within the Pod are in a healthy state, given this Pod's role in the active standby pair.

HealthyActive

When a TimesTenClassic object is in the Reexamine state, the TimesTen Operator examines the state of both TimesTen instances. The TimesTen Operator does not know which instance (if any) contains a properly configured active database (or a properly configured standby database). The Operator must examine both instances to see. If a healthy instance is found and that instance contains a properly configured active database, the state of the Pod is reported as HealthyActive.

HealthyStandby

When a TimesTenClassic object is in the Reexamine state, the TimesTen Operator examines the state of both TimesTen instances. The TimesTen Operator does not know which instance (if any) contains a properly configured standby database (or a properly configured active database). The Operator must examine both instances to see. If a healthy instance is found and that instance contains a properly configured standby database, the state of the Pod is reported as HealthyStandby.

Initializing

When a new Pod and PVC are started by Kubernetes as part of a TimesTenClassic object's StatefulSet, the TimesTen Operator instructs the TimesTen Agent to perform the following actions in the tt container of the Pod:
  • Create a TimesTen installation.

  • Create a TimesTen instance. This instance uses the installation that was created.

  • Create TimesTen configuration files in the instance.

  • Start the TimesTen instance.

  • Create a TimesTen database.

  • If applicable, create database users.

  • If applicable, create database schemas, tables, views, procedures and other database objects.

While the previous operations are running, the state of the TimesTen Pod is Initializing. If these operations complete successfully, the TimesTen Operator changes the TimesTen Pod state to Normal. If any of the operations fail, the TimesTen Operator changes the state to Terminal.

ManualInterventionRequired

For non-replicated objects, when a TimesTen Pod enters the ManualInterventionRequired state, the TimesTen Operator does not know the state of TimesTen or the TimesTen databases. The TimesTen Operator takes no further action. Examine the TimesTen Pods and the TimesTenClassic object. When you have corrected the problem, you can instruct the TimesTen Operator to move the object and TimesTen Pods to the Reexamine state.

Normal

When a new Pod and PVC are started by Kubernetes as part of a TimesTenClassic object's StatefulSet, the TimesTen Operator instructs the TimesTen Agent to perform various actions in the tt container of the Pod. While these actions are being performed, the state is Initializing. If the operations complete successfully, the TimesTen Operator changes the TimesTen Pod state to Normal.

OtherDown

The Pod and the TimesTen components within the Pod are in a healthy state, but TimesTen in this Pod believes that TimesTen in the other Pod has failed. In particular, the OtherDown state indicates that this Pod contains an active database, and the database's peer has reached the failThreshold. The database in this Pod is no longer keeping transaction logs for its peer, as the peer is too far behind. Recovering the peer requires re-duplicating the active database, which the TimesTen Operator performs automatically.

Reexamine

For non-replicated objects, when a TimesTen object is in the ManualInterventionRequired state, you can specify the .spec.ttspec.reexamine datum to cause the TimesTen Operator to take over management of the object. The TimesTen Operator moves the object to the Reexamine state. The Operator then examines the state of TimesTen and the TimesTen databases in the Pods.

Based on the examination, the TimesTen Operator does the following:
  • If healthy, the Operator moves the TimesTenClassic object to the AllReplicasReady state and the TimesTen Pods to the Normal state.

  • If not healthy, the Operator moves the TimesTenClassic object and the unhealthy Pods to the ManualInterventionRequired state.

Terminal

The TimesTen Operator is unable to repair TimesTen in a Pod.

Unknown

The state of this Pod is unknown. Either the Pod is unreachable or the TimesTen agent contained within the Pod has failed.

UpgradeFailed

For replicated objects, an automated upgrade was attempted on TimesTen in this Pod and the upgrade failed. See About Upgrading TimesTen Classic Databases.