Skip to main content
Version: 10.3.3

Configure Business Process result operations

You can configure resource limits for filtering, sorting, pagination, and exporting Business Process results and Manual Task assignment data. The properties control memory consumption and database load when processing large datasets and can be overridden for each environment.

info

The default values are designed to provide stable performance in environments with large Business Processes. Before increasing them, consider the available Control Tower memory, database capacity, and number of Control Tower instances.

Configure properties​

Configure the following properties in ZooKeeper:

PropertyDefaultDescription
results.page.max.size100Maximum number of rows that a results or assignments request can return per page. The default page size is 10 rows. Requests exceeding the configured maximum are rejected.
results.filter.max.conditions10Maximum number of filter conditions allowed in one request.
results.concurrency6Maximum number of filtering, sorting, and export operations that can run concurrently in one Control Tower JVM.
results.export.concurrency2Maximum number of export operations that can use the shared concurrency limit. The value must not exceed results.concurrency.
results.export.batch.size200Number of rows retrieved from the database in each streaming export batch. Increasing the value reduces database round trips but increases memory consumption.

Sample settings can be as follows:

results.page.max.size=100
results.filter.max.conditions=10
results.concurrency=6
results.export.concurrency=2
results.export.batch.size=200
tip

You can access ZooKeeper in one of the following ways:

  • Use the ZooNavigator UI:

    • URL: https://{instance-name}-wfaw-{aws-account}-ct1.workfusion.com:10999/zoonavigator

    • Connection string: {instance-name}-wfaw-{aws-account}-int1.workfusion.com:2181

  • Set properties in ZooKeeper CLI as described in the guide

Consider clustered deployments​

The concurrency limits apply separately to each Control Tower JVM, not to the entire cluster. For example, if results.concurrency is set to 6 in a deployment with three Control Tower instances, the database can receive up to 18 concurrent result operations.

Configure the same values on each Control Tower instance and consider the combined database load when changing concurrency limits.

Troubleshoot busy responses​

Filtering, sorting, and export operations share the limit defined by results.concurrency. If all operation slots are in use, additional requests wait for up to 30 seconds. If capacity does not become available, Control Tower returns a retryable HTTP 429 response.

Retry the operation when fewer result requests are running. If busy responses occur frequently, review the result-operation limits and database capacity before increasing concurrency.