A filter's Configuration tab lists configuration properties specific to that filter:
For details on the options available on the configuration tab for a particular filter, refer to the documentation for that specific filter. Note that required properties are marked with an asterisk, and a short description of a selected property is displayed in the panel at the bottom of the dialog:
To determine the value of a configuration property that is set to a Rhapsody variable, you can hover over the variable to display a tooltip with its value.
Configuration Properties
Setting Configuration Properties
There are three ways to set a configuration property that does not offer pre-configured settings, using literals, message properties or Rhapsody variables:
- Enter the relevant value directly into the Value field.
Select from one of the communication point's published message properties from the drop-down list, or enter into the Value field a message property that is either route extracted or created, using the
$propertyName
notation. For example, if the<Patient Name>
and<Patient Gender>
properties have been identified as Message Definition properties on the route's Properties window, then these fields can be selected for the filename. Refer to Message Properties for details on configuring components with message properties.Most configuration properties that can be set using literal values can also accept message properties using the
$propertyName
notation. There are, however, exceptions. Therefore it is recommended you test your routes to ensure expected behavior.Search and select from a list of available Rhapsody variables by launching the Select Rhapsody Variable dialog (refer to Rhapsody Variables for details on how to manage Rhapsody variables):
Internal IDs for Configuration Properties
To obtain the internal IDs for configuration properties relevant to your configuration:
- Save your configuration to an RLC file (create a backup of the file if you wish).
- Change the RLC file's extension to
.zip
. - Unzip the Zip file and open the XML file contained therein.
The XML file contains the internal IDs for configuration properties, for example:
<Property> <Name>LOCALPORT</Name> <Value>$(TCP_Blocking_Port)</Value> <Type>ptInteger</Type> </Property>
Maximum Concurrency
A number of filters include a configuration property called Maximum Concurrency. This property is a numerical value that specifies the maximum level of concurrency for this filter; that is, how many instances of the filter are created and used in parallel. A value of 0
(which is the default value) means that there is no limit. In general, limiting the level of concurrency limits the memory used by the filter and can increase the efficiency of message processing by the Rhapsody engine.
An example of when the maximum concurrency value should be changed from its default value is when a route includes the Mapper filter that involves a complex mapping between two message structures. Changing the concurrency value to 2 or 3 means that the filter can only process two or three messages simultaneously but will not monopolize system memory in the way it would if the filter attempted to process an unlimited number of simultaneous messages.
It can also be used to limit the concurrency of database updates. If a database filter is suffering from deadlock contention errors from the database, dropping the concurrency will limit the number of concurrent transactions, reducing the chance of a deadlock. The database lookup filter does attempt to retry deadlocked transactions, but that may not catch everything.
When the filter's maximum concurrency is configured, route execution threads may enter the waiting state when the current number of concurrent access reaches the maximum. To prevent threads waiting on the concurrency limit indefinitely, route execution threads time out if the waiting period exceeds the maximum allowed waiting period. The default maximum waiting period is 30 seconds. The timeout period, however, can be configured in rhapsody.properties
file:
Parameter Name |
Description |
Default |
---|---|---|
ModelService.concurrencyFilterTimeoutSeconds |
Timed out period of concurrency based filters, minimum value 1 second, maximum value 86400 seconds (24 hours). |
|