Server Side Properties

The server side properties, residing in a file carnot.properties in the classpath have to be available in the Infinity Process Platform runtime environment. You will find this file in the root directory of the carnot-engine.jar that is included within the carnot.ear file.

In case of Spring local mode, both Infinity Process Platform property files (client and server) have to be merged.

EJB

Parameters Description Range
EJB.ServerVendor the vendor of the EJB container. BES, JBOSS, PRAMATI, SUN, TRIFORK, WAS, WEBLOGIC

Model Settings

Parameters Property Description Default Range
carnot.log.load.filter Boolean If the value is set to true, XML parsing messages during model loading will be displayed. If the property is not set or the value is false, the error messages will not be displayed. false true, false
Model.Watcher String Class to be used to bootstrap the model manager and receive process model information during process execution.

Service

Parameters Property Description Default Range
Web.ServiceFactory String the service factory implementation used for retrieving Infinity Process Platform services. org.eclipse.stardust.engine.api.spring.SpringServiceFactory org.eclipse.stardust.engine.api.spring.SpringServiceFactory
xxxService.Guarded
(e.g. QueryService.Guarded)
String option to switch on and off the security check for the service

Note
It is not recommended to change this property. Changing the value to false introduces a high risk of executing services without having a permission and hence might cause a severe security hole in the deployment!

true true: makes the grants set in the Eclipse modeler or Modeling perspective active.
false: makes access to all methods possible for all users without checking.
Carnot.WebService.SessionCache.Timeout Integer integer representing seconds until the entry expires 300 seconds One second upwards. Value should be specified only in seconds.
Carnot.WebService.SessionCache.RenewOnAccess true Specifies if access will renew the entry timestamp true true, false
Carnot.WebService.SessionCache.ReAuthenticationInterval Integer Determines if re-authentication is enabled
  • 0: re-authentication properties are transferred
  • -1: no re-authentication properties are added
Note that this property can only be transferred in EJB tunneling and Spring deployments!
-1

AuditTrail / Schema

Parameters Property Description Default Range
Carnot.AuditTrail.ActivityInstanceHistory.Enabled Boolean Configures if the activity instance history logging is enabled at all.
Is required to be enabled if using the PerformingOnBehalfOfFilter.
true true, false
Carnot.AuditTrail.ActivityInstanceHistory.ImplementationTypeFilter String Configures which types of activity instances are logging. Manual, Application comma separated list of ImplementationType keys
AuditTrail.EnforceUnicode Boolean If true, all text columns will be created as NVARCHAR / NTEXT instead of VARCHAR / TEXT. Also all DML uses syntax N<some text> instead of <some text>.
Note that this is currently only be evaluated for MSSQL! Also note that the property has an effect on newly created schemas only.
false true, false
AuditTrail.Type String the type of the audit trail database used ORACLE
  • ORACLE - for Oracle
  • DB2_UDB - for IBM DB2 UDB
  • MSSQL - for Microsoft SQL Server 2000
  • MYSQL - for MySQL Server
  • MYSQL_SEQ - for MySQL Server with sequences
  • DERBY - for Apache Derby
  • POSTGRESQL - for PostgreSQL ORDBMS
  • SYBASE - for Sybase
AuditTrail.SequenceGenerator String determines the way how database calls are performed concerning sequence values The following sequence generators are provided by Infinity:
  • org.eclipse.stardust.engine.core.persistence.jdbc.sequence.NonCachingSequenceGenerator
    - one database call per sequence value, and one sequence call per sequence value
  • org.eclipse.stardust.engine.core.persistence.jdbc.sequence.CachingSequenceGenerator
    - one database call for more than one sequence value, but one sequence call per sequence value
  • org.eclipse.stardust.engine.core.persistence.jdbc.sequence.FastCachingSequenceGenerator
    - one database call for more than one sequence value, and only one sequence call for more than one sequence value
AuditTrail.UseJdbcReturnGeneratedKeys Boolean If set to true, the default extra round trip to retrieve the database generated keys on non-sequence databases (after the INSERT statement), will be avoided. The support provided by JDBC 1.4 for retrieving database generated keys directly from the INSERT statement will be used instead. false true, false
AuditTrail.FixAutoCommit Boolean determines if a correction should be performed for commit behavior
false: no correction will be performed
true: set the auto commit option for a new database connection to false, in case it was true.
false true, false
AuditTrail.Schema String the database schema to use
AuditTrail.InterceptJdbcCalls Boolean Determines JDBC exception handling. If set to true, an exception will directly be caught during the creation of a data value bean in the engine. It will be tried up to three times to load the instance of an already existing data value bean, which has been created meanwhile from a parallel thread. false true, false
AuditTrail.UsePreparedStatements String Optionally use prepared statements to improve performance.
  • true - use prepared statements
  • false - do not use prepared statements
  • mixed - use prepared statements additionally (deprecated)

Note
Value false should only be used for debugging purposes! In production scenarios please use true or mixed instead.

true
  • true
  • false
  • mixed (deprecated)
AuditTrail.AssertReadCommitted Boolean if set to false, the check on READ_COMMITTED will be ignored. true
Infinity.Preferences.Store String Determines if preferences are read from AuditTrail or DMS. AuditTrail
  • DMS_READ_ONLY: preferences are read from DMS.
  • AuditTrail: preferences are read from audit trail (default).
Stardust.Engine.Data.WriteHistoricalDataToDb Boolean Determines if to write historical data to the AuditTrail database.
If this property is set to true, all data changes for primitive data will be written to the data_value_history table, including a time stamp of the data change, the oid of the changing user, and the OID of the activity instance in which the data has been changed. Note that large strings will utilize the string_data table for their values.
If the OID of the activity instance is 0, the data has not been changed through a data mapping on an activity instance but through a data path on the process instance.
In case the property is set to false, the data history will not be tracked.
false true, false
XPath.StrictEvaluation Boolean Determines if strict XPath evaluation is enabled or not in XSD schemas
  • true:
    an error is thrown (IllegalOperationException: MDL01123 - XPath 'FullName' is not defined.)
  • false:
    a warning is logged
For details please refer to section XSD Schema Validation of chapter XPDL Representation of Structured Data Types.
true true, false

JMS

Parameters Property Description Default Range
JMS.ProcessTrigger.ThreadMode String Determines if processes should be started in a synchronous or asynchronous manner; valid for all triggers. asynchronous asynchronous, synchronous (the option ProcessEngine.TRIGGER_ID.ThreadMode will not be evaluated)
ProcessEngine.TRIGGER_ID.ThreadMode Boolean In case the property is set, it determines if processes for a trigger with id TRIGGER_ID should be started in synchronous (true) or asynchronous (false) manner. If not specified, the model setting is used. not specified true, false
JMS.<listener_name>.ProcessingFailure.Mode the strategy used to treat incoming JMS messages causing processing errors. A value of 'rollback' will cause the message to be put back into the JMS queue, causing vendor specific re-delivery behavior. A value of forget will remove the message from the queue disregarding the error.
Possible values for <listener_name> are ResponseHandler (having a value of rollback recommended), DaemonListener and MessageListener (both having a value of forget recommended).
rollback, forget (defaults to 'forget')
JMS.<listener_name>.ProcessingFailure.Retries Integer (defaults to 20) The number of delayed retries to be attempted before giving up handling an incoming JMS message causing errors and continuing as specified with the property JMS.<listener_name>.ProcessingFailure.Mode.
Possible values for <listener_name> are ResponseHandler, DaemonListener and MessageListener (both having a value of forget recommended).
JMS.<listener_name>.ProcessingFailure.Pause Integer (defaults to 500) the number of milliseconds delay before retrying to handle an incoming JMS message causing errors as specified with the property
JMS.<listener_name>.ProcessingFailure.Retries.
Possible values for <listener_name> are ResponseHandler, DaemonListener and MessageListener'(both having a value of forget recommended).

Mail Settings

Parameters Property Description Default
Mail.Sender String name of mail sender
Mail.Host String name of mail host
Mail.SubjectEnhancedWithDetails (deprecated) Boolean true:
The subject of a mail is enhanced by process and activity OIDs and the activity name, e.g: 7#14 test subject(Activity Application Activity 1). Whereby the first number represents the process instance OID and the second number represents the activity instance OID. The name of the activity is appended in parentheses.
false:
The subject of the mail will not be enhanced with additional information.
true
mail.smtp.auth Boolean Determines if SMTP authentication is enabled or disabled. If set to true, the following properties are also available for authentication settings:
  • mail.smtp.port
  • mail.smtp.user
  • mail.smtp.password
false
mail.smtp.port String Port for SMTP authentication. Available if mail.smtp.auth is set to true. 465
mail.smtp.user String Username for SMTP authentication. Available if mail.smtp.auth is set to true.
mail.smtp.password String Password for SMTP authentication. Available if mail.smtp.auth is set to true.

Concurrency

Parameters Property Description Default Range
ProcessEngine.Recovery.ThreadMode String recovery thread mode synchronous, asynchronous
ProcessEngine.ProcessTermination.ThreadMode String process termination thread mode synchronous, asynchronous
ProcessEngine.Notification.ThreadMode String notification thread mode synchronous, asynchronous

Daemon

Parameters Property Description Default
<daemon_name>.Periodicity Integer the execution period of the daemon in seconds. The <daemon_name> can be one of the following:
  • mail.trigger
  • timer.trigger
  • event.daemon
  • system.daemon
  • criticality.daemon
  • benchmark.daemon
5
reporting.daemon.Periodicity Integer has the same functionality as the general <daemon_name>.Periodicity property except for the default value 60
event.daemon.DisabledDaysOfWeek Integer option to disable the event daemon at specific days. Specify the days of the week by using the numbers 1 to 7 (comma-separated). Please take care of the fact, that the week starts on Sunday. (Note that this mechanism only delays the escalation timestamp. It does not exclude these days out of the calculation of this timestamp.)
<daemon_name>.BatchSize Long batch size for daemon execution. Please choose an appropriate value. If the batch size is too small, you may not get the desired performance and a timeout might occur, as the daemon needs too long to process the large number of small packages. On the other hand, values too large could cause the batch to get rolled back and lead to timeout. Long.MAX_VALUE
system.daemon.PasswordNotifier.Periodicity Integer configures the daemon action. Number of days - next loop starts in the given number of days after last pass. 1
<daemon_name>.AckRetries Integer the number of retries to get a daemon operation acknowledgment. 10
<daemon_name>.AckWait Integer the number of seconds to wait between two daemon operation acknowledgments. 2 seconds
Stardust.Engine.Daemon.Acknowledge.Retry Integer the number of daemon retries 3
Stardust.Engine.Daemon.Acknowledge.Delay Integer the time delay between the daemon retries 500 ms
Stardust.Engine.Daemon.ExclusiveExecutionTypes String Forces the engine to avoid parallel execution of all listed daemons. The daemons are provided in a comma-separated list, e.g. criticality.daemon,benchmark.daemon.
If one of the listed daemons is currently execution a job, it cannot execute a second instance of the daemon job (default behavior) as well as any job of one of the other listed daemons.

Security

Parameters Property Description Default Range
Security.DefaultPartition String default value for target partition
Security.DefaultDomain String default value for target domain
Security.DefaultRealm String default value for user's realm carnot
Security.DefaultUser String default value for user name
Security.Password.Encryption String determines, if password encryption is enabled or disabled. If set to true, all passwords will be automatically encrypted. This process takes place when the user tries to login and the engine identifies that the password of the AuditTrail is not encrypted. false
Security.Password.LoginDialogUrl String the URL of the portal (login page). If this URL is provided as property, it will be included in the password notification email, which the user receives after a new password is generated. If not provided, the notification email does not contain a URL.
Security.Password.ResetServletUrl String the URL of the reset servlet. If this URL is provided as property, it will be included in the password token generation notification e-mail, which the user receives when he used the Forgot Password option in the Portal to change his password. If not provided, the notification e-mail does not contain a URL.
Security.Principal.Secret String used in the kernel to generate a signature for authenticated principals.
Principals with invalid signatures will be denied. If this property is not set, a randomized value will be generated. Note that this value needs to be set in cluster mode to prevent that each node will generate its own value which is incompatible with the other nodes.
Security.Principal.Validator String Specifies the fully qualified class name of the principal validator class to be used for validating the passed principal on the server side. org.eclipse.stardust.engine.core.spi.security.AlwaysValidPrincipalValidator
Security.PromptPartition Boolean flag to provide the login screen with additional input field for partition false
Security.PromptDomain Boolean flag to provide the login screen with additional input field for domain false
Security.PromptRealm Boolean flag to provide the login screen with additional input field for realm false
Security.Domain String value for target domain
Security.Realm String value for user's realm
Security.Partition String value for target partition
Security.User String value for user name
Security.LoginUsersWithoutLoginLogging String Determines a list of users by IDs or OIDs for which logging in log entry table is disabled on login.
  • empty: logging is enabled for all users
  • * : logging on login is disabled for all users
  • list of user OIDs: logging on login is disabled for specific users with OIDs mentioned in list
  • list of user IDs: logging on login is disabled for specific users with IDs mentioned in list
empty string
Security.LoginUsersWithoutTimestamp String [* | userList ]:
  • *: no login timestamp logging for any user
  • userList: comma separated list of either user IDs or user OIDs.
Note: if a userList is parsed, any token is first tried to be parsed as user OID, and only tested against the user ID if parsing as OID fails. This has to be considered if user IDs are numeric.
Carnot.AuditTrail.Session.NoSessionTracking String Contains a comma separated list of user IDs (Accounts) and user OIDs, for which the session tracking is disabled for. Use * to disable session tracking for all users.
Security.Authentication.Mode String Determines the mode of authentication. If the value is different than internal, authentication will be external. In that case the Login Provider needs to be in place and configured as usual. Note that if Security.Authorization.Mode is set to internal, a Synchronization Provider is also required, if the Security.Authentication.Mode is set to external. internal internal, external, principal, jaas
Security.Authentication.ConfigurationName String configuration name
Security.Authentication.PrincipalClass String The class to filter out as the principal used.
Security.Authentication.MaximumNumberLoginRetries Integer name of the option for the maximum number of login retries option 3
Security.Authentication.InvalidationTimeInMinutes Integer name of the option for the invalidation time in minutes option 1
Security.Authentication.LoginService String authentication service
Security.Authorization.Mode String Allows configuring of external authentication/internal authorization. If the value is different than internal, authorization will be external. In that case the Synchronization Provider needs to be in place and configured as usual. internal internal, external
Security.Authorization.SynchronizationProvider String synchronization provider
Security.Authorization.SynchronizationStrategy String authorization synchronization strategy class property
Security.Authorization.SynchronizeOnAdministrationSession Boolean If set to true, it is allowed to import (or create if it does not already exist) a user on calling the service method UserService.getUser(String account [, String realm]).
If set to false and it needs to be imported, an ObjectNotFoundException with ErrorCode "AUTHx00548" is thrown.
true true, false
Security.Authorization.SynchronizeOnLoad Boolean Enables or disables user loader synchronizing. Thus determines if objects will be synchronized when loaded from database, e.g. on query. This affects:
  • User
  • UserGroup
  • Departments
true true, false
Security.Authorization.SynchronizeOnLogin Boolean If set to true, it is allowed to import (or create if it does not already exist) a user on login.
If set to false and it needs to be imported, an ObjectNotFoundException with ErrorCode "AUTHx00548" is thrown.
true true, false
Security.Authentication.Sso.Saml.UserAttributes String Defines a comma separated list of attribute names, which should be mapped to IPP user properties.
Security.Authentication.Sso.Saml.PartitionIdAttribute String Sets the name of the SAML attribute containing the partitionId. If the attribute value is not contained in the SAML response, the default partition is used for all incoming SAML responses. FirmName
Security.Authorization.InvalidateNonexistingParticipants Boolean Sets the validTo property of an user/userGroup to current date (invalidates it) in case that it does not exist in external registry. false
Security.Authorization.SynchronizeConditionalPerformer Boolean If set to true, it is allowed to import (or create if it does not already exist) a user, if a conditional performer is evaluated to a concrete performer.
If set to false and it needs to be imported, the returned user is set to null.
true true, false
Security.Authorization.TimebasedSynchronizationStrategy.UserSyncTimeout Long user synchronization timeout 10
Security.Authorization.TimebasedSynchronizationStrategy.UserGroupSyncTimeout Long user group synchronization timeout 10
DefaultJAASAuthenticatedBeanFactory.ImplicitClientIdentity Boolean determines implicit client identity. false
InfinityBpm.Engine.Authorization.DefaultPermissions.ActivityInstance.Abort String Overwrites the default values of the declarative grant (empty value, OWNER) for activity instance abortion. role or organization ID or internal meta role like ALL or OWNER.
InfinityBpm.Engine.Authorization.DefaultPermissions.ProcessInstance.Abort String Overwrites the default values of the declarative grant (empty value, OWNER) for process instance abortion. role or organization ID or internal meta role like ALL or OWNER.
org.eclipse.stardust.ui.web.feature.mashupCredentialsPropagation String Configures the way the feature for passing session tokens to mashups is used. withSessionTokens Possible values:
  • never
    completely ignore the feature, thus not pass any session tokens to the mashup
  • withSessionTokens
    use the feature whenever there are any entries in the session's token map
  • always
    always use the feature, even if there are no entries in the session's token map (the authentication proxy page will be used although no cookies will be created)

Engine

Parameters Property Description Default Range
Carnot.Engine.Classloading.UseContextClassloader Boolean enables the usage of ContextClassLoader when loading classes by reflection. false true, false
Carnot.Engine.OverridableTimeStamps Boolean option if time stamps are overridable false
Carnot.Engine.ErrorHandling.ApplicationExceptionPropagation affects how the engine handles exceptions raised by invoked applications/services. Please refer to the chapter Exceptions for a detailed description on the usage of this property. never
  • never - The exception is consumed by the engine and not propagated to the client. The engine sets both, the activity instance and the process instance, to interrupted state and logs the exception to the audit trail. After that, the engine attempts to commit the transaction and stops the execution of the process. The activity (and process) execution may be resumed after running the process instance recovery.
    Please note that the engine does not check the status of the transaction, and therefore if the transaction is already set to rollback then all the actions performed in this transaction will be lost.
  • onRollback - The behavior depends on the status of the current transaction. If the transaction is set to RollbackOnly, similarly with "always", the engine attempts to log the original exception to the audit trail in a separate transaction and after that, the exception is propagated to the client (re-thrown).
    If the transaction is not set to RollbackOnly, then it will behave like "never" and it will attempt to interrupt the activity instance and the process instance.
  • always - The engine is automatically rolling back the transaction. The engine attempts to log the original exception to the audit trail in a separate transaction. After that, the exception is propagated to the client (re-thrown).
carnot.engine.xml.encoding String Determines the encoding for model elements. Set this property to UTF-8 in case you use non-ASCII characters in model elements. ISO-8859-1
  • ISO-8859-1
  • UTF-8
Infinity.Engine.Activity.AssignToInvalidUser Boolean Value true enables to assign activities to worklists of disabled users per partition via API. false true, false
Infinity.Engine.ProcessAbortion.Failure.RetryCount Number of retries. If this number is exceeded, a warning is written to the log file. Recovery will be necessary then. 10
Infinity.Engine.ProcessAbortion.Failure.RetryPause Number of milliseconds before the next try is started. 500 ms
Infinity.Engine.Process.SortActivitiesInTransitionOrder Boolean determines if the sorting order of processes in the Business Control Center is in traversal order. true true, false
Infinity.Engine.Caching Boolean true true, false
Infinity.Engine.Caching.CacheFactory String Caching factory to be used. org.eclipse.stardust.engine.core.cache.hazelcast.HazelcastCacheFactory
Infinity.Engine.Caching.Hazelcast.TxMode String Transaction mode for Hazelcast caching engine. "none","w","rw"
Infinity.Engine.Caching.Hazelcast.ConnectionFactoryJndiName String Connection factory JNDI name used for Hazelcast caching engine.
Infinity.Engine.Caching.Hazelcast.GlobalCacheName String Global cache name used for Hazelcast caching engine.
Stardust.Engine.Extension.Drools.MaximumRuleExecutions Long Determines the maximum count of rules that are executed until an exception occurs. 100000

Required Resources in a Web Container

Parameters Property Description
jdbc/AuditTrail.DataSource javax.sql.DataSource the datasource to connect to the audit trail. Only needed in Spring local mode

Required Resources in an EJB Container

Parameters Property Description
jdbc/AuditTrail.DataSource javax.sql.DataSource the datasource to connect to the audit trail
jms/CarnotXAConnectionFactory javax.jms.QueueConnectionFactory the queue connection factory used to create JMS connections
jms/CarnotSystemQueue javax.jms.Queue the JMS queue used internally by Infinity Process Engine
jms/CarnotApplicationQueue javax.jms.Queue the JMS queue used by the JMS applications
jms/CarnotDaemonQueue javax.jms.Queue the JMS queue used by the Infinity Process Platform daemon

Tuning

Parameters Property Description Default
Carnot.Db.ColumnLength.<table_name>.<column_name>=<int value> String with this property the column length for string columns can be configured.
Please note that this property has to be set before schema creation.
128
Carnot.Engine.RollbackOnError String option to force rollback. Specifies the transaction behavior in the case of exceptions during execution. Possible values are: always, lenient, never.
  • always:
    transactions will be automatically rolled back when exceptions occurs
  • never:
    transactions are no longer rolled back automatically
  • lenient:
    behavior depends on service and method invoked
always
Carnot.Engine.Ejb.RollbackOnError String superseded by Carnot.Engine.RollbackOnError
Note that EJB deployments still consider this property first and only fall back to use the Carnot.Engine.RollbackOnError property if Carnot.Engine.Ejb.RollbackOnError was not set.
always
Carnot.Engine.Threading.AsyncProcessCompletion Boolean Specifies if the process instances should be completed asynchronous in a separate thread than the normal execution thread. false
Carnot.Engine.Tuning.ActivityThread.Pause Integer Time of the delay between retries in milliseconds. 100
Carnot.Engine.Tuning.ActivityThread.Retries Integer Number of retries before the engine gives up. Per default the retry mechanism is disabled. In order to enable the retry mechanism the property must have a value greater than 0. 0
Carnot.Engine.Tuning.ProcessCompletionTokenCleanup Boolean Specifies if the transition tokens should be automatically deleted on process completion. false
Carnot.Engine.Tuning.ProcessCompletionTokenCountTimeout Integer Specifies the time (in seconds) after which the query to fetch the transition tokens will timeout. The default value is the minimum possible. A value of 0 (no timeout) is not recommended since it might lead to deadlocks. 1
Carnot.Engine.Tuning.DB.clobReadBufferSize Long Property to tweak the buffer size used to extract CLOB values. A positive value indicates the size of the char[] used to read from the CLOB, whereas a value less than 0 indicates to use CLOB#getSubString(1, CLOB#length()). 2000
Carnot.Engine.Tuning.DB.slowStatementTracingThreshold Long If the value is set (in milliseconds) and the query execution time is greater than this value, then a warning entry will be written in the log. Long.MAX_VALUE
Carnot.Engine.Tuning.DB.dataFilterHint String
Carnot.Engine.Tuning.DB.singlePartition Boolean option to tell the engine that only one partition exists.
Please note that using this property in multi partition audit trails will result in exceptions when the query API is used.
false
Carnot.Engine.Tuning.ProcessTerminationHierarchyCleanup Boolean option to remove process instance hierarchy entries from table procinst_hierarchy upon process termination. false
Carnot.Engine.Tuning.Query.EvaluationProfile String defines the evaluation profile, whereby
  • default:
    use default setting
  • inlined:
    inlined evaluation profile is the default value, it is used in case the property is not set or set to inlined or default.
  • dataClusters:
    Data cluster evaluation profile.
  • legacy
    former (Infinity Process Platform releases 5.1 and earlier) default evaluation profile.
Note that if a query contains DataFilter on big data (string > 128 characters, serializable), the legacy evaluation profile is used.
inlined
Carnot.Engine.Tuning.Query.HistoricalDataPrefetchBatchSize String Prefetch batch size for the historical data 400
Carnot.Engine.Tuning.Query.ProcessPrefetchNParallelInstances Integer The property does not affect process instance queries (ProcessInstanceQuery). It specifies how many process instances will be prefetched in a single query like an activity instance query (ActivityInstanceQuery) (IN-list). Otherwise multiple queries are used to fetch the process instances. DescriptorPrefetchBatchSize value
Carnot.Engine.Tuning.Query.UserPrefetchNParallelInstances Integer Specifies how many starting users will be prefetched in a single query.
To see the log output, a log4j.properties file should be added to the classpath using log level debug. The log file displays the following:
Prefetching <userprefetch-value> user(s).
The users are fetched but the userprefetch value must not be exceeded. For example if the value is 3 then three users can be fetched at maximum.
DescriptorPrefetchBatchSize value
Carnot.Engine.Tuning.Query.DescriptorPrefetchNParallelInstances Integer This property specifies how many process instance queries are handled in one query (IN-list) while fetching the data values for descriptors. This applies on data-cluster and non-data-cluster data values. Otherwise multiple queries are used. This property is applied together with DescriptorPrefetchNParallelData DescriptorPrefetchBatchSize value
Carnot.Engine.Tuning.Query.DescriptorPrefetchNParallelData Integer Specifies how many data values not in the data cluster used for descriptors are fetched in one query (IN-list). Otherwise multiple queries are used. Applies only if DescriptorPrefetchDataDiscriminationThreshold is big enough. 4
Carnot.Engine.Tuning.Query.DescriptorPrefetchDataDiscriminationThreshold Double Fetches all data values from the audit trail if the ratio between the actual used number of data to the total data objects defined in the model is less or equal to this value. Otherwise just those non-clustered data values are fetched which are required for the descriptors in question. 1.0
Carnot.Engine.Tuning.Query.DescriptorPrefetchBatchSize Integer This is the default for all other *PrefetchNParallel settings and is not used dedicated for any query type. 400
Carnot.Engine.Tuning.Query.InlineProcessOidThreshold Long Some queries needs to perform a preprocessing step to determine the list of process instances for which the query result is filtered. If the number of determined process instances is smaller than the configured value, then the list of OIDs will be inlined in the where clause of the query, otherwise the filtering will be performed in a post processing step. 100
Carnot.Engine.Tuning.Query.DescriptorPrefetchStructIndex Long Configuration switch to determine if indexed XPaths should be prefetched for descriptors. false
Carnot.Engine.Tuning.Query.DescriptorPrefetchStructXml Long Configuration switch to determine if structured data XML should be prefetched for descriptors from table clob_data. Operations on clob_data are performed using prepared statement only. true
Carnot.Engine.OverridableTimeStamps Boolean optionally taking timestamp override into account false
Carnot.Engine.Tuning.FindDaemonLogQueryTimeout Integer timeout period in seconds (0 means no timeout) 5 s
Carnot.Engine.Tuning.SingleNodeDeployment Boolean option to enable or disable caching and context propagation mechanisms. false
Carnot.Engine.Tuning.DeleteProcessInstances.StatementBatchSize Integer option to set a limit for the size of the used in-predicate. 100
Carnot.Engine.Tuning.ServiceCallTracingThreshold Long Defines a threshold in milliseconds. If this threshold is crossed then a log is written for trace method duration including SQL calls.
Carnot.Engine.Tuning.Query.SubsetPolicy.OptimizeCountOnly Boolean This property is used in WorkflowService.getWorklist(WorklistQuery). If set to true and the subset policies for each WorklistQuery.Contribution equals SubsetPolicy(0, true), then the count of worklist entries is evaluated with a query optimized for speed. true
Infinity.Engine.Tuning.Query.ActivateNextActivityInstance.Retries Integer Determines the number of retries until receiving an activity instance defined by the query. 5
Carnot.Engine.Tuning.GetCountDefaultTimeout Long Determines the timeout value in seconds for getCount() method call to avoid a query timeout resulting in a rollback of the complete transaction. This property is used for internal JDBC queries.
Try to use a property value as low as possible and as high as necessary:
The higher the value the longer an implicit JDBC count will wait for the correct result. On the other hand this might result in slow responses in case that the count cannot be executed in a reasonable time.
Note that this value should not to be mistaken with the timeout value which can be set for queries in general by the TimeoutPolicy!
5 s
Carnot.Engine.Tuning.SequenceBatchSize Integer Determines the number of sequences loaded as a batch. 100
Carnot.Engine.Hazelcast.JcaConnectionFactoryProvider String The JCA connection factory provider class to be used for Hazelcast. Values can be custom implementation or one of the following provided implementations:
  • org.eclipse.stardust.engine.core.persistence.jca.JndiHazelcastJcaConnectionFactoryProvider
    - for an environment in which the connection factory can be retrieved via JNDI.
  • org.eclipse.stardust.engine.spring.integration.jca.SpringAppContextHazelcastJcaConnectionFactoryProvider
    - for an environment in which the connection factory can be retrieved from the Spring application context
org.eclipse.stardust.engine.core.persistence.jca.JndiHazelcastJcaConnectionFactoryProvider
Carnot.Engine.Tuning.SupportTransientProcesses String The following values determine whether transient processing is available at all and how the corresponding model properties are handled:
  • on - is the prerequisite for executing process instances transiently. The process definition modeling property determines how it is executed.
  • alwaysTransient - all process instances will be executed transiently, if they are applicable for transient process execution. This does not depend on the corresponding modeling property of the underlying process definition.
  • alwaysDeferred - all process instances will be executed with deferred persistence. The process instance will not be persisted until it has been completed, if applicable to the process definition topology. This does not depend on the corresponding modeling property of the underlying process definition.
  • off - disables the Transient Process Instance functionality globally and the process definition modeling property as well as the process instance runtime property have no effect.
off
Carnot.Engine.Tuning.SupportTransientProcesses.ClusterSafeObjectProvider String The provider class to be used for cluster safe objects in order to cope with transient process instances. org.eclipse.stardust.engine.core.persistence.jdbc.transientpi.ClusteredEnvHazelcastObjectProvider
Carnot.Engine.Tuning.TransientProcesses.ExposeInMemStorage Boolean Determines whether in-memory storage should be exposed or not.
  • true: ensures that during the execution of transient process instances the process instance in question and all related persistents are accessible via API (e.g. via WorkflowService#getProcessInstance(long))
  • false: in-memory storage is not exposed. Thus a significant performance improvement can be achieved due to internal optimizations, which can be done only if there's no need for exposing the in-memory storage.
true
Stardust.Engine.Tuning.Query.ExcludeUser.Evaluation Boolean determines if the exclude user evaluation is performed in queries. false
Stardust.Engine.Tuning.Query.ExcludeUser.MaximumWorklistCount Long The maximum number of worklist items to be counted precisely will be set to the value specified with this property, in case the following conditions apply: 100
Infinity.Engine.Tuning.Query.DescriptorPrefetchReuseFilterJoins (deprecated) Boolean Note that this property is deprecated, please use Infinity.Engine.Tuning.Query.DescriptorPrefetchUseDataCluster instead. false
Infinity.Engine.Tuning.Query.DescriptorPrefetchUseDataCluster Boolean Performs prefetch of data values using existing data cluster tables. Note that this property should be used mutually exclusive! false
Infinity.Engine.Tuning.Query.LockTimeout Integer Defines the query timeout for lock queries in seconds. The following databases are affected by this property:
  • DB2
  • MSSQL
  • MYSQL
  • DERBY
  • SYBASE
1
Carnot.Spring.TxTimeout.Reporting String explicitly sets the transaction timeout for reporting requests in seconds. If this property is not set, the default transaction timeout of the chosen JTA Transaction Manager applies. -1

LDAP

Parameters Property Description Default Range
LDAPSynchronization.ServerName String The name of the property that specifies the DNS name or IP address of the LDAP server
LDAPSynchronization.ServerPort Integer The name of the property that specifies the port on which the server software is listening for incoming connections. 389
LDAPSynchronization.RootDN String The name of the property that specifies the root DN to which the InitialDirContext will be created in an LDAPConnection.
LDAPSynchronization.BindMode String The name of the property that specifies the LDAP data retrieval mode. anonymous anonymous, dedicated
LDAPSynchronization.BindUserDN String The name of the property that specifies the distinguished name of the user account that will be used for the data retrieval connection.
LDAPSynchronization.BindPassword String The name of the property that specifies the password of the user account that will be used for the data retrieval connection.
LDAPSynchronization.ParticipantFilter String The search filter to get the participants for a principal name. The wildcard %v is used to include the principal name.
LDAPSynchronization.UserFilter String The search filter to get user information for a principal name. The wildcard %v is used to include the principal name.
LDAPSynchronization.SearchTimeLimit Integer The time limit for searches in milliseconds 0
LDAPSynchronization.ParticipantNamingAttribute String The attribute name for getting the Infinity Process Platform participant ID from a found participant.
LDAPSynchronization.UserBaseDN String The name of the property that specifies the root used for querying for users relative to the base DN.
LDAPSynchronization.GroupBaseDN String The name of the property that specifies the root used for querying for groups (participants) relative to the base DN.
LDAPSynchronization.UserQueryScope Integer The query scope used for the user query as int value. 2
  • 0: object scope
  • 1: one level scope
  • 2: subtree scope
LDAPSynchronization.GroupQueryScope Integer The query scope used for the group query as int value. 2
  • 0: object scope
  • 1: one level scope
  • 2: subtree scope
LDAPSynchronization.ParticipantIDAttribute String The LDAP attribute that contains to the id of the process model role. cn
LDAPSynchronization.UserAccountAttribute String The LDAP attribute that contains the account of the user. cn
LDAPSynchronization.UserLastnameAttribute String The LDAP attribute that contains the last name of the user. sn
LDAPSynchronization.UserFirstnameAttribute String The LDAP attribute that contains the first name of the user. given name
LDAPSynchronization.UserDescriptionAttribute String The LDAP attribute that contains the description of the user. description
LDAPSynchronization.UserEmailAttribute The LDAP attribute that contains the email of the user. mail
LDAPSynchronization.UserAdditionalAttributes String A comma separated list of attributes that will be copied from the LDAP and stored as Infinity Process Platform user properties. is empty

Service Lookup

Parameters Property Description
<fully.qualified.InterfaceName>.ResolvedExtensionProviders String A comma separated list of implementation classes. This may be used to resolve providers which:
  • do not have a valid META-INF/services/<fully.qualified.InterfaceName> descriptor, or whose descriptor cannot be found during classpath introspection.
  • should be resolved in a guaranteed order. Classpath introspection does not guarantee any order multiple providers get resolved.
<fully.qualified.InterfaceName>.BlacklistedProviders String A comma separated list of implementation classes which should be removed from the list of resolved providers.
<fully.qualified.InterfaceName>.ResolvedExtensionProviders String A comma separated list of implementation classes which should be removed from the list of resolved providers.

Document Management

Parameters Property Description Default
DocumentManagement.ReadAllowed.PathPattern String Paths matching the specified expression are allowed for ID based access of documents and folders even outside of the predefined Infinity Process Platform partition path (/ipp-repository/partitions/<partitionId>).
The specified pattern allows ID based access on read only methods like: getDocument, getFolder etc.
Example pattern: (/{PARTITION_ID}/reports/.*)|(/{PARTITION_ID}/designs/.*)
DocumentManagement.WriteAllowed.PathPattern String Paths matching the specified expression are allowed for ID based access of documents and folders even outside of the predefined Infinity Process Platform partition path (/ipp-repository/partitions/<partitionId>).
Defines the access of methods modifying data like: updateDocument, updateFolder, versionDocument, removeDocument, removeFolder etc.
Example pattern: (/{PARTITION_ID}/reports/.*)|(/{PARTITION_ID}/uploads/.*)
Stardust.DocumentManagement.Resource.Create.inNestedTx Boolean Determines if Documents or Folders should be created in a new nested transaction. false

CMIS DMS Provider related properties

Parameters Property Description Default
CMISRepositoryProvider.AuthenticationProviderClass String AuthenticationProviderClass to implement fine grained authentication null
CMISRepositoryProvider.Username String Specifies a global username used for all CMIS instances. null
CMISRepositoryProvider.Password String Specifies a global password used for all CMIS instances. null