Using H2 as the Persistence Provider
* 
Starting from ThingWorx 9.5, H2 database will not be supported. For more information. see End of Life (EOL) notification for ThingWorx persistence provider - H2 Database.
H2 is an open source Java SQL database. H2 is an embedded database that is available when ThingWorx is installed and it cannot be added as a secondary database. The H2 persistence provider supports both model and data providers.
Name
Default Value
Notes
Initial Connection Pool Size
5
Number of connections a pool will try to acquire upon startup
Connection Acquire Increment
5
Determines how many connections will be acquired when the pool is exhausted
Max Connection Pool Size
100
Maximum number of connections a pool maintains at any given time
Min Connection Pool Size
5
Minimum number of connections a pool maintains at any given time
Max Cached Statements
100
Size of global PreparedStatement cache
Acquire Retry Attempts
3
Defines how many times the connection pool will try to acquire a new connection
Acquire Retry Delay
10000
Time in milliseconds in which the connection pool will wait between acquire attempts
Checkout Retry Timeout
1000000
Number of milliseconds a client calling getConnection will wait for a connection to be checked in or acquired when the pool is exhausted
Max Idle Time
0
Seconds a connection can remain pooled but unused before being discarded. Zero means idle connections never expire.
Max Connection Age
0
Connections older than this time, in seconds, will be destroyed and purged from the pool. Zero means no maximum age is enforced.
Number of Helper Threads
8
Slow JDBC operations are generally performed by helper threads that do not hold contended locks. Spreading these operations over multiple threads can significantly improve performance by allowing multiple operations to be performed simultaneously.
Unreturned Connection Timeout
0
If the application acquires a connection but failed to close it within the specified period of time, in seconds, the pool will destroy the connection. Zero means no timeout, and the applications are expected to close their own connections.
Max Idle Time for Excess Connections
300
Number of seconds that connections in excess of minPoolSize should be permitted to remain idle in the pool before being destroyed. Zero means no enforcement and excess connections are not destroyed.
Max Cached Statements Per Connection
50
You should not change this value since it is tuned to the number of frequently-used statements in the code. It is the number of prepared statements that c3p0 will cache for a single-pooled connection. If both maxStatements and maxStatementsPerConnection are zero, statement caching will not be enabled. If maxStatementsPerConnection is zero but maxStatements is a non-zero value, statement caching will be enabled, and a global limit will be enforced. Otherwise, no limit will be set on the number of cached statements for a single connection.
If set, maxStatementsPerConnection should be set to the number of distinct prepared statements that are used frequently in your application, plus two or three extra so infrequent statements do not force the common cached statements to be called.
Although maxStatements is the JDBC standard parameter for controlling statement caching, users may find maxStatementsPerConnection more intuitive to use.
Table Lock Timeout
10000
The number of seconds until a lock timeout exception is thrown.
Query Timeout
600000
The amount of time (in milliseconds) a query will wait to complete before it is cancelled.
Network Timeout
900000
The amount of time (in milliseconds) for a thread to wait for response from database.
If no response is received within this configured time, platform will close the underlying connection and will release the thread waiting for the response.
Producer Timeout
3000
This setting applies to the Stream Entry Processors and is currently only effective for Persistent Property Processor.
In the event that a queue is full and does not have space for a new entry, this is the maximum time (milliseconds) a producer will wait to put entry on the queue. Once this wait time is over, if still the queue is full and space cannot be made available, then the entry will fail to be added to queue.
Database Connection Stack Trace Settings
Default
Notes
Threshold Database Connection Pool Saturation to trigger Stack Traces (in Percent)
90
Threshold for a database connection pool to reach saturation to trigger Stack Traces.
Count of Set of Stack Traces logged once triggered
5
Count of Set of Stack Traces logged once the stack trace settings are triggered
Interval at which the Stack Traces will be logged (in Seconds)
10
The time interval at which the Stack Traces will be logged.
Minimum elapsed time before Stack Trace logging triggers again (in Minutes)
60
The minimum time elapsed before Stack Trace logging triggers again.
Duration the connection is held for Stack Traces to be logged (in milliseconds)
1000
The time duration the connection is held for Stack Traces to be logged.
Was this helpful?