public interface PartitionLifeCycleRuntimeMBean extends RuntimeMBean
Provides methods that transition partitions from one state to another. This class is instantiated once for each partition but only on the Administration Server. Even so, you can use a partition's instance to change the state of the partition on Managed Servers as well as on the Administration Server.
Detecting when Operations Complete
Methods representing operations on partitions return a PartitionLifeCycleTaskRuntimeMBean
object.
The caller should monitor the returned instance, invoking its
TaskRuntimeMBean.isRunning()
method to detect when the operation has completed. In particular,
the caller should not rely on the value returned from PartitionLifeCycleRuntimeMBean.getState()
to indicate when an
operation on a partition that is targeted to multiple servers has finished. That value will be accurate as described
in detail on PartitionLifeCycleRuntimeMBean.getState()
but can change before the operation has finished.
Desired States
The system tracks the desired state for each partition, which defaults to the state SHUTDOWN
and substate HALTED
.
Whenever a lifecycle operation method is called the system not only performs the requested action on the
partition but also records the resulting state as the new desired state for the partition.
The system uses the desired state for a partition to bring the partition to the correct state during server restart.
It can also be used when the PartitionLifeCycleRuntimeMBean.getState()
method computes the overall state for the partition.
Modifier and Type | Method and Description |
---|---|
PartitionLifeCycleTaskRuntimeMBean |
boot()
Begins the transition of the partition from the
SHUTDOWN state and HALTED substate to the
SHUTDOWN state and BOOTED substate on all targeted servers. |
PartitionLifeCycleTaskRuntimeMBean |
boot(TargetMBean[] targets)
Begins the transition of the partition from the
SHUTDOWN state and HALTED substate to the
SHUTDOWN state and BOOTED substate on the specified targets. |
PartitionLifeCycleTaskRuntimeMBean |
forceShutdown()
Begins to force the shutdown of this partition on all targeted servers.
|
PartitionLifeCycleTaskRuntimeMBean |
forceShutdown(TargetMBean[] targets)
Begins to force the shut down of this partition on the specified targets.
|
PartitionLifeCycleTaskRuntimeMBean |
forceSuspend()
Begins the forceful transition of the partition from the
RUNNING state to the ADMIN state on all targeted servers. |
PartitionLifeCycleTaskRuntimeMBean |
forceSuspend(TargetMBean[] targets)
Begins the forceful transition of the partition from the
RUNNING state to the ADMIN state on the specified targets. |
ResourceGroupLifeCycleRuntimeMBean[] |
getResourceGroupLifeCycleRuntimes()
The resource group lifecycle tasks for this partition.
|
String |
getState()
The current overall state of the partition.
|
String |
getState(ServerMBean serverMBean)
Deprecated.
12.2.1.2.0
|
String |
getState(String serverName)
The current state of the partition on a specific server.
|
String |
getSubState()
The current substate of the partition.
|
String |
getSubState(ServerMBean serverMBean)
Deprecated.
12.2.1.2.0
|
String |
getSubState(String serverName)
The current substate of the partition on a specific server.
|
PartitionLifeCycleTaskRuntimeMBean[] |
getTasks()
The preexisting partition lifecycle tasks.
|
PartitionLifeCycleTaskRuntimeMBean |
halt()
Begins the forceful transition of the partition from the
RUNNING state or the ADMIN state to the SHUTDOWN
state and HALTED substate on all targeted servers. |
PartitionLifeCycleTaskRuntimeMBean |
halt(TargetMBean[] targets)
Begins the forceful transition of the partition from the
RUNNING state or the ADMIN state to the SHUTDOWN
state and HALTED substate on a specific set of targets. |
ResourceGroupLifeCycleRuntimeMBean |
lookupResourceGroupLifeCycleRuntime(String name)
Look up the named resource group lifecycle task for this partition.
|
PartitionLifeCycleTaskRuntimeMBean |
lookupTask(String taskName)
The preexisting partition lifecycle task.
|
void |
purgeTasks()
Clears the retained task collection.
|
PartitionLifeCycleTaskRuntimeMBean |
resume()
Begins the transition of the partition from the
ADMIN state to the RUNNING
state on all targeted servers. |
PartitionLifeCycleTaskRuntimeMBean |
resume(TargetMBean[] targets)
Begins the transition of the partition from the
ADMIN state to the RUNNING
state on the specified targets. |
PartitionLifeCycleTaskRuntimeMBean |
shutdown()
Begins to shut down this partition gracefully on all targeted servers.
|
PartitionLifeCycleTaskRuntimeMBean |
shutdown(int timeout,
boolean ignoreSessions)
Begins to shut down this partition gracefully on all targeted servers.
|
PartitionLifeCycleTaskRuntimeMBean |
shutdown(int timeout,
boolean ignoreSessions,
boolean waitForAllSessions)
Begins to shut down this partition gracefully on all targeted servers.
|
PartitionLifeCycleTaskRuntimeMBean |
shutdown(int timeout,
boolean ignoreSessions,
boolean waitForAllSessions,
TargetMBean[] targets)
Begins to shut down this partition gracefully on the specified targets.
|
PartitionLifeCycleTaskRuntimeMBean |
shutdown(int timeout,
boolean ignoreSessions,
TargetMBean[] targets)
Begins to shut down this partition gracefully on the specified targets.
|
PartitionLifeCycleTaskRuntimeMBean |
shutdown(TargetMBean[] targets)
Begins to shut down this partition gracefully on the specified targets.
|
PartitionLifeCycleTaskRuntimeMBean |
start()
Begins to start this partition on all targeted servers.
|
PartitionLifeCycleTaskRuntimeMBean |
start(String initialState,
int timeOut)
Begins to start this partition in the specified
initialState within the specified timeOut on all targeted servers. |
PartitionLifeCycleTaskRuntimeMBean |
start(TargetMBean[] targets)
Begins to start this partition on the specified targets.
|
PartitionLifeCycleTaskRuntimeMBean |
startInAdmin()
Begins to start this partition in the
ADMIN state on all targeted servers. |
PartitionLifeCycleTaskRuntimeMBean |
startInAdmin(TargetMBean[] targets)
Begins to start this partition in the
ADMIN state on the specified targets. |
PartitionLifeCycleTaskRuntimeMBean |
suspend()
Begins the graceful transition of the partition from the
RUNNING state to the ADMIN state on all targeted servers. |
PartitionLifeCycleTaskRuntimeMBean |
suspend(int timeout,
boolean ignoreSessions)
Begins the graceful transition of the partition from the
RUNNING state to
the ADMIN state on all targeted servers. |
PartitionLifeCycleTaskRuntimeMBean |
suspend(int timeout,
boolean ignoreSessions,
TargetMBean[] targets)
Begins the graceful transition of the partition from the
RUNNING state to
the ADMIN state on the specified targets. |
PartitionLifeCycleTaskRuntimeMBean |
suspend(TargetMBean[] targets)
Begins the graceful transition of the partition from the
RUNNING state to the ADMIN state on the specified targets. |
addPropertyChangeListener, removePropertyChangeListener
getMBeanInfo, getName, getObjectName, getParent, getType, isCachingDisabled, isRegistered, setName, setParent
getAttribute, getAttributes, invoke, setAttribute, setAttributes
postDeregister, postRegister, preDeregister, preRegister
addNotificationListener, getNotificationInfo, removeNotificationListener
PartitionLifeCycleTaskRuntimeMBean start() throws PartitionLifeCycleException
Begins to start this partition on all targeted servers.
Use the returned PartitionLifeCycleTaskRuntimeMBean
value to check for completion.
PartitionLifeCycleException
- If start operation failsString getState()
The current overall state of the partition.
The value returned is the highest state for the partition on all servers where it is targeted.
As a result, the overall partition state can change (for example, to RUNNING
)
as soon as the operation (such as start) has finished on one server, even while the operation is still in progress elsewhere.
If the partition is not currently targeted to any running server then its reported state is the desired state indicated by the most recent partition life cycle operation on the partition.
String getSubState()
The current substate of the partition. It is mostly useful for knowing whether the partition
is completely shutdown and the administrative resource groups are not running, in which case this method returns HALTED
,
or if the partition is in the SHUTDOWN.BOOTED
state
and the administrative resource groups are running, in which case this method returns BOOTED
.
PartitionLifeCycleTaskRuntimeMBean[] getTasks()
The preexisting partition lifecycle tasks.
PartitionLifeCycleTaskRuntimeMBean lookupTask(String taskName)
The preexisting partition lifecycle task.
taskName
- ResourceGroupLifeCycleRuntimeMBean[] getResourceGroupLifeCycleRuntimes()
The resource group lifecycle tasks for this partition.
ResourceGroupLifeCycleRuntimeMBean lookupResourceGroupLifeCycleRuntime(String name)
Look up the named resource group lifecycle task for this partition.
name
- resource lifecycle namePartitionLifeCycleTaskRuntimeMBean start(TargetMBean[] targets) throws PartitionLifeCycleException
Begins to start this partition on the specified targets.
Use the returned PartitionLifeCycleTaskRuntimeMBean
value to check for completion.
targets
- the specific targets on which to start this partitionPartitionLifeCycleException
- if the start failsPartitionLifeCycleTaskRuntimeMBean startInAdmin(TargetMBean[] targets) throws PartitionLifeCycleException
Begins to start this partition in the ADMIN
state on the specified targets.
Use the returned PartitionLifeCycleTaskRuntimeMBean
value to check for completion.
targets
- the specific targets on which to start this partition in "admin" statePartitionLifeCycleException
- if the start failsPartitionLifeCycleTaskRuntimeMBean startInAdmin() throws PartitionLifeCycleException
Begins to start this partition in the ADMIN
state on all targeted servers.
Use the returned PartitionLifeCycleTaskRuntimeMBean
value to check for completion.
PartitionLifeCycleException
- if the start failsPartitionLifeCycleTaskRuntimeMBean start(String initialState, int timeOut) throws PartitionLifeCycleException, InterruptedException
Begins to start this partition in the specified initialState
within the specified timeOut
on all targeted servers.
Use the returned PartitionLifeCycleTaskRuntimeMBean
value to check for completion.
initialState
- can be can be ADMIN
or RUNNING
, default is RUNNING
.timeOut
- Specifies the number of milliseconds to start a Partition. Throws InterruptedException if Partition
is unable to start during that duration and leaves the Partition in UNKNOWN
state. Default is 60000msInterruptedException
PartitionLifeCycleException
PartitionLifeCycleTaskRuntimeMBean shutdown(int timeout, boolean ignoreSessions, boolean waitForAllSessions) throws PartitionLifeCycleException
Use the returned PartitionLifeCycleTaskRuntimeMBean
value to check for completion.
timeout
- Number of seconds to wait before aborting inflight work
and force shutting down the server.ignoreSessions
- Set to true
to ignore pending HTTP
sessions during inflight work handling.waitForAllSessions
- Set to true
to wait for all HTTP sessions
duirng inflight work handling; false
to wait for non-persisted
HTTP sessions only.PartitionLifeCycleException
- If the partition fails to gracefully
shutdown. A PartitionLifeCycleRuntimeMBean.forceShutdown()
operation can be invoked.PartitionLifeCycleTaskRuntimeMBean shutdown(int timeout, boolean ignoreSessions, boolean waitForAllSessions, TargetMBean[] targets) throws PartitionLifeCycleException
Begins to shut down this partition gracefully on the specified targets.
Use the returned PartitionLifeCycleTaskRuntimeMBean
value to check for completion.
timeout
- Number of seconds to wait before aborting inflight work
and force shutting down the server.ignoreSessions
- Set to true
to ignore pending HTTP
sessions during inflight work handling.waitForAllSessions
- Set to true
to wait for all HTTP sessions
duirng inflight work handling; false
to wait for non-persisted
HTTP sessions only.targets
- the specific targets on which to shut down this partitionPartitionLifeCycleException
- If the partition fails to gracefully
shutdown. A PartitionLifeCycleRuntimeMBean.forceShutdown()
operation can be invoked.PartitionLifeCycleTaskRuntimeMBean shutdown(int timeout, boolean ignoreSessions) throws PartitionLifeCycleException
Begins to shut down this partition gracefully on all targeted servers.
(Equivalent to shutdown(timeout, ignoreSessions, false, targets)).
Use the returned PartitionLifeCycleTaskRuntimeMBean
value to check for completion.
timeout
- Number of seconds to wait before aborting
inflight work and shutting down the server.ignoreSessions
- true
indicates ignore pending
HTTP sessions during inflight work handling.PartitionLifeCycleException
- Thrown if the partition cannot
gracefully shutdown. Use the forceShutdown command to shutdown the partition.PartitionLifeCycleTaskRuntimeMBean shutdown(int timeout, boolean ignoreSessions, TargetMBean[] targets) throws PartitionLifeCycleException
Begins to shut down this partition gracefully on the specified targets.
(Equivalent to shutdown(timeout, ignoreSessions, false, targets)).
Use the returned PartitionLifeCycleTaskRuntimeMBean
value to check for completion.
timeout
- Number of seconds to wait before aborting
inflight work and shutting down the server.ignoreSessions
- true
indicates ignore pending
HTTP sessions during inflight work handling.targets
- the specific targets on which to shut down this partitionPartitionLifeCycleException
- Thrown if the partition cannot
gracefully shutdown. Use the forceShutdown command to shutdown the partition.PartitionLifeCycleTaskRuntimeMBean shutdown(TargetMBean[] targets) throws PartitionLifeCycleException
Begins to shut down this partition gracefully on the specified targets.
(Equivalent to shutdown(targets, 0, false)).
Use the returned PartitionLifeCycleTaskRuntimeMBean
value to check for completion.
targets
- the specific targets on which to start this partitionPartitionLifeCycleException
- if the shutdown failsPartitionLifeCycleTaskRuntimeMBean shutdown() throws PartitionLifeCycleException
Begins to shut down this partition gracefully on all targeted servers.
Use the returned PartitionLifeCycleTaskRuntimeMBean
value to check for completion.
PartitionLifeCycleException
- if the shutdown failsPartitionLifeCycleTaskRuntimeMBean forceShutdown(TargetMBean[] targets) throws PartitionLifeCycleException
Begins to force the shut down of this partition on the specified targets.
On each target the partition is shut down and then restored to its current state on that server.
Use the returned PartitionLifeCycleTaskRuntimeMBean
value to check for completion.
targets
- the specific targets on which to start this partitionPartitionLifeCycleException
- if the partition fails to shut downPartitionLifeCycleTaskRuntimeMBean forceShutdown() throws PartitionLifeCycleException
Begins to force the shutdown of this partition on all targeted servers.
On each targeted server the partition is shut down and thenrestored to its current state on that server.
Use the returned PartitionLifeCycleTaskRuntimeMBean
value to check for completion.
PartitionLifeCycleException
- if the partition fails to shut downPartitionLifeCycleTaskRuntimeMBean suspend(int timeout, boolean ignoreSessions, TargetMBean[] targets) throws PartitionLifeCycleException
Begins the graceful transition of the partition from the RUNNING
state to
the ADMIN
state on the specified targets.
Use the returned PartitionLifeCycleTaskRuntimeMBean
value to check for completion.
Applications are in admin mode. Inflight work is completed.
timeout
- Seconds to wait for the partition to transition gracefully.
The partition automatically calls PartitionLifeCycleRuntimeMBean.forceSuspend()
after timeout.ignoreSessions
- drop inflight HTTP sessions during graceful suspendtargets
- the specific targets on which to start this partitionPartitionLifeCycleException
- partition failed to suspend gracefully.
A PartitionLifeCycleRuntimeMBean.forceSuspend()
or a PartitionLifeCycleRuntimeMBean.forceShutdown()
operation can be
invoked.PartitionLifeCycleTaskRuntimeMBean suspend(int timeout, boolean ignoreSessions) throws PartitionLifeCycleException
Begins the graceful transition of the partition from the RUNNING
state to
the ADMIN
state on all targeted servers.
Use the returned PartitionLifeCycleTaskRuntimeMBean
value to check for completion.
Applications are in admin mode. Inflight work is completed.
timeout
- Seconds to wait for the partition to transition gracefully.
The partition automatically calls PartitionLifeCycleRuntimeMBean.forceSuspend()
after timeout.ignoreSessions
- drop inflight HTTP sessions during graceful suspendPartitionLifeCycleException
- partition failed to suspend gracefully.
A PartitionLifeCycleRuntimeMBean.forceSuspend()
or a PartitionLifeCycleRuntimeMBean.forceShutdown()
operation can be
invoked.PartitionLifeCycleTaskRuntimeMBean suspend(TargetMBean[] targets) throws PartitionLifeCycleException
Begins the graceful transition of the partition from the RUNNING
state to the ADMIN
state on the specified targets.
(Equivalent to suspend(0, false, targets))
Use the returned PartitionLifeCycleTaskRuntimeMBean
value to check for completion.
targets
- the specific targets on which to start this partitionPartitionLifeCycleException
- If the operation failsPartitionLifeCycleRuntimeMBean.suspend(int, boolean)
PartitionLifeCycleTaskRuntimeMBean suspend() throws PartitionLifeCycleException
Begins the graceful transition of the partition from the RUNNING
state to the ADMIN
state on all targeted servers.
Use the returned PartitionLifeCycleTaskRuntimeMBean
value to check for completion.
PartitionLifeCycleException
- If the operation failsPartitionLifeCycleRuntimeMBean.suspend(int, boolean)
PartitionLifeCycleTaskRuntimeMBean forceSuspend(TargetMBean[] targets) throws PartitionLifeCycleException
Begins the forceful transition of the partition from the RUNNING
state to the ADMIN
state on the specified targets.
Use the returned PartitionLifeCycleTaskRuntimeMBean
value to check for completion.
targets
- the specific targets on which to start this partitionPartitionLifeCycleException
- the partition could not suspend.PartitionLifeCycleTaskRuntimeMBean forceSuspend() throws PartitionLifeCycleException
Begins the forceful transition of the partition from the RUNNING
state to the ADMIN
state on all targeted servers.
Use the returned PartitionLifeCycleTaskRuntimeMBean
value to check for completion.
PartitionLifeCycleException
- the partition could not suspend.PartitionLifeCycleTaskRuntimeMBean resume(TargetMBean[] targets) throws PartitionLifeCycleException
Begins the transition of the partition from the ADMIN
state to the RUNNING
state on the specified targets.
Use the returned PartitionLifeCycleTaskRuntimeMBean
value to check for completion.
targets
- the specific targets on which to start this partitionPartitionLifeCycleException
- If the resume operation failsPartitionLifeCycleTaskRuntimeMBean resume() throws PartitionLifeCycleException
Begins the transition of the partition from the ADMIN
state to the RUNNING
state on all targeted servers.
Use the returned PartitionLifeCycleTaskRuntimeMBean
value to check for completion.
PartitionLifeCycleException
- If the resume operation failsPartitionLifeCycleTaskRuntimeMBean boot(TargetMBean[] targets) throws PartitionLifeCycleException
Begins the transition of the partition from the SHUTDOWN
state and HALTED
substate to the
SHUTDOWN
state and BOOTED
substate on the specified targets.
This operation has the effect of starting the partition's administrative resource groups on those targets, changing
their states on those targets from SHUTDOWN
to RUNNING
.
Use the returned PartitionLifeCycleTaskRuntimeMBean
value to check for completion.
targets
- the specific targets on which to boot this partitionPartitionLifeCycleException
- If the boot operation failsPartitionLifeCycleTaskRuntimeMBean boot() throws PartitionLifeCycleException
SHUTDOWN
state and HALTED
substate to the
SHUTDOWN
state and BOOTED
substate on all targeted servers.
This operation has the effect of starting the partition's administrative resource groups, changing
their states from SHUTDOWN
to RUNNING
.
Use the returned PartitionLifeCycleTaskRuntimeMBean
value to check for completion.
PartitionLifeCycleException
- If the halt operation failsPartitionLifeCycleTaskRuntimeMBean halt(TargetMBean[] targets) throws PartitionLifeCycleException
Begins the forceful transition of the partition from the RUNNING
state or the ADMIN
state to the SHUTDOWN
state and HALTED
substate on a specific set of targets.
Use the returned PartitionLifeCycleTaskRuntimeMBean
value to check for completion.
targets
- the specific targets on which to halt this partitionPartitionLifeCycleException
- If the halt operation failsPartitionLifeCycleTaskRuntimeMBean halt() throws PartitionLifeCycleException
Begins the forceful transition of the partition from the RUNNING
state or the ADMIN
state to the SHUTDOWN
state and HALTED
substate on all targeted servers.
Use the returned PartitionLifeCycleTaskRuntimeMBean
value to check for completion.
PartitionLifeCycleException
- If the halt operation failsvoid purgeTasks()
String getState(ServerMBean serverMBean) throws PartitionLifeCycleException
This method has been deprecated in favor of retrieving partition state correctly on dynamic servers. ServerMBean does not exist for dynamic servers in the domain runtime tree. So, although invoking this method from domain runtime tree works for static servers, does not work for dynamic servers.
Please use PartitionLifeCycleRuntimeMBean.getState(ServerLifeCycleRuntimeMBean serverLifeCycleRuntimeMBean)
serverMBean
- PartitionLifeCycleException
String getSubState(ServerMBean serverMBean) throws PartitionLifeCycleException
The current substate of the partition on a specific server.
This method has been deprecated in favor of retrieving partition substate correctly on dynamic servers. ServerMBean does not exist for dynamic servers in the domain runtime tree. So, although invoking this method from domain runtime tree works for static servers, does not work for dynamic servers.
Please use PartitionLifeCycleRuntimeMBean.getSubState(ServerLifeCycleRuntimeMBean serverLifeCycleRuntimeMBean)
serverMBean
- the server on which the substate to checkPartitionLifeCycleException
String getState(String serverName) throws PartitionLifeCycleException
serverName
- name of the server on which the substate to checkPartitionLifeCycleException
String getSubState(String serverName) throws PartitionLifeCycleException
The current substate of the partition on a specific server.
serverName
- name of the server on which the substate to checkPartitionLifeCycleException