A Correlation RA entity configuration consists of:

Tip The Correlation resource adaptor supports live re-configuration, so the administrator may update the configuration properties of a Correlation resource adaptor entity that has already been created.

Correlation RA configuration properties

The Correlation RA configuration properties are:

Name

Type

Description

ConfigProfileTable

String

The SLEE profile table with an RA configuration profile for this RA entity.

ConfigProfile

String

The SLEE profile in the ConfigProfileTable with configuration for this RA entity.

CorrelationIdPoolProfileTable

String

The SLEE profile table with correlation ID pool definitions for this Correlation RA entity.

The example Correlation RA entity has the following configuration:

[admin@localhost (#0)] listraentityconfigproperties correlation-ra
Configuration properties for resource adaptor entity correlation-ra:
 ConfigProfile (java.lang.String): CorrelationConfigProfile
 ConfigProfileTable (java.lang.String): CorrelationConfigTable
 CorrelationIdPoolTable (java.lang.String): CorrelationIdPoolTable
 slee-vendor:com.opencloud.rhino_max_activities (java.lang.Integer): 0
 slee-vendor:com.opencloud.rhino_replicate_activities (java.lang.String): none

Correlation RA entity configuration profile

The Correlation RA configuration profile has the following attributes:

Name

Type

Description

CorrelationIDExpiryTimerPeriod

Int

The maximum time (measured in ms) that an active correlation ID is considered to be still valid.

Default: 30000

NumberOfThreadPool

Int

How many threads the Correlation RA entity should use.

Default: 5

StateDistributionTimeout

Int

The maximum time (measured in ms) that the Correlation RA entity will allow for distributing correlation state to the cluster during a RA configuration update. Correlation requests are suspended while state distribution is in progress.

Default: 3000

For example, the correlation-ra RA entity that is deployed with the example service has the following configuration:

[admin@localhost (#3)] listprofileattributes CorrelationConfigTable CorrelationConfigProfile
CorrelationIDExpiryTimerPeriod=10000
NumberOfThreadPool=20
StateDistributionTimeout=3000

Correlation RA entity ID pools configuration

Each Correlation RA entity has one or more correlation ID pools.

  • a default ID pool (optional)

  • a set of named ID pools. Each named ID pool is identified by a set of prefixes for choosing/selecting the ID pool. From the Correlation RA standpoint, the prefixes can be any address string. The client to the RA provides an address that the RA uses via the longest prefix match address list search to select the pool to use.

Each correlation ID pool is defined in a SLEE profile in an ID pools profile table. There is one correlation ID pools table per Correlation RA entity.

Tip The correlation resource adaptor entity will raise an alarm if there are no correlation ID pools configured, or if there are configuration errors with the correlation ID pools. Click here for more information on alarms

Name

Type

Description

AddressPrefixes

Array

An array of address prefixes that corresponds to this pool. The default pool has an empty addressPrefixes array.

NodeIds

Array

An array of node IDs for which this pool has correlation IDs.

Default: [101]

IsPreconfiguredCorrelationIdSetUsed

Boolean

If true, configure this ID pool with a pre-configured set of correlation IDs, else derive the correlation IDs.

Default: true

PreconfiguredCorrelationIdSet

Array

The preconfigured set of correlation IDs per node (delimited with ‘:’).

Default: [34610000001:34610000002:34610000003]

MinCorrelationIDInCluster

Int

The minimum correlation ID value used in the cluster. 0 to maxCorrelationIDInCluster

Default: 0

MaxCorrelationIDInCluster

Int

The maximum correlation ID value used in the cluster. 0 to (10^18-1)

Default: 999

CorrelationIDNumberOfDigits

Int

The number of digits the correlation ID should have. Minimum of number of digits in maxCorrelationIDInCluster to 18 maximum.

Default: 10

CorrelationIDRangePerNode

Array

The number of correlation IDs that can be used for each node in the cluster.

Default: [1000]

Tip When updating configuration properties set them using the same setprofileattributes command i.e.
[admin@localhost (#3)] setprofileattributes CorrelationIdPoolTable _DEFAULT_ maxCorrelationIDInCluster 40000 isPreconfiguredCorrelationIdSetUsed false  PreconfiguredCorrelationIdSet [] correlationIDRangePerNode [10000,10000,10000] NodeIds [101,102,103]

There are two possible configuration options for correlation ID pools.

  • prescribed set of IDs for each node

  • range of correlation IDs (min, max) for each node

A prescribed set of IDs for each node

Defines the prescribed correlation IDs for each node in the following way:

  • NodeIds[0] — PreconfiguredCorrelationIdSet[0] which is a ‘:’ separated string containing all the correlation IDs for NodeIds[0]

  • NodeIds[1] — PreconfiguredCorrelationIdSet[1] which is a ‘:’ separated string containing all the correlation IDs for NodeIds[1]

  • etc.

Tip ‘:’ is used as a separator and not to specify a range. For example, to specify IDs 123, 124, 125 and 126 use a value of 123:124:125:126.

A range of correlation IDs (min, max) for each node

Defines the range of values used in each node in conjunction with the NodeIds attribute in the following way:

  • The node whose identifier is NodeIds[i] has a range of values of CorrelationIDRangePerNode[i]

  • Each cluster has a range of CorrelationIDs defined by: [MinCorrelationIDInCluster, MaxCorrelationIDInCluster]

These values are allocated to the different cluster nodes in the following way:

  • NodeIds[0] — [MinCorrelationIDInCluster …​ MinCorrelationIDInCluster + CorrelationIDRangePerNode[0]]

  • NodeIds[1] — [MinCorrelationIDInCluster + CorrelationIDRangePerNode[0] + 1 …​ MinCorrelationIDInCluster + +CorrelationIDRangePerNode[0] + 1 + CorrelationIDRangePerNode[1]]

  • etc.

The maximum number of correlation IDs defined in the range is 1,000,000.

Previous page Next page