Skip to main content

Integration Designer

Workflow partitioning and archiving

Integration Designer now supports workflow instance partitioning and automatic archiving for efficient data management in high-volume deployments.

New variables to add

VariableDefault ValueDescription
FLOWX_DATA_PARTITIONING_ENABLEDfalseEnable or disable workflow instance partitioning
FLOWX_DATA_PARTITIONING_INTERVALMONTHTime interval for creating partitions (DAY, WEEK, MONTH)
FLOWX_DATA_PARTITIONING_ARCHIVING_ENABLEDfalseEnable or disable automatic archiving of old partitions
FLOWX_DATA_PARTITIONING_ARCHIVING_RETENTIONINTERVALS3Number of intervals to retain before archiving
FLOWX_DATA_PARTITIONING_ARCHIVING_CRONEXPRESSION0 0 1 * * ?Cron expression for archiving schedule (default: daily at 1:00 AM)
Workflow partitioning configuration:
  • Partitioning: When enabled, workflow instances are stored in time-based partitions according to the specified interval
  • Retention: Determines how many intervals to keep active. Example: With MONTH interval and 3 retention intervals, partitions older than 3 months are archived
  • Archiving schedule: The cron expression controls when the archiving process runs
  • Best practice: Enable partitioning first without archiving, verify it works correctly, then enable archiving
Enable partitioning and archiving only after careful planning and testing. Ensure your database has sufficient storage for partition management operations. It’s recommended to start with archiving disabled and enable it only after verifying that partitioning works correctly for your use case.

Advancing controller improvements

Integration Designer now uses the new ADVANCING controller with separate picking and processing operations for improved performance and resource management.

Variables to remove & replace

Remove This VariableReplace With
ADVANCING_THREADSADVANCING_PICKINGTHREADS (default: 1)
ADVANCING_PICKINGBATCHSIZEADVANCING_PROCESSINGBUFFERSIZE (default: 20)

New variables to add

VariableDefault ValueDescription
ADVANCING_PROCESSINGTHREADS20Number of threads for parallel processing of advancing events
ADVANCING_BLOCKPICKINGIFNOWORKERAVAILABLEtrueBlock picking operations when no worker threads are available
ADVANCING_DATASOURCE_MAXIMUMPOOLSIZE20Maximum database connection pool size for advancing operations

Variables to update

VariableCurrent ValueNew ValueReason
ADVANCING_PICKINGPAUSEMILLIS10050Optimized pause duration for better performance
How the new advancing controller works:
  • Picking threads (ADVANCING_PICKINGTHREADS): Controls how many worker threads read events from the database. This handles only the picking/reading operations.
  • Processing buffer (ADVANCING_PROCESSINGBUFFERSIZE): Acts as a queue between picking and processing. When the buffer is full, no new events are read. When there’s available space, that amount of events will be read.
  • Processing threads (ADVANCING_PROCESSINGTHREADS): Controls how many threads process the advancing events in parallel. Events are processed instantly if processing threads are available. If all processing threads are busy, events accumulate in the buffer until it reaches capacity.
  • Blocking behavior (ADVANCING_BLOCKPICKINGIFNOWORKERAVAILABLE): When enabled, prevents picking operations if no worker threads are available, ensuring better resource management.
Last modified on February 16, 2026