2.6.3 Execution Context Properties

This section describes the different properties that you can use in the STR to configure EC/ECSAs.

Aggregation Properties

You can set the properties listed in the Advanced tab of the Aggregation profile  in the STR. This will override the values that set in the profile, including default values. 

The following properties are applicable when using file storage for aggregation.

PropertyDescription

mz.aggregation.storage.maxneedssync

Default value: 5000

This property defines when updated aggregation sessions shall be moved from cache to the file system. When the number of cached aggregation sessions reaches this value, the sessions are written to disk.

This property shall be set to a value lower than "Max Cached Sessions", configured in the Aggregation agent. If the property is set to a higher value, the used value will be "Max Cached Sessions" minus 1. For example, if "Max Cached Sessions" is "6000" and this property is set to "6500", the value "5999" will be used instead.

For performance reasons, this property should be given a reasonable high value, but consider the risk of a server restart. If this happens, the cached data might be lost.

mz.aggregation.storage.profile_session_cache

Default value: false

This property is used to speed up the start of workflows that run locally (on the EC). Set the property to true to keep aggregation cache in memory for up to 10 minutes after a workflow has stopped.

mz.aggregation.timeout.threads

Default value: 0

This property is used to enable Multithreading in Aggregation workflows, that is, to use a thread pool for the timeout function block in the Aggregation agent. Use a value larger than 0, for example, 4 to use four threads in the thread pool.

For more information about how to use these properties to tune the performance of the Aggregation agent, see 9.3 Aggregation Agent in the Desktop User's Guide.

EC Web Interface Properties

PropertyDescription

ec.httpd.enabled

Default value: true

This property specifies if the Web Interface for ECs should be active.

ec.httpd.host

Default value: Taken from the value of the common property pico.rcp.server.host .

This property specifies the host used to communicate with an EC Web Interface. Set it to 0.0.0.0 to bind all addresses on the currently used host. This is done to access the Web Interface by both virtual and logical IP addresses or hostnames.

ec.httpd.password

Default value: dr

This property specifies the password to be used for the EC Web Interface.

ec.httpd.port

Default value: 9090

This property specifies the TCP port of the EC Web Interface.

Note!

Each EC/ECSA that are located in the same container must have unique port.

ec.httpd.refreshrate

Default value: 30

This property specifies how often (in seconds) a Web Interface page shall be refreshed. The refresh can also be done manually, as described in Web Interface user's guide.

mz.wi.cross-origin.allowedOrigins

Default value: "*"

This property allows you to use RESTful Web Services across different origins. The possible value is a comma separated list of the hosts:ports that are permitted to use the RESTful Web Services, e g: 192.168.170.12:6790,10.46.9.26:9000

Couchbase Properties

PropertyDescription
mz.cb.statistics.flush.period.in.seconds

Default value: 60

If you have enabled the log to file functionality in the Advanced tab of the Couchbase profile, you can determine how often in seconds you want to flush this file by modifying the value.

Database Properties

PropertyDescription
max.cached.prepared.statements

Default value: 15

If you have want to change the number of preparedStatements that are cached between connections, you can use this property to specify a different number than default.

Note!

If you are using SAP HANA as a database type in a Database profile, used by Database agents, this value has to be set to 0.

connectionpool.strict.pool.size

Default value: false

If you enable this property, the database pool enables the Blocking Queue implementation where there is a strict restriction to the maximum number of connections.

Note!

When the property is set to false, then the database connection pool will create additional temporary connections. When the pool is full, these connections are closed as soon as the workflow thread returns the connection to the pool.

connectionpool.wait.timeout.milliseconds

 

Note!

This property can only be used if the connectionpool.strict.pool.size property is set to true.

Default value: 5000

This property is used to configure the amount of time a thread should remain in the  blocked queue until it tries for a new connection. If a connection is made available before this time, the thread's waiting time is interrupted.

Diameter Properties

PropertyDescription

mz.diameter.tls.accept_all

Default value: false

If the property is set to false (default), the Diameter Stack agent does not accept any non-trusted certificates. If it is set to true, the Diameter Stack agent accepts any certificate. In either case any unrecognized certificate will be logged in an entry in the System Log (in PEM format).

mz.workflow.decoderqueue.max_threads

Default value: 10

This property specifies the maximum number of threads used by the Diameter Stack agent for decoding messages. Setting a lower value than default may enhance performance if the host machine has a low number of CPU cores and the active workflows are complex. On the other hand, decoding may constitute a bottleneck when performing simple processing on a host machine with a high number of CPU cores. In this case, setting a higher value may provide better performance.

ECS Properties

PropertyDescription

mz.ecs.bulk.transfer.size

Default value: 10485760

This property defines the maximum size (in Bytes) of a bulk transfer for the ECS collection agent.

FTP/DX200 Properties

PropertyDescription

mz.dx200.acceptsequentiallost

Default value: ""

The default behavior for the FTP/DX200 collection agent is to skip files if the sequential order of the files has been lost. Add this property and set it to true if you want continue collecting files even if the sequential order has been lost.

mz.dx200.acceptoverwritten

Default value: ""

The default behavior for the FTP/DX200 collection agent is to not collect files that have been in FULL state before being set to OPEN, and untransferred data has been overwritten. Add this property and set it to true if you want to collect files that have been overwritten.

Rest Client Properties

rest.client.idleTimeout

Default value: "200s"

This property specifies the time a connection stays idle before it is eligible to be disconnected. If there is no traffic during the specified time, the REST Client agent will remove the session once the timeout is reached.

You can also set this property on the container level, where the value is only applied to all EC's under a particular container. You can refer to 2.6.2 Container Properties for more information.

rest.client.max.chunk.size

Default value: "8m"

This property specifies the maximum chunk size of the HTTP response that the REST Client agent should receive from the server. The agent will reject data with sizes that are larger than the value defined by this property.

You can also set this property on the container level, where the value is only applied to all EC's under a particular container. You can refer to 2.6.2 Container Properties for more information.

rest.client.max.content.length

Default value: "64m"

This property specifies the maximum length of the HTTP content received by the REST Client agent. The agent will reject content that is longer than the specified value defined by this property. Although it is also possible to set the value of this property to infinite, there will be a possibility where the EC will crash from an out of memory error. So do consider setting the memory size of the EC to be higher than the expected size of the HTTP content that the agent will be receiving.

You can also set this property on the container level, where the value is only applied to all EC's under a particular container. You can refer to 2.6.2 Container Properties for more information.

Inter Workflow Properties

PropertyDescription

mz.iwf.max_size_block

Default value: ""

By setting this property (in Bytes) on the EC that runs the Inter Workflow storage, it is possible to restrict memory consumption. If the agent wants to allocate more memory than the given property value during collection, the collection will abort instead of suffering a possible "out of memory".

Note that the minimum value is 32000 bytes, and even if a lower value is configured, 32000 will be used.

Table Lookup Service Properties

PropertyDescription

mz.inmemory_table.table_strategy

Default value: Object

This property defines how shared tables are kept in memory. The possible values are:

Object - The shared tables are stored as Java objects on the JVM heap. If this value is chosen the mz.inmemory_table.index_strategy property will have no effect.

On-heap - The shared tables are stored in a compact format on the JVM heap.

Unsafe - The shared tables are stored in a compact format outside the JVM heap. The API java.misc.Unsafe is used for the format and is only supported on Oracles JVM.

mz.inmemory_table.index_strategy

Default value: Object

This property defines how the index for shared tables are kept in memory. The possible values are:

Object - The index is stored as Java objects on the JVM heap.

Pointer - The index is stored as pointers to the table data.

mz.inmemory_table.fixed_width

Default value: true

This property defines if the varchar data fields are stored with a fixed or variable width. The possible values are:

true - The varchar data fields will have a fixed width.

false - The varchar data fields will have a variable width which will reduce the memory usage for large columns.

Additional Properties

PropertyDescription

ec.backlog.dir

Default value: $MZ_HOME/tmp

This property is applicable for ECs and determines whether you want events and error messages occurring when the contact is lost to be logged in a backlog or not. If the property is not present, events and messages will not be logged. The value of this property specifies where the backlog resides.

ecsa.backlog.dir

Default value: $MZ_HOME/tmp

This property is applicable for ECSAs. All events and error messages occurring when the contact is lost will be logged in a backlog. The value of this property specifies where the backlog resides.

ec.excel.dateformat

Default value: "dd/MM/yyyy"

This property will define the format of the date to be decoded for the ExcelCellUDR. For the date to be parsed successfully, you will have to provide the format of the date received by the ExcelCellUDR. The values in this property conforms to the standards of the SimpleDateFormat java class. If the date is not parsed successfully, the data type of the date field will be treated as a string.

ec.shutdown.time

Default value: 60000

This property specifies the maximum time (in milliseconds) the EC will wait before a real-time workflow stops after a shutdown has been initiated. This is to enable the workflow to stop all input and drain all UDRs in the workflow before shutting down.

The wait time is initially set to 60 seconds. If this value is set to 0 all draining is ignored and the workflow will stop immediately.

pico.bootstrapclass

Default value: ""

This property specifies the bootstrap classes that are required by some components.

pico.ec.do_graceful_shutdown

Default value: true

This property determines the behavior of the mzsh command shutdown. When you have set the value of this property to false and run the command, it will cause EC/ECSAs to shut down without forcing the workflows to stop first.

pico.rcp.server.port

Default value: ""

This property specifies the port that is used for EC to EC communication. If no port is set, a dynamic port will be used and the port number will change each time an EC is restarted. 

mz.json.date.format

Default value: "yyyy-MM-dd'T'HH:mm:ssZ"

This property sets the default JSON format during encoding with jsonEncodeUdr. The format can then be decoded using the jsonDecodeUdr command. 

mz.apl.jsonencodeudr.ignore.bigint.convert

Default value: false

When set to true, this property will allow customers to skip Big Integer and Big Decimal to string conversion when using the jsonEncodeUDR APL function.

mz.use.drdateformat

Default value: true

The date syntax used in the APL functions dateToString and strToDate conforms to the Java class SimpleDateFormat in Java 6.

Even though the syntax conforms to SimpleDateFormat, it is not directly based on this class.

You can enable date format handling based on the SimpleDateFormat class in the installed Java version by setting this property to false. This enables use of additional patterns that are available in the installed Java version. For more information about the functions dateToString and strToDate, see the APL Reference Guide.

mz.use.date.timezone

Default value: false

Setting this property to true will instruct  to use the attached time zone when SQL input originates from a date object.

In most cases, the property should be set in the pico configuration of EC/ECSAs . However, in case of audit processing, the property should also be set in the pico configuration of the Platform.

Note that if the mz.use.date.timezone property is used for setting dates with another time zone, there will be no way of keeping track of the actual time zone in the database, and you may have to manually convert the date during selection. To keep track of the time zone in an Oracle database, use the data type TIMESTAMP WITH TIME ZONE.

pico.type

Default value: ""

This property specifies the type of pico instance used for the EC. The possible values are EC and ECSA.