- Added in Builder 6.0
As persistent state is an integrated part of E2E Bridge, there is no requirement for additional components. The Components Wizard is used to create this diagram. For more details, refer to the E2E Builder User's Guide.
In the picture below, the completed component diagram of the Purchase Order example is displayed.
Figure: Components Diagram for Purchase Order Example
In the specification dialog of the E2E Composite, you can configure the persistent state engine.
Figure: Specification of E2E Composite PurchaseOrderExample
Attribute | Type | Description | Value | Description |
---|---|---|---|---|
Persistent State | ||||
External State DB Alias | String | If you are using an external storage medium, you can specify the DB alias in External State DB Alias. | ||
Storage Medium | String | Storage Medium defines where the persisted data and additional information like pending events and current states are kept. See section Data Storage for a discussion of the options. When using a database instance as storage medium, make sure to configure components and deployment of the SQL adapter as described in section SQL Adapter. | memory | The persistent state data is kept in memory. On service shutdown, data is written to the file system. |
local (default) | The persistent state data is kept in a local SQLite database that is delivered with the E2E Bridge. | |||
external | The persistent state data is kept in an external database that has to be defined as a service backend. Use External State DB Alias to specify the database. | |||
volatile | The persistent state data is kept in memory. On service shutdown, data is lost. | |||
Workers | Integer | Workers defines the maximum number of parallel threads used to process pending events. The default setting is 5, which is used if none or 0 workers are configured. The implications of more or less workers are discussed in Performance Considerations of Persistent State. | ||
Switch Over Enabled | Boolean | This flag enables the automatic fail over mechanism for clustered persistent state databases. If the persistent state database becomes inoperative, the E2E xUML Runtime will try to open a connection to compensatory database of the cluster. See also option Switch Over Retry Timeout. | false (default) | fail over mechanism not enabled |
true | fail over mechanism enabled | |||
Switch Over Retry Timeout | Integer | During fail over, the E2E xUML Runtime will try to create a new database connection to a compensatory database (see Switch Over Enabled). If this fails, the xUML Runtime will try to open a new connection every second until the timeout (in seconds) is reached. Default is 600 seconds. | ||
Internal State DB Synch | String | Internal State DB Synch defines the level of file system synchronization performed on the internal persistent state database. | OFF (default) | SQLite continues without syncing as soon as it has handed data off to the operating system. If the xUML service crashes, the data will be safe, but the database might become corrupted if the operating system crashes or the computer loses power before that data has been written to the disk surface. Very fast. |
NORMAL | The SQLite database engine will still sync at the most critical moments, but less often than in FULL mode (see below). There is a very small (though non-zero) chance that a power failure at just the wrong time could corrupt the database in NORMAL mode. But in practice, you are more likely to suffer a catastrophic disk failure or some other unrecoverable hardware fault. Up to 50 times slower than OFF. | |||
FULL | The SQLite database engine will ensure that all content is safely written to the disk surface prior to continuing. This ensures that an operating system crash or power failure will not corrupt the database. FULL synchronous is very safe, but it is also slower than NORMAL. FULL is the most commonly used synchronous setting. | |||
EXTRA | Also synchronize the DB transaction journal after every commit. Equals FULL in E2E Bridge context. |
Persistent State Components of E2E Builder Version 5.1
- Deprecated since Builder 6.0