public interface NodeHousekeepingMBean
The NodeHousekeepingMBean MBean interface provides methods for inspecting Rhino SLEE state.
Methods are provided for locating, inspecting, and in some cases removing Rhino SLEE internal state. These methods are intended to assist in application debugging in addition to preventing downtime caused by unexpected faults in a production system.
Clients should obtain the ObjectName of a NodeHousekeepingMBean using RhinoHousekeepingMBean.getNodeHousekeeping(int)
for a particular node.
Operations invoked on a NodeHousekeepingMBean only apply to state visible to that node.
Timestamps
Search methods that accept time ranges accept timestamps as long values measured in milliseconds. Because timestamps are considered to be relative to the system time of the Rhino node processing the request some inaccuracy will occur if the system clock’s on client and all cluster nodes are out of sync. In the worst case this simply means too few results may be returned. In all cases where a timestamp parameter is available it is optional and will only be effective if the supplied value is greater than 0.
Searching and result set sizes
None of the search type methods in this MBean will return an unlimited number of entries.
This is intended to prevent unacceptable system pauses or latency caused by collating and serialising a huge result set.
All search type methods take a max
parameter which allows the user to limit the result size.
This CompositeData
type describes an activity found in an activity search operation.
A TabularData
containing records of this type is returned by the methods getActivities(int, boolean)
, getActivities(int, String, boolean)
, and getActivities(int, String, long, long, long, long, boolean)
.
Field | Open Type | Description |
---|---|---|
pkey |
String |
The primary key of the activity. This key uniquely identifies the activity within the SLEE. |
namespace |
String |
The namespace that the activity exists in. |
ra-entity |
String |
The name of the resource adaptor entity which created this activity. |
submission-time |
Date |
Time at which the activity was first submitted to the SLEE. |
update-time |
Date |
Time at which the activity was last updated (when the most recent database generation record was created). |
handle |
String |
A string representation of the activities activity handle. The format of the string representation depends on the implementation supplied by the activities resource adaptor. Resource adaptors may provide useful diagnostic information in the string representation of the activity handle. |
replicated |
Boolean |
Replicated flag, true for replicated activities, false for non-replicated activities. |
node |
Integer |
Node ID of the cluster member which is now responsible for processing events on this activity. |
attach-count |
Integer |
The number of SBBs attached to the activity. |
ref-count |
Integer |
An internal count of the number of references made to the activity through activity context naming or the timer facility. |
This CompositeData
type describes an attached activity found in a query of activities attached to an SBB entity.
A TabularData
table with this record type is returned by the method getAttachedActivities(int, ServiceID, SbbID, String)
.
Field | Open Type | Description |
---|---|---|
pkey |
String |
The primary key of the activity. This key uniquely identifies the activity within the SLEE. |
namespace |
String |
The namespace that activity exists in. |
handle |
String |
A string representation of the activities activity handle. The format of the string representation depends on the implementation supplied by the activities resource adaptor. Resource adaptors may provide useful diagnostic information in the string representation of the activity handle. |
ra-entity |
String |
The name of the resource adaptor entity which created this activity. |
replicated |
Boolean |
Replicated flag, true for replicated activities, false for non-replicated activities. |
This CompositeData
type describes an SBB entity found in an SBB entity search operation.
A TabularData
object containing a table of SBB entity search result CompositeData
objects is returned by the methods getSbbs(int, ServiceID)
, getSbbs(int, ServiceID, long, long)
, and getSbbs(int, ServiceID, SbbID, long, long)
.
Field | Open Type | Description |
---|---|---|
pkey |
String |
The primary key of the SBB entity. This key uniquely identifies the SBB entity within its Service and SBB component type. |
namespace |
String |
The namespace that the SBB exists in. |
parent-pkey |
String |
The primary key of this SBB entities parent SBB if it has one, otherwise null. |
service-component-id |
String |
The service component ID of the service to which the SBB entity belongs. |
sbb-component-id |
String |
The SBB component ID of the SBB component to which the SBB entity belongs. |
creation-time |
Date |
The time at which the SBB entity was first created. This field can be used to tell how old an SBB entity is. |
replicated |
Boolean |
Replicated flag, true for replicated SBB entities, false for non-replicated SBB entities. |
Describes a timer returned by a timer search operation.
A TabularData
object containing a table of timer info CompositeData
objects is returned by the methods getTimers(int)
and getTimers(int, java.lang.String, long, long)
.
This is also included in the information returned by the method getActivityInfo(String, boolean)
.
Field | Open Type | Description |
---|---|---|
pkey |
String |
The primary key of the timer. This key uniquely identifies the timer within the SLEE. |
namespace |
String |
The namespace that the timer exists in. |
activity-pkey |
String |
The primary key of the SLEE activity this timer is attached to. |
submission-time |
Date |
The date the timer was created. |
period |
Long |
The timers period. |
repetitions |
Integer |
Number of repetitions of the timer. |
preserve-missed |
String |
Behaviour when a timer is missed. One of:
|
replicated |
Boolean |
Replicated flag, true for replicated timers entities, false for non-replicated timers. A timer is replicated if the activity it is attached to is replicated. |
Describes an activity context naming facility binding returned by an AC binding search operation.
A TabularData
object containing a table of activity context binding CompositeData
objects is returned by the methods getBoundActivities(int)
and getBoundActivities(int, long, long)
.
Field | Open Type | Description |
---|---|---|
name |
String |
The name the activity is bound under. This name is unique within the SLEE. |
pkey |
String |
The primary key of the bound activity. |
namespace |
String |
The namespace that the activity exists in. |
submission-time |
Date |
The time the activity was bound. |
replicated |
Boolean |
Replicated flag, true for replicated activity context bindings, false for non-replicated bindings. A binding is replicated if the bound activity is replicated. |
Detailed information about an activity is returned in a CompositeData
object by the method getActivityInfo(String, boolean)
.
Field | Open Type | Description |
---|---|---|
pkey |
String |
The primary key of the activity. This key uniquely identifies the activity within the SLEE. |
namespace |
String |
The namespace that the activity exists in. |
ra-entity |
String |
The name of the resource adaptor entity which created this activity. |
submission-time |
Date |
Time at which the activity was first submitted to the SLEE. |
update-time |
Date |
Time at which the activity was last updated (when the most recent database generation record was created). |
last-event-time |
Date |
Time at which the most recent event was submitted on the activity. |
creating-gen |
Long |
Memory database generation in which the activity was created. |
flags |
String |
Hex string representation of activity flags. |
handle |
String |
A string representation of the activities activity handle. The format of the string representation depends on the implementation supplied by the activity’s resource adaptor. Resource adaptors may provide useful diagnostic information in the string representation of the activity handle. |
activity |
String |
A string representation of the activity. The format of the string representation depends on the implementation supplied by the activity’s resource adaptor. Resource adaptors may provide useful diagnostic information in the string representation of the activity. |
replicated |
Boolean |
Replicated flag, true for replicated activities, false for non-replicated activities. |
head-event |
CompositeType |
Information about the event at the head of the activity’s event queue, if any. |
event-queue |
TabularData |
Current event queue as |
submitting-node |
Integer |
Node ID of the cluster member on which the activity was created. |
node |
Integer |
Node ID of the cluster member which is now responsible for processing events on this activity. This may differ from the submitting-node if the activity has been failed over. |
events-submitted |
Integer |
The number of events that have been submitted for processing on the activity. |
suspended |
Boolean |
Suspended flag, true if the activity is suspended. |
ending |
Boolean |
Ending flag, true if the activity is ending. |
generations |
TabularData |
Activity lifecycle generations as |
A CompositeData
object containing details of Activity generations.
Returned in Activity Information.
Field | Open Type | Description |
---|---|---|
id |
long |
Generation ID. |
removed |
Boolean |
True if the generation has been removed. |
refcount |
Integer |
Count of references to the generation. |
attached-sbbs |
TabularData |
Attached sbb’s as |
timers |
TabularData |
Attached timers as |
A CompositeData
object containing identities of attached SBBs.
Returned in Generation Information.
Field | Open Type | Description |
---|---|---|
pkey |
String |
The primary key of the SBB entity. This key uniquely identifies the SBB entity within its Service and SBB component type. |
namespace |
String |
The namespace that the SBB entity exists in. |
service-component-id |
String |
The service component ID of the service to which the SBB entity belongs. |
sbb-component-id |
String |
The SBB component ID of the SBB component to which the SBB entity belongs. |
A CompositeData
object containing detailed SBB Entity information is returned by the method getSbbInfo(ServiceID, SbbID, String)
.
Field | Open Type | Description |
---|---|---|
pkey |
String |
The primary key of the SBB entity. This key uniquely identifies the SBB entity within its Service and SBB component type. |
service-component-id |
String |
The service component ID of the service to which the SBB entity belongs. |
sbb-component-id |
String |
The SBB component ID of the SBB component to which the SBB entity belongs. |
replicated |
Boolean |
Replicated flag, true for replicated SBB entities, false for non-replicated SBB entities. |
creation-time |
Date |
The time at which the SBB entity was first created. This field can be used to tell how old an SBB entity is. |
attached-activities |
TabularData |
Attached activities as |
creating-node-id |
Integer |
The node ID of the cluster member on which this SBB entity was created. |
parent-pkey |
String |
The primary key of this SBB entities parent SBB if it has one, otherwise null. |
priority |
Integer |
Priority for event handling, events are handled sequentially in decending priority order. |
convergence-name |
String |
A string representation of the SLEE convergence name calculated for this SBB entity. |
A CompositeData
object containing detailed SBB Entity information is returned by the method getSbbDiagnostics(ServiceID, SbbID, String)
.
Field | Open Type | Description |
---|---|---|
pkey |
String |
The primary key of the SBB entity. This key uniquely identifies the SBB entity within its Service and SBB component type. |
namespace |
String |
The namespace that the SBB entity exists in. |
service-component-id |
String |
The service component ID of the service to which the SBB entity belongs. |
sbb-component-id |
String |
The SBB component ID of the SBB component to which the SBB entity belongs. |
replicated |
Boolean |
Replicated flag, true for replicated SBB entities, false for non-replicated SBB entities. |
creation-time |
Date |
The time at which the SBB entity was first created. This field can be used to tell how old an SBB entity is. |
attached-activities |
TabularData |
Attached activities as |
creating-node-id |
Integer |
The node ID of the cluster member on which this SBB entity was created. |
parent-pkey |
String |
The primary key of this SBB entities parent SBB if it has one, otherwise null. |
priority |
Integer |
Priority for event handling, events are handled sequentially in descending priority order. |
convergence-name |
String |
A string representation of the SLEE convergence name calculated for this SBB entity. |
diagnostics |
String |
A string representation of the result of calling getSbbDiagnostics() for this SBB entity. |
A CompositeData
object containing detailed transaction information is returned by the method getLongRunningTransactions(int, int)
.
Field | Open Type | Description |
---|---|---|
node |
Integer |
The node ID of the cluster member on which this transaction was created. |
transaction-id |
Long |
The transaction ID of this transaction. |
age |
Integer |
The age of the transaction, measured in seconds. |
description |
String |
A description of why the transaction was created. |
A CompositeData
object containing a snapshot of the status of an event router thread as returned by getEventRouterThreadState(boolean)
.
Field |
Type |
Description |
node |
Integer |
The node ID of the cluster member on which this event router thread exists. |
name |
String |
The name of this thread. |
stage |
String |
Stage the thread is processing. |
activity-pkey |
String |
If the thread is processing an event the encoded activity pkey of that events activity. |
event |
String |
If the thread is processing an event the event type id. |
initial |
Boolean |
If the thread is processing an event then indicates whether the event router has created a new root SBB for the event. |
tx-id |
Long |
If the thread has started an event processing transaction then the id of the transaction. |
service-component-id |
String |
If the thread is processing an event and determined which SBB it will deliver to then the SBB’s service component id. |
sbb-component-id |
String |
If the thread is processing an event and determined which SBB it will deliver to then the SBB’s service component id. |
A CompositeData
object containing transaction state information as returned by getTransactionStateInfo(int, long)
.
Field |
Type |
Description |
id |
String |
A string representation of the transaction identifier. |
description |
String |
A description of the transaction, if provided when the transaction was started. |
start-time |
Date |
The time the transaction was started. |
last-update-time |
Date |
The time of the most recent transaction status change. |
status |
String |
The current status of the transaction. |
outstanding-resources |
Tabular Data |
The list of resources the transaction manager is still waiting on for this transaction. This list will only contain entries if the transaction status is PREPARING, COMMITTING, or ROLLING_BACK. The format of this tabular data is described in Transaction Resource State Information. |
A CompositeData
object containing information about a transactional resource.
A TabularData
table containing records of this type is included in Transaction State Information.
Field |
Type |
Description |
resource-name |
String |
The name of the transactional resource. |
diagnostics |
String |
Additional diagnostic information provided by the resource regarding the state of the transaction. |
Modifier and Type | Method and Description |
---|---|
void |
cancelTimer(String timerID)
Cancel a SLEE timer.
|
boolean |
copyPerNodeActivationState(int targetNodeID)
Copy the current per-node activation state of services, resource adaptor entities, and the SLEE from this node to the specified target node.
|
TabularData |
getActivities(int maxPerNode,
boolean includeRemoved)
Return summary information about active activities in the SLEE
The results are returned as
TabularData where each entry is a CompositeData containing summary information about a SLEE activity. |
TabularData |
getActivities(int maxPerNode,
String entityName,
boolean includeRemoved)
Return a table of activities belonging to a Resource Adaptor entity
The results are returned as
TabularData where each entry is a CompositeData containing summary information about a SLEE activity. |
TabularData |
getActivities(int maxPerNode,
String entityName,
long createdAfter,
long createdBefore,
long updatedAfter,
long updatedBefore,
boolean includeRemoved)
Return a table of activities belonging to an RA entity, with optional bounds on activity creation time and last update time.
|
CompositeData |
getActivityInfo(String activityPKey,
boolean showAllGenerations)
Get information about a SLEE activity.
|
TabularData |
getAttachedActivities(int maxPerNode,
ServiceID serviceID,
SbbID sbbID,
String sbbPKey)
Return a table of activities attached to an SBB entity.
|
TabularData |
getBoundActivities(int maxPerNode)
Find activity context naming facility bindings.
|
TabularData |
getBoundActivities(int maxPerNode,
long createdAfter,
long createdBefore)
Find activity context naming facility bindings.
|
TabularData |
getEventRouterThreadState(boolean includeIdleThreads)
Retrieve the current status of all event router threads.
|
TabularData |
getLocalMemDBStripingNodeConfig()
Returns the current MemDB striping configuration for local MemDB instances on this node.
|
TabularData |
getLongRunningTransactions(int maxPerNode,
int minAge)
Return summary information about long-running transactions in the SLEE.
|
int[] |
getNodesWithPerNodeActivationState()
Get the set of node IDs for which per-node activation state currently exists.
|
CompositeData |
getSbbDiagnostics(ServiceID serviceID,
SbbID sbbID,
String sbbPKey)
Return diagnostic information about the state of a particular SBB entity.
|
CompositeData |
getSbbInfo(ServiceID serviceID,
SbbID sbbID,
String sbbPKey)
Return detailed information about the state of a particular SBB entity.
|
TabularData |
getSbbs(int maxPerNode,
ServiceID serviceID)
Return a table of SBB entities belonging to a Service.
|
TabularData |
getSbbs(int maxPerNode,
ServiceID serviceID,
long createdAfter,
long createdBefore)
Return a table of SBB entities belonging to a Service
This method searches for and returns a list of SBB entities belonging to a particular service with a constraint on the time the SBB entity was created.
|
TabularData |
getSbbs(int maxPerNode,
ServiceID serviceID,
SbbID sbbType,
long createdAfter,
long createdBefore)
Returns a table of SBB entities constrained by service component id, SBB component id and creation time
Searches within a service and SBB component type for SBB’s.
|
CompositeData |
getTimerInfo(String timerID)
Get information about a SLEE timer.
|
TabularData |
getTimers(int maxPerNode)
Find active SLEE timers
Returns a table containing JAIN SLEE Timer Facility timers and basic information about each timer.
|
TabularData |
getTimers(int maxPerNode,
String raEntity,
long createdAfter,
long createdBefore)
Find active SLEE timers
Returns a table containing JAIN SLEE Timer Facility timers and basic information about each timer.
|
CompositeData |
getTransactionStateInfo(int nodeID,
long transactionID)
Get information about a transaction.
|
boolean |
hasPerNodeActivationState()
Determine if this node has any per-node activation state in existence.
|
void |
initiateCleanup(String raEntityName)
Initiate a cleanup of activities that have been removed but not garbage collected.
|
void |
removeActivity(String activityPKey)
Remove an activity.
|
void |
removeActivityBinding(String activityPKey,
String name)
Remove an activity context naming facility binding.
|
boolean |
removePerNodeActivationState()
Remove all per-node activation state for services, resource adaptor entities, and the SLEE from this node.
|
void |
removeSbb(ServiceID serviceID,
SbbID sbbID,
String sbbPKey)
Removes an SBB entity.
|
void |
rollbackLongRunningTransaction(int nodeID,
long transactionID)
Force rollback of a long-running transaction.
|
TabularData getActivities(int maxPerNode, boolean includeRemoved) throws ManagementException
Return summary information about active activities in the SLEE
The results are returned as TabularData
where each entry is a CompositeData
containing summary information about a SLEE activity.
Refer to Activity Search Results in the interface description for a description of the CompositeData
records returned by this method.
maxPerNode
- maximum number of activities to return from each node.CompositeData
records.ManagementException
TabularData getActivities(int maxPerNode, String entityName, boolean includeRemoved) throws ManagementException, UnrecognizedResourceAdaptorEntityException
Return a table of activities belonging to a Resource Adaptor entity
The results are returned as TabularData
where each entry is a CompositeData
containing summary information about a SLEE activity.
Refer to Activity Search Results in the interface description for a description of the CompositeData
records returned by this method.
This method is equivalent to invoking getActivities(int, String, long, long, long, long, boolean)
, passing the parameters getActivities(max, raEntity, -1, -1, -1, -1, false);
maxPerNode
- maximum number of entries to return from each node.entityName
- resource Adaptor entity name.ManagementException
UnrecognizedResourceAdaptorEntityException
TabularData getActivities(int maxPerNode, String entityName, long createdAfter, long createdBefore, long updatedAfter, long updatedBefore, boolean includeRemoved) throws ManagementException, UnrecognizedResourceAdaptorEntityException
Return a table of activities belonging to an RA entity, with optional bounds on activity creation time and last update time.
This method searches for activities belonging to a particular Resource Adaptor entity that were created during, or last updated during (meaning the last time an event was processed) a certain time period.
The results are returned as TabularData
where each entry is a CompositeData
containing summary information about a SLEE activity.
Refer to Activity Search Results in the interface description for a description of the CompositeData
records returned by this method.
maxPerNode
- maximum number of entries to return from each node.entityName
- resource Adaptor entity name.createdAfter
- if > 0, returns only activities created after timestamp.createdBefore
- if > 0, returns only activities created before timestamp.updatedAfter
- if > 0, returns only activities last updated after timestamp.updatedBefore
- if > 0, returns only activities last updated before timestamp.ManagementException
UnrecognizedResourceAdaptorEntityException
TabularData getAttachedActivities(int maxPerNode, ServiceID serviceID, SbbID sbbID, String sbbPKey) throws InvalidPKeyException, ManagementException, UnrecognizedServiceException, UnrecognizedSbbException, UnknownSbbEntityException
Return a table of activities attached to an SBB entity.
Returns a list of activities and basic activity information for activities that a particular SBB entity is currently attached to.
Results are returned as a TabularData
table of records.
Refer to Attached Activities Search Results in the interface description for a description of the CompositeData
records returned.
maxPerNode
- maximum number of entries to return from each node.serviceID
- ServiceID of the Service containing the SBB.sbbID
- SbbID of the SBB’s component.sbbPKey
- primary key of the SBB (usually a value returned by getSbbs(int, javax.slee.ServiceID, javax.slee.SbbID, long, long)
)InvalidPKeyException
- if the SBB primary key is invalid.UnrecognizedServiceException
- if the service ID doesn’t match any deployed service.UnrecognizedSbbException
- if the SBB component ID doesn’t match any SBB component belonging to the specified service.UnknownSbbEntityException
- if no SBB entity matching the specified primary key is found - may indicate that the SBB entity has already been removed by the SLEE.ManagementException
- if a system level failure occurs.TabularData getSbbs(int maxPerNode, ServiceID serviceID) throws UnrecognizedServiceException, ManagementException
Return a table of SBB entities belonging to a Service.
This method searches for and returns a list of SBB entities belonging to a particular service and returns a TabularData
table of summary information about each SBB entity found.
For details on the row type for the returned data refer to SBB Entity Search Results in the interface description.
maxPerNode
- maximum number of entries to return from each node.serviceID
- ServiceID of the Service component to search within.UnrecognizedServiceException
- if the service ID doesn’t match any deployed service.ManagementException
TabularData getSbbs(int maxPerNode, ServiceID serviceID, long createdAfter, long createdBefore) throws ManagementException, UnrecognizedServiceException
Return a table of SBB entities belonging to a Service
This method searches for and returns a list of SBB entities belonging to a particular service with a constraint on the time the SBB entity was created.
Results are returned in a TabularData
table.
For details on the row type for the returned data refer to SBB Entity Search Results in the interface description.
maxPerNode
- maximum number of entries to return from each node.serviceID
- ServiceID of the Service containing the SBB.createdAfter
- if > 0, returns only SBB entities created after timestamp.createdBefore
- if > 0, returns only SBB entities created before timestamp.UnrecognizedServiceException
- if the service ID doesn’t match any deployed service.ManagementException
- if a system failure occurs.TabularData getSbbs(int maxPerNode, ServiceID serviceID, SbbID sbbType, long createdAfter, long createdBefore) throws ManagementException, UnrecognizedSbbException, UnrecognizedServiceException
Returns a table of SBB entities constrained by service component id, SBB component id and creation time
Searches within a service and SBB component type for SBB’s. Optionally a timeframe may be specified limiting the search to SBB’s created only during that time period. This method is useful for finding old, potentially 'stale' SBB entities. For details on the row type for the returned data refer to SBB Entity Search Results in the interface description.
maxPerNode
- maximum number of entries to return from each node.serviceID
- ServiceID of the Service containing the SBB.sbbType
- SBB component ID of the type of SBB to search for.createdAfter
- if > 0, returns only SBB entities created after timestamp.createdBefore
- if > 0, returns only SBB entities created before timestamp.UnrecognizedServiceException
- if the service ID doesn’t match any deployed service.UnrecognizedSbbException
- if the SBB component ID doesn’t match any SBB component belonging to the specified service.ManagementException
- if a system failure occurs.TabularData getTimers(int maxPerNode) throws ManagementException
Find active SLEE timers
Returns a table containing JAIN SLEE Timer Facility timers and basic information about each timer.
For a description of the CompositeData
result type returned by this method refer to Timer Search Results in the interface description.
maxPerNode
- maximum number of entries to return from each node.ManagementException
- if a system failure occurs.TabularData getTimers(int maxPerNode, String raEntity, long createdAfter, long createdBefore) throws ManagementException
Find active SLEE timers
Returns a table containing JAIN SLEE Timer Facility timers and basic information about each timer. The search can be limited to timers created within a particular time period.
For a description of the CompositeData
result type returned by this method refer to Timer Search Results in the interface description.
maxPerNode
- maximum number of entries to return from each node.raEntity
- if not null only timers set on activities belonging to this RA entity will be returned.createdAfter
- if > 0, returns only timers created after timestamp.createdBefore
- if > 0, returns only timers created before timestamp.ManagementException
- if a system failure occurs.TabularData getBoundActivities(int maxPerNode) throws ManagementException
Find activity context naming facility bindings.
Returns a table containing JAIN SLEE Activity Context Naming facility bindings and basic information about each binding, including the name bound and the activities primary key.
For a description of the CompositeData
result type returned by this method refer to Activity Context Binding Search Results in the interface description.
maxPerNode
- maximum number of entries to return from each node.ManagementException
TabularData getBoundActivities(int maxPerNode, long createdAfter, long createdBefore) throws ManagementException
Find activity context naming facility bindings.
Returns a table containing JAIN SLEE Activity Context Naming facility bindings and basic information about each binding, including the name bound and the activities primary key. The search can be limited to bindings created within a particular time period.
For a description of the CompositeData
result type returned by this method refer to Activity Context Binding Search Results in the interface description.
maxPerNode
- maximum number of entries to return from each node.createdAfter
- if > 0, returns only bindings created after timestamp.createdBefore
- if > 0, returns only bindings created before timestamp.ManagementException
CompositeData getActivityInfo(String activityPKey, boolean showAllGenerations) throws ManagementException, InvalidPKeyException, UnknownActivityException
Get information about a SLEE activity.
This method returns detailed information about an activity contained within the SLEE.
The activity to inspect is specified by primary key.
Activity primary keys are returned by getActivities(int, String, long, long, long, long, boolean)
and getAttachedActivities(int, javax.slee.ServiceID, javax.slee.SbbID, String)
.
For a description of the CompositeData
result type returned by this method refer to Activity Information in the interface description.
activityPKey
- activity primary key.UnknownActivityException
- if no activity can be found with the specified primary key - may indicate that the activity has already ended and all its SLEE state removed.InvalidPKeyException
- if the activity primary key is invalid.ManagementException
- if a system failure occurs.CompositeData getSbbInfo(ServiceID serviceID, SbbID sbbID, String sbbPKey) throws ManagementException, InvalidPKeyException, UnrecognizedSbbException, UnrecognizedServiceException, UnknownSbbEntityException
Return detailed information about the state of a particular SBB entity.
This method returns detailed information about an SBB entity contained within the SLEE.
To locate the SBB entity to inspect the SBB entities service, SBB component ID and primary key are required.
SBB entities primary keys are found using getSbbs(int, javax.slee.ServiceID, javax.slee.SbbID, long, long)
.
For a description of the CompositeData
result type returned by this method refer to SBB Entity Information in the interface description.
serviceID
- ServiceID of the Service containing the SBB.sbbID
- SbbID of the SBB’s component.sbbPKey
- primary key of the SBB (usually a value returned by getSbbs(int, ServiceID)
).InvalidPKeyException
- if the SBB primary key is invalid.UnrecognizedServiceException
- if the service ID doesn’t match any deployed service.UnrecognizedSbbException
- if the SBB component ID doesn’t match any SBB component belonging to the specified service.UnknownSbbEntityException
- if no SBB entity matching the specified primary key is found - may indicate that the SBB entity has already been removed by the SLEE.ManagementException
- if a system level failure occurs.CompositeData getSbbDiagnostics(ServiceID serviceID, SbbID sbbID, String sbbPKey) throws ManagementException, InvalidPKeyException, UnrecognizedSbbException, UnrecognizedServiceException, UnknownSbbEntityException
Return diagnostic information about the state of a particular SBB entity.
This method returns detailed information about an SBB entity contained within the SLEE.
To locate the SBB entity to inspect the SBB entities service, SBB component ID and primary key are required.
SBB entities primary keys are found using getSbbs(int, javax.slee.ServiceID, javax.slee.SbbID, long, long)
.
For a description of the CompositeData
result type returned by this method refer to SBB Entity Diagnostic Information in the interface description.
serviceID
- ServiceID of the Service containing the SBB.sbbID
- SbbID of the SBB’s component.sbbPKey
- primary key of the SBB (usually a value returned by getSbbs(int, ServiceID)
).InvalidPKeyException
- if the SBB primary key is invalid.UnrecognizedServiceException
- if the service ID doesn’t match any deployed service.UnrecognizedSbbException
- if the SBB component ID doesn’t match any SBB component belonging to the specified service.UnknownSbbEntityException
- if no SBB entity matching the specified primary key is found - may indicate that the SBB entity has already been removed by the SLEE.ManagementException
- if a system level failure occurs.void cancelTimer(String timerID) throws InvalidPKeyException, ManagementException, UnknownTimerException
Cancel a SLEE timer.
Caution: This method irrevocably removes SLEE application state.
This method requires the timer’s primary key, returned by either getTimers(int, java.lang.String, long, long)
and getActivityInfo(String, boolean)
.
timerID
- encoded timer id.UnknownTimerException
- if no timer can be found with the specified primary key - may indicate that the timer has expired or the underlying activity has already ended and all its SLEE state removed.InvalidPKeyException
- if the timer primary key is invalid.ManagementException
- if a system failure occurs.CompositeData getTimerInfo(String timerID) throws InvalidPKeyException, ManagementException, UnknownTimerException
Get information about a SLEE timer.
This method requires the timer’s primary key, returned by either getTimers(int, java.lang.String, long, long)
and getActivityInfo(String, boolean)
.
timerID
- encoded timer id.UnknownTimerException
- if no timer can be found with the specified primary key - may indicate that the timer has expired or the underlying activity has already ended and all its SLEE state removed.InvalidPKeyException
- if the timer primary key is invalid.ManagementException
- if a system failure occurs.void removeActivityBinding(String activityPKey, String name) throws ManagementException, InvalidPKeyException, UnknownActivityException, NameNotBoundException
Remove an activity context naming facility binding.
Caution: This method irrevocably removes application state.
Names bound in the activity context naming facility can be located using getBoundActivities(int, long, long)
)
activityPKey
- the bound activity.name
- the bound name.UnknownActivityException
- if no activity can be found with the specified primary key - may indicate that the activity has already ended and all its SLEE state removed.NameNotBoundException
- if the name is not known to the activity context naming facility, or if the specified activity is not bound to it - may indicate that the name has already been unbound.InvalidPKeyException
- if the activity primary key is invalid.ManagementException
- if a system failure occurs.void removeSbb(ServiceID serviceID, SbbID sbbID, String sbbPKey) throws UnrecognizedServiceException, UnrecognizedSbbException, InvalidPKeyException, ManagementException, UnknownSbbEntityException
Removes an SBB entity.
Caution: This method irrevocably removes application state.
This method forcibly removes stale or unwanted SBB’s from Rhino.
If the SBB to be removed has child SBB’s these will also be removed.
SBB entities can be found using getSbbs(int, javax.slee.ServiceID, long, long)
, getSbbs(int, javax.slee.ServiceID, long, long)
, and getSbbs(int, javax.slee.ServiceID, javax.slee.SbbID, long, long)
serviceID
- ServiceID of the Service containing the SBB.sbbID
- SbbID of the SBB’s component.sbbPKey
- primary key of the SBB (usually a value returned by getSbbs(int, javax.slee.ServiceID)
).InvalidPKeyException
- if the SBB primary key is invalid.UnrecognizedServiceException
- if the service ID doesn’t match any deployed service.UnrecognizedSbbException
- if the SBB component ID doesn’t match any SBB component belonging to the specified service.UnknownSbbEntityException
- if no SBB entity matching the specified primary key is found - may indicate that the SBB entity has already been removed by the SLEE.ManagementException
- if a system level failure occurs.void removeActivity(String activityPKey) throws ManagementException, InvalidPKeyException, UnknownActivityException
Remove an activity.
Caution: This method irrevocably removes application state.
This method forcibly ends an activity in the SLEE and should be used with caution.
Stale activities or activities that might be considered candidates for forced removal can be found using getActivities(int, String, long, long, long, long, boolean)
.
Note that Rhino’s own internal query liveness mechanism is sufficient for normal removal of stale activities. Removal of an activity using this method should only be required in the case of an RA or external resource error preventing Rhino’s query liveness from detecting that the activity is stale.
Note that this method can only remove activities for which the invoked Rhino node (ie.
the instance of this MBean as returned by RhinoHousekeepingMBean.getNodeHousekeeping(int)
) is the processing node.
An activities processing node can be queried using getActivityInfo(String, boolean)
.
activityPKey
- string encoded activity primary key.UnknownActivityException
- if no activity can be found with the specified primary key - may indicate that the activity has already ended and all its SLEE state removed.InvalidPKeyException
- if the activity primary key is invalid.ManagementException
- if a system failure occurs.TabularData getLongRunningTransactions(int maxPerNode, int minAge) throws InvalidArgumentException, ManagementException
Return summary information about long-running transactions in the SLEE. Long running transaction can occur when a profile MBean is left in the read-write state for a prolonged period of time, a client-demarcated user transaction is left active for a prolonged period of time, or a particular management operation takes a long time to complete.
The results are returned as TabularData
, where each entry is a CompositeData
containing summary information about a transaction.
Refer to Long-running Transaction Search Results in the interface descriptor for a descriptor of the CompositeData
records returned by this method.
maxPerNode
- maximum number of transactions to return from each node.minAge
- minimum age, measured in seconds, of transactions to include in the return result.
The minimum value for this argument is 30s.CompositeData
records.InvalidArgumentException
- in minAge
is less than 30
.ManagementException
- if a system failure occurs.void rollbackLongRunningTransaction(int nodeID, long transactionID) throws InvalidTransactionException, ManagementException
Force rollback of a long-running transaction. The transaction must still be active and must have been started at least 30s ago.
nodeID
- The node ID of the cluster member on which the transaction was created.transactionID
- the transaction ID of the transaction.InvalidTransactionException
- if the specified transaction does not exist, is not in the ACTIVE or MARKED FOR ROLLBACK state, or is less than 30s in age.ManagementException
- if a system failure occurs.CompositeData getTransactionStateInfo(int nodeID, long transactionID) throws InvalidTransactionException, ManagementException
Get information about a transaction. For details on the returned data refer to Transaction State Information in the interface description.
nodeID
- The node ID of the cluster member on which the transaction was created.transactionID
- the transaction ID of the transaction.InvalidTransactionException
- if the specified transaction does not exist.ManagementException
- if a system failure occurs.void initiateCleanup(String raEntityName) throws UnrecognizedResourceAdaptorEntityException, ManagementException
Initiate a cleanup of activities that have been removed but not garbage collected.
raEntityName
- Restrict the cleanup to this RA entity (optional).UnrecognizedResourceAdaptorEntityException
- if a resource adaptor entity with the specified name does not exist.ManagementException
- if a system failure occurs.int[] getNodesWithPerNodeActivationState() throws ManagementException
Get the set of node IDs for which per-node activation state currently exists.
ManagementException
- if the node IDs could not be obtained due to a system-level failure.RuntimeConfigManagementMBean.isSymmetricActivationStateModeEnabled()
boolean hasPerNodeActivationState() throws UnsupportedOperationException, ManagementException
Determine if this node has any per-node activation state in existence.
true
if this node has any per-node activation state, false
otherwise.
This method always returns false
if the symmetric activation state mode is enabled.UnsupportedOperationException
- if this method is invoked on an instance of a NodeHousekeepingMBean
created for the cluster rather than a single node.ManagementException
- if the presence of per-node activation state could not be determined due to a system-level failure.RuntimeConfigManagementMBean.isSymmetricActivationStateModeEnabled()
boolean copyPerNodeActivationState(int targetNodeID) throws UnsupportedOperationException, InvalidArgumentException, InvalidStateException, ManagementException
Copy the current per-node activation state of services, resource adaptor entities, and the SLEE from this node to the specified target node.
The target node must not currently be a live cluster member and must not have any existing per-node state.
If it is required to replace existing per-node state for a node, delete the per-node state first using removePerNodeActivationState()
on a NodeHousekeepingMBean
for that node.
targetNodeID
- the node ID of the node to create state for.true
if per-node activation state was found and copied, false
if no per-node activation state was found for this node.UnsupportedOperationException
- if this method is invoked on an instance of a NodeHousekeepingMBean
created for the cluster rather than a single node.InvalidArgumentException
- if targetNodeID
is an invalid node ID.InvalidStateException
- if targetNodeID
is currently a member of the cluster or has existing per-node activation state.
This exception is also thrown if the symmetric activation state mode is enabled.ManagementException
- if the per-node activation state cannot be copied due to a system-level failure.RuntimeConfigManagementMBean.isSymmetricActivationStateModeEnabled()
boolean removePerNodeActivationState() throws UnsupportedOperationException, InvalidStateException, ManagementException
Remove all per-node activation state for services, resource adaptor entities, and the SLEE from this node. The node must not currently be a live event-router cluster member.
true
if per-node activation state was found and removed, false
if no per-node activation state was found for this node.UnsupportedOperationException
- if this method is invoked on an instance of a NodeHousekeepingMBean
created for the cluster rather than a single node.InvalidStateException
- if targetNodeID
is currently a member of the cluster.
This exception is also thrown if the symmetric activation state mode is enabled.ManagementException
- if the per-node activation state cannot be removed due to a system-level failure.RuntimeConfigManagementMBean.isSymmetricActivationStateModeEnabled()
TabularData getEventRouterThreadState(boolean includeIdleThreads) throws ManagementException
Retrieve the current status of all event router threads.
The returned table contains a breakdown of the current task of each event router thread at approximately the same point in time. Event router thread states are read concurrently without interrupting event processing so the result is not guaranteed to be an accurate point in time snapshot only an approximation.
For details on the row type for the returned data refer to Event Router State Results in the interface description.
includeIdleThreads
- if true even idle threads will be included in the resultCompositeData
recordsManagementException
- if event router state cannot be read because of a system level failureTabularData getLocalMemDBStripingNodeConfig() throws ManagementException
Returns the current MemDB striping configuration for local MemDB instances on this node.
The striping config is returned in TabularData
format - one row is returned per local MemDB instance.
Each row contains the following information:
Field | Open Type | Description |
---|---|---|
memdb-resource |
String |
Memdb resource name |
stripe-count |
Integer |
The stripe count |
TabularData
containing node striping configuration information.ManagementException
- if an internal error occurs.