Defines an instance of the persistent store that stores its persistent records in a JDBC-accessible database. It may be used by JMS and by other subsystems.
Since | 9.0.0.0 | ||
Security roles | The following roles have read, write, and invoke permission for all non-encrypted attributes and operations in this MBean:
|
||
Fully Qualified Interface Name | If you use the getMBeanInfo operation in MBeanTypeServiceMBean, supply the following value as this MBean's fully qualified interface name:
weblogic.management.configuration.JDBCStoreMBean
|
||
Factory Methods | |||
Access Points Inherited from DeploymentMBean |
Because this MBean extends or implements DeploymentMBean, you can also access this MBean by retrieving DeploymentMBeans. The following attributes contain DeploymentMBeans and its subtypes:
|
||
Access Points Inherited from PersistentStoreMBean |
Because this MBean extends or implements PersistentStoreMBean, you can also access this MBean by retrieving PersistentStoreMBeans. The following attributes contain PersistentStoreMBeans and its subtypes:
|
||
Subtypes |
The following MBeans extend or implement this MBean type:
|
This section describes attributes that provide access to other MBeans.
|
The JDBC data source used by this JDBC store to access its backing table.
The specified data source must use a non-XA JDBC driver since connection pools for XA JDBC drivers are not supported.
Privileges | Read/Write |
Type | JDBCSystemResourceMBean |
Relationship type: | Reference. |
Redeploy or Restart required | Changes take effect after you redeploy the module or restart the server. |
The server instances, clusters, or migratable targets defined in the current domain that are candidates for hosting a file store, JDBC store, or replicated store. If scoped to a Resource Group or Resource Group Template, the target is inherited from the Virtual Target.
When selecting a cluster, the store must be targeted to the same cluster as the JMS server. When selecting a migratable target, the store must be targeted it to the same migratable target as the migratable JMS server or SAF agent. As a best practice, a path service should use its own custom store and share the same target as the store.
Privileges | Read/Write |
Type | TargetMBean[] |
Relationship type: | Reference. |
This section describes the following attributes:
Private property that disables caching in proxies.
This attribute is not dynamic and requires a server restart to take effect.
Privileges | Read only |
Type | boolean |
Redeploy or Restart required | Changes take effect after you redeploy the module or restart the server. |
Advanced use only: gets the connection caching policy for the JDBC store.
The return values will be one of:
JMSConstants.JDBCSTORE_CONNECTION_CACHING_POLICY_DEFAULT ("DEFAULT")
JMSConstants.JDBCSTORE_CONNECTION_CACHING_POLICY_MINIMAL ("MINIMAL")
JMSConstants.JDBCSTORE_CONNECTION_CACHING_POLICY_NONE ("NONE")
IMPORTANT: See the below for additional usage information, particularly regarding NONE
DEFAULT
The default mode of operation for the JDBC store. The JDBC store will open two connections to the database and it will keep these connections open for the life of the store. In addition, if the worker count for the store is two or more, then it will open one connection for each of the workers and those connections will also stay open for the life of the JDBC store. If the worker count is 3 then the JDBC store will use 5 database connections. If the worker count is the default of 1 then the JDBC store will use just 2 connections.The DEFAULT setting is the recommended setting to be used when the database backing the JDBC store is not constrained with respect to the number of open connections.
MINIMAL
The JDBC store will open one connection to the database and it will keep that connection open for the life of the store. In addition, if the worker count for the store is two or more, then it will open one connection for each of the workers and those connections will also stay open for the life of the JDBC store. If the worker count is 3 then the JDBC store will use 4 database connections. If the worker count is the default of 1 then the JDBC store will use just 1 connection. The MINIMAL setting may result in a slight reduction of through-put for low concurrency messaging scenarios in comparison to DEFAULT.
NONE
The NONE connection caching policy is for 'advanced usage only'. The JDBC store will open one connection to the database on an as-needed basis to perform I/O and it will release that connection when the operation is complete. The NONE value is not compatible with a configured worker count of 2 or more and will result in a configuration validation exception. The NONE setting may result in a slight reduction of through-put for low concurrency messaging scenarios in comparison to DEFAULT or MINIMAL.
NOTE: It is strongly recommended that a JDBC store be configured with a dedicated data source when the store is configured with the NONE connection caching policy. A store that shares a data source with other non-store components or applications runs the risk of failing due to dead-locks. Please note that a JDBC store will require more than one connection when first started. As such, a data source should be configured to grow and shrink so that the JDBC store can initialize.
For more information, see:
Available Since | Release 12.2.1.1.0 |
Privileges | Read/Write |
Type | java.lang.String |
Default Value | DEFAULT |
Legal Values |
|
Specifies the DDL (Data Definition Language) file to use for creating the JDBC store's backing table.
This field is ignored when the JDBC store's backing table,
WLStore
, already exists.
If a DDL file is not specified and the JDBC store detects that a
backing table doesn't already exist, the JDBC store automatically
creates the table by executing a preconfigured DDL file that is
specific to the database vendor. These preconfigured files are
located in the weblogic\store\io\jdbc\ddl
directory of
the
MIDDLEWARE_HOME\modules\com.bea.core.store.jdbc_x.x.x.x.jar
file.
If a DDL file is specified and the JDBC store detects that a backing table doesn't already exist, then the JDBC store searches for the DDL file in the file path first, and then if the file is not found, it searches for it in the CLASSPATH. Once found, the SQL within the DDL file is executed to create the JDBC store's database table. If the DDL file is not found and the backing table doesn't already exist, the JDBC store will fail to boot.
Privileges | Read/Write |
Type | java.lang.String |
The maximum number of table rows that are deleted per database call.
When possible, a JDBC store uses JDBC 3.0 batching to batch concurrent client requests.
Both the maximum batch size for concurrent inserts and for concurrent writes are configurable.
To disable JDBC 3.0 batching, set the maximum batch size to 1.
The maximum batch size has no effect on the maximum number of concurrent client requests.
For more information, see:
Privileges | Read/Write |
Type | int |
Default Value | 20 |
Minimum value | 1 |
Maximum value | 100 |
The maximum number of table rows that are deleted per database call.
Applies only when a JDBC store does not use JDBC 3.0 batching to batch concurrent client requests.
The maximum deletes per statement has no effect on the maximum number of concurrent client requests.
For some databases, the JDBC store may choose a lower value than the one configured.
For more information, see:
Privileges | Read/Write |
Type | int |
Default Value | 20 |
Minimum value | 1 |
Maximum value | 100 |
A priority that the server uses to determine when it deploys an item. The priority is relative to other deployable items of the same type.
For example, the server prioritizes and deploys all EJBs before it prioritizes and deploys startup classes.
Items with the lowest Deployment Order value are deployed first. There is no guarantee on the order of deployments with equal Deployment Order values. There is no guarantee of ordering across clusters.
Privileges | Read/Write |
Type | int |
Default Value | 1000 |
Minimum value | 0 |
Maximum value | 2147483647 |
Specifies how the instances of a configured JMS artifact are named and distributed when cluster-targeted. A JMS artifact is cluster-targeted when its target is directly set to a cluster, or when it is scoped to a resource group and the resource group is in turn targeted to a cluster. When this setting is configured on a store, it applies to all JMS artifacts that reference the store. Valid options:
Distributed
Creates an instance on each server JVM in a cluster. Required for all SAF agents and for cluster-targeted or resource-group-scoped JMS servers that host distributed destinations.
Singleton
Creates a single instance on a single server JVM within a
cluster. Required for cluster-targeted or resource-group-scoped JMS
servers that host standalone (non-distributed) destinations and for
cluster-targeted or resource-group-scoped path services. The
Migration Policy
must be On-Failure
or
Always
when using this option with a JMS server,
On-Failure
when using this option with a messaging
bridge, and Always
when using this option with a path
service.
Instance Naming Note:
The DistributionPolicy
determines the instance name
suffix for cluster-targeted JMS artifacts. The suffix for a
cluster-targeted Singleton
is -01
and for
a cluster-targeted Distributed
is
@ClusterMemberName
.
Messaging Bridge Notes:
When an instance per server is desired for a cluster-targeted
messaging bridge, Oracle recommends setting the bridge
Distributed Policy
and Migration Policy
to Distributed/Off
, respectively; these are the
defaults.
When a single instance per cluster is desired for a
cluster-targeted bridge, Oracle recommends setting the bridge
Distributed Policy
and Migration Policy
to Singleton/On-Failure
, respectively.
If you cannot cluster-target a bridge and still need singleton
behavior in a configured cluster, you can target the bridge to a
migratable target and configure the Migration Policy
on the migratable target to Exactly-Once
.
For more information, see:
Privileges | Read/Write |
Type | java.lang.String |
Default Value | Distributed |
Legal Values |
|
Return whether the MBean was created dynamically or is persisted to config.xml
This attribute is not dynamic and requires a server restart to take effect.
Privileges | Read only |
Type | boolean |
Redeploy or Restart required | Changes take effect after you redeploy the module or restart the server. |
Specifies the amount of time, in seconds, to delay before failing a cluster-targeted JMS artifact instance back to its preferred server after the preferred server failed and was restarted.
This delay allows time for the system to stabilize and dependent services to be restarted, preventing a system failure during a reboot.
A value > 0
specifies the time, in seconds, to
delay before failing a JMS artifact back to its user preferred
server.
A value of 0
indicates that the instance would
never failback.
A value of -1
indicates that there is no delay and
the instance would failback immediately.
This setting only applies when the JMS artifact is
cluster-targeted and the Migration Policy is set to
On-Failure
or Always
.
Privileges | Read/Write |
Type | long |
Default Value | -1 |
Specify a limit for the number of cluster-targeted JMS artifact instances that can fail over to a particular JVM.
This can be used to prevent too many instances from starting on a server, avoiding a system failure when starting too few servers of a formerly large cluster.
A typical limit value should allow all instances to run in the smallest desired cluster size, which means (smallest-cluster-size * (limit + 1)) should equal or exceed the total number of instances.
A value of -1
means there is no fail over limit
(unlimited).
A value of 0
prevents any fail overs of
cluster-targeted JMS artifact instances, so no more than 1 instance
will run per server (this is an instance that has not failed
over).
A value of 1
allows one fail-over instance on each
server, so no more than two instances will run per server (one
failed over instance plus an instance that has not failed
over).
This setting only applies when the JMS artifact is
cluster-targeted and the Migration Policy is set to
On-Failure
or Always
.
Privileges | Read/Write |
Type | int |
Default Value | -1 |
Minimum value | -1 |
Return the unique id of this MBean instance
This attribute is not dynamic and requires a server restart to take effect.
Privileges | Read only |
Type | long |
Redeploy or Restart required | Changes take effect after you redeploy the module or restart the server. |
Specifies the amount of time, in seconds, to delay before starting a cluster-targeted JMS instance on a newly booted WebLogic Server instance. When this setting is configured on a store, it applies to all JMS artifacts that reference the store.
This allows time for the system to stabilize and dependent services to be restarted, preventing a system failure during a reboot.
A value > 0
is the time, in seconds, to delay
before before loading resources after a failure and restart.
A value of 0
specifies no delay.
This setting only applies when the JMS artifact is
cluster-targeted and the Migration Policy is set to
On-Failure
or Always
.
For more information, see:
Privileges | Read/Write |
Type | long |
Default Value | 60 |
The maximum number of table rows that are inserted per database call.
When possible, a JDBC store uses JDBC 3.0 batching to batch concurrent client requests.
Both the maximum batch size for concurrent inserts and for concurrent writes are configurable.
To disable JDBC 3.0 batching, set the maximum batch size to 1.
The maximum batch size has no effect on the maximum number of concurrent client requests.
For more information, see:
Privileges | Read/Write |
Type | int |
Default Value | 20 |
Minimum value | 1 |
Maximum value | 100 |
The name used by subsystems to refer to different stores on different servers using the same name.
For example, an EJB that uses the timer service may refer to its store using the logical name, and this name may be valid on multiple servers in the same cluster, even if each server has a store with a different physical name.
Multiple stores in the same domain or the same cluster may share the same logical name. However, a given logical name may not be assigned to more than one store on the same server.
Privileges | Read/Write |
Type | java.lang.String |
Returns the MBean info for this MBean.
This attribute is not dynamic and requires a server restart to take effect.
Deprecated.
Privileges | Read only |
Type | javax.management.MBeanInfo |
Redeploy or Restart required | Changes take effect after you redeploy the module or restart the server. |
Controls migration and restart behavior of cluster-targeted JMS service artifact instances. When this setting is configured on a cluster-targeted store, it applies to all JMS artifacts that reference the store. See the migratable target settings for enabling migration and restart on migratable-targeted JMS artifacts.
Off
Disables migration support for cluster-targeted JMS service
objects, and changes the default for Restart In Place to false. If
you want a restart to be enabled when the Migration Policy is Off,
then Restart In Place must be explicitly configured to true. This
policy cannot be combined with the Singleton
Migration
Policy.
On-Failure
Enables automatic migration and restart of instances on the failure of a subsystem Service or WebLogic Server instance, including automatic fail-back and load balancing of instances.
Always
Provides the same behavior as On-Failure
and
automatically migrates instances even in the event of a graceful
shutdown or a partial cluster start.
Cluster leasing must be configured for On-Failure
and Always
.
Messaging Bridge Notes:
When an instance per server is desired for a cluster-targeted
messaging bridge, Oracle recommends setting the bridge
Distributed Policy
and Migration Policy
to Distributed/Off
, respectively; these are the
defaults.
When a single instance per cluster is desired for a
cluster-targeted bridge, Oracle recommends setting the bridge
Distributed Policy
and Migration Policy
to Singleton/On-Failure
, respectively.
A Migration Policy
of Always
is not
recommended for bridges.
If you cannot cluster-target a bridge and still need singleton
behavior in a configured cluster, you can target the bridge to a
migratable target and configure the Migration Policy
on the migratable target to Exactly-Once
.
For more information, see:
Privileges | Read/Write |
Type | java.lang.String |
Default Value | Off |
Legal Values |
|
The user-specified name of this MBean instance.
This name is included as one of the key properties in the
MBean's javax.management.ObjectName
:
Name=user-specified-name
This attribute is not dynamic and requires a server restart to take effect.
Privileges | Read/Write |
Type | java.lang.String |
Optional information that you can include to describe this configuration.
WebLogic Server saves this note in the domain's configuration
file (config.xml
) as XML PCDATA. All left angle
brackets (<) are converted to the XML entity
<
. Carriage returns/line feeds are
preserved.
Note: If you create or edit a note from the Administration Console, the Administration Console does not preserve carriage returns/line feeds.
This attribute is not dynamic and requires a server restart to take effect.
Privileges | Read/Write |
Security roles | Write access is granted only to the following roles:
|
Type | java.lang.String |
Specifies the maximum number of restart attempts.
A value > 0
specifies the maximum number of
restart attempts.
A value of 0
specifies the same behavior as setting RestartInPlace tofalse
.
A value of -1
means infinite retry restart until it
either starts or the server instance shuts down.
Privileges | Read/Write |
Type | int |
Default Value | 6 |
Minimum value | -1 |
Returns the ObjectName under which this MBean is registered in the MBean server.
This attribute is not dynamic and requires a server restart to take effect.
Deprecated.
Privileges | Read only |
Type | weblogic.management.WebLogicObjectName |
Redeploy or Restart required | Changes take effect after you redeploy the module or restart the server. |
Enables committing a batch of INSERT or DELETE operations with the last operation of the transaction instead of issuing a separate commit call to database server which saves a server round trip. This feature benefits applications that have many transactions of a small number of operations or small messages.
Deprecated.
Privileges | Read/Write |
Type | boolean |
Return the immediate parent for this MBean
This attribute is not dynamic and requires a server restart to take effect.
Privileges | Read/Write |
Type |
Specifies the amount of time, in seconds, to delay before a
partially started cluster starts all cluster-targeted JMS artifact
instances that are configured with a Migration Policy of
Always
or On-Failure
.
Before this timeout expires or all servers are running, a cluster starts a subset of such instances based on the total number of servers running and the configured cluster size. Once the timeout expires or all servers have started, the system considers the cluster stable and starts any remaining services.
This delay ensures that services are balanced across a cluster even if the servers are started sequentially. It is ignored after a cluster is fully started (stable) or when individual servers are started.
A value > 0
specifies the time, in seconds, to
delay before a partially started cluster starts dynamically
configured services.
A value of 0
specifies no delay.
For more information, see:
Privileges | Read/Write |
Type | long |
Default Value | 240 |
The prefix for the JDBC store's database table
(WLStore
), in the following format:
[[[catalog.]schema.]prefix]
.
Each period symbol in the [[catalog.]schema.]prefix
format is significant, where schema generally corresponds to
username in many databases. When no prefix is specified, the JDBC
store table name is simply WLStore
and the database
implicitly determines the schema according to the JDBC connection's
user. As a best practice, you should always configure a prefix for
the JDBC WLStore
table name.
For specific guidelines about using JDBC store prefixes, refer to the "Using the WebLogic Store" section of Designing and Configuring WebLogic Server Environments".
Privileges | Read/Write |
Type | java.lang.String |
The length of time in milliseconds between reconnection attempts during the reconnection retry period.
The reconnection interval applies to JDBC connections regardless of the database that is used for the JDBC store.
The default value is 200 milliseconds
For more information, see:
Available Since | Release 12.2.1.0.0 |
Privileges | Read/Write |
Type | int |
Default Value | 200 |
Minimum value | 100 |
Maximum value | 10000 |
Returns the length of time in milliseconds during which the persistent store will attempt to re-establish a connection to the database. Successive reconnection attempts will be attempted after a fixed delay that is specified by the reconnection retry interval.
The reconnection period applies to JDBC connections regardless of the database that is used for the JDBC store.
The default value is 1000
For more information, see:
Available Since | Release 12.2.1.0.0 |
Privileges | Read/Write |
Type | int |
Default Value | 1000 |
Minimum value | 200 |
Maximum value | 300000 |
Returns false if the MBean represented by this object has been unregistered.
This attribute is not dynamic and requires a server restart to take effect.
Deprecated.
Privileges | Read only |
Type | boolean |
Redeploy or Restart required | Changes take effect after you redeploy the module or restart the server. |
Enables a periodic automatic in-place restart of failed cluster-targeted or standalone-server-targeted JMS artifact instance(s) running on healthy WebLogic Server instances. See the migratable target settings for in-place restarts of migratable-targeted JMS artifacts. When the Restart In Place setting is configured on a store, it applies to all JMS artifacts that reference the store.
If the Migration Policy of the JMS artifact is set to
Off
, Restart In Place is disabled by default.
If the Migration Policy of the JMS artifact is set to
On-Failure
or Always
, Restart In Place is
enabled by default.
This attribute is not used by WebLogic messaging bridges which automatically restart internal connections as needed.
For a JMS artifact that is cluster-targeted and the Migration
Policy is set to On-Failure
or Always
, if
restart fails after the configured maximum retry attempts, it will
migrate to a different server within the cluster.
For more information, see:
Privileges | Read/Write |
Type | boolean |
Specifies the amount of time, in seconds, to wait in between attempts to restart a failed service instance.
Privileges | Read/Write |
Type | int |
Default Value | 30 |
Minimum value | 1 |
Return all tags on this Configuration MBean
This attribute is dynamic and takes effect immediately.
Available Since | Release 12.2.1.0.0 |
Privileges | Read/Write |
Type | class java.lang.String[] |
Specifies the threshold, in bytes, when the JDBC store uses 3 steps (insert, select, populate) instead of 1 step (insert) to populate an Oracle Blob data type.
Applies only to Oracle databases where a Blob data type is used instead of the default Long Raw data type for record data.
The default value is 200000.
Privileges | Read/Write |
Type | int |
Default Value | 200000 |
Minimum value | 4000 |
Maximum value | 2147483647 |
Returns the type of the MBean.
This attribute is not dynamic and requires a server restart to take effect.
Privileges | Read only |
Type | java.lang.String |
Redeploy or Restart required | Changes take effect after you redeploy the module or restart the server. |
The number of JDBC store worker threads to process the workerload.
A value of 1 indicates a single thread is used (the default).
A value greater than 1 indicates that multiple threads are used.
For Oracle databases, Oracle recommends users rebuild the primary key index into a reverse index for the JDBC Store table when the worker count is greater than 1.
For non-Oracle databases, refer to the database provider's documentation for help with indexing.
Privileges | Read/Write |
Type | int |
Default Value | 1 |
Minimum value | 1 |
Maximum value | 1000 |
Specifies the batch size when the Worker Count
attribute is configured to a value greater than 1.
Used to configure the workload the JDBC store incrementally puts on each worker thread. The workload consists of IO requests which are grouped and pushed to each JDBC worker thread for processing. If the IO request is very large (for example 1M), then tune this attribute to a smaller value.
Privileges | Read/Write |
Type | int |
Default Value | 10 |
Minimum value | 1 |
Maximum value | 2147483647 |
Overrides the name of the XAResource that this store registers with JTA.
You should not normally set this attribute. Its purpose is to allow the name of the XAResource to be overridden when a store has been upgraded from an older release and the store contained prepared transactions. The generated name should be used in all other cases.
Privileges | Read only |
Type | java.lang.String |
Redeploy or Restart required | Changes take effect after you redeploy the module or restart the server. |
This section describes the following operations:
Add a tag to this Configuration MBean. Adds a tag to the current set of tags on the Configuration MBean. Tags may contain white spaces.
Operation Name | "addTag" |
Parameters | Object [] { tag }
where:
|
Signature | String [] {
"java.lang.String" } |
Returns |
boolean
|
Exceptions |
|
Targets a server instance to a store.
Operation Name | "addTarget" |
Parameters | Object [] { target }
where:
|
Signature | String [] {
"weblogic.management.configuration.TargetMBean" } |
Returns |
boolean
|
Exceptions |
|
If the specified attribute has not been set explicitly, and if the attribute has a default value, this operation forces the MBean to persist the default value.
Unless you use this operation, the default value is not saved and is subject to change if you update to a newer release of WebLogic Server. Invoking this operation isolates this MBean from the effects of such changes.
Note: To insure that you are freezing the default value, invoke
the restoreDefaultValue
operation before you invoke
this.
This operation has no effect if you invoke it on an attribute that does not provide a default value or on an attribute for which some other value has been set.
Deprecated.
Operation Name | "freezeCurrentValue" |
Parameters | Object [] { attributeName }
where:
|
Signature | String [] {
"java.lang.String" } |
Returns |
void
|
Exceptions |
|
Return all properties' names whose value is inherited from template mbean. this is a convenient method to get inheritance info on multiple properties in one jmx call.
Operation Name | "getInheritedProperties" |
Parameters | Object [] { propertyNames }
where:
|
Signature | String [] {
"[Ljava.lang.String;" } |
Returns |
class |
Check if the value of a property is inherited from template mbean or not.
Operation Name | "isInherited" |
Parameters | Object [] { propertyName }
where:
|
Signature | String [] {
"java.lang.String" } |
Returns |
boolean
|
Returns true if the specified attribute has been set explicitly in this MBean instance.
Operation Name | "isSet" |
Parameters | Object [] { propertyName }
where:
|
Signature | String [] {
"java.lang.String" } |
Returns |
boolean
|
Remove a tag from this Configuration MBean
Operation Name | "removeTag" |
Parameters | Object [] { tag }
where:
|
Signature | String [] {
"java.lang.String" } |
Returns |
boolean
|
Exceptions |
|
Untargets a server instance from a store.
Operation Name | "removeTarget" |
Parameters | Object [] { target }
where:
|
Signature | String [] {
"weblogic.management.configuration.TargetMBean" } |
Returns |
boolean
|
Exceptions |
|
If the specified attribute has a default value, this operation removes any value that has been set explicitly and causes the attribute to use the default value.
Default values are subject to change if you update to a newer
release of WebLogic Server. To prevent the value from changing if
you update to a newer release, invoke the
freezeCurrentValue
operation.
This operation has no effect if you invoke it on an attribute that does not provide a default value or on an attribute that is already using the default.
Deprecated.
Operation Name | "restoreDefaultValue" |
Parameters | Object [] { attributeName }
where:
|
Signature | String [] {
"java.lang.String" } |
Returns |
void
|
Exceptions |
|
Restore the given property to its default value.
Operation Name | "unSet" |
Parameters | Object [] { propertyName }
where:
|
Signature | String [] {
"java.lang.String" } |
Returns |
void
|