Audit core
Elasticsearch configuration migrates from
SPRING_ELASTICSEARCH_*
to FLOWX_ELASTICSEARCH_*
namespace with enhanced index management.Variables to remove & replace
Remove This Variable | Replace With | Old Default | New Default |
---|---|---|---|
SPRING_ELASTICSEARCH_INDEXSETTINGS_DATASTREAM | FLOWX_ELASTICSEARCH_INDEXSETTINGS_NAME | audit-logs | audit-logs |
SPRING_ELASTICSEARCH_INDEXSETTINGS_SHARDS | FLOWX_ELASTICSEARCH_INDEXSETTINGS_SHARDS | 2 | 2 |
SPRING_ELASTICSEARCH_INDEXSETTINGS_REPLICAS | FLOWX_ELASTICSEARCH_INDEXSETTINGS_REPLICAS | 2 | 0 |
New variables to add
Variable | Default Value | Description |
---|---|---|
FLOWX_ELASTICSEARCH_INDEXROLLOVERDAYS | 30 | Automatic index rollover policy |
Data Search
Simple migration with containerization support and namespace alignment.
Variables to update
Variable | Current Value | New Value | Reason |
---|---|---|---|
SPRING_ELASTICSEARCH_REST_URIS | localhost:9200 | elasticsearch:9200 | Containerization support |
Variables to replace
Remove This | Add This | Default Value |
---|---|---|
SPRING_ELASTICSEARCH_INDEXSETTINGS_NAME | FLOWX_ELASTICSEARCH_INDEXSETTINGS_NAME | process_instance |
Kafka Configuration
Complete Kafka migration including consumer group standardization to kebab-case, comprehensive topic restructuring with new versioned naming patterns, and enhanced messaging features across all FlowX.AI services.
Do not modify default consumer group names. We strongly recommend against changing the default consumer group names as this operation can lead to misconfigurations. The application is designed to work and scale with the consumer groups as they are defined by default.
Consumer group migrations
View all 33 consumer group name changes across all FlowX.AI services
View all 33 consumer group name changes across all FlowX.AI services
Admin (3 groups):
Application Manager (15 groups):
CMS Core (1 group):
Document Plugin (1 group):
Integration Designer (3 groups):
Notification Plugin (1 group):
Process Engine (11 groups):
Old Group ID | New Group ID |
---|---|
genericProcessingGroup | generic-processing-group |
processSyncGroup | process-sync-group |
adminResourcesUsagesRefreshGroup | admin-resources-usages-refresh-group |
Old Group ID | New Group ID |
---|---|
appResourceExportGroup | app-resource-export-group |
appResourceImportGroup | app-resource-import-group |
appResourceUsagesGroup | app-resource-usages-group |
appResElemUsageValidationResp | app-resource-elem-usage-validation-resp |
appResourceCopyGroup | app-resource-copy-group |
appResourceSyncGroup | app-resource-sync-group |
appResourceUpdatePropagationGroup | app-resource-update-propagation-group |
appMergeItemGroup | app-merge-item-group |
buildCreateGroup | build-create-group |
buildUpdateGroup | build-update-group |
buildResourceExportGroup | build-resource-export-group |
buildResourceImportGroup | build-resource-import-group |
buildRuntimeDataGroup | build-runtime-data-group |
buildStartTimerEventsUpdatesGroup | build-start-timer-events-updates-group |
processStartGroup | process-start-group |
Old Group ID | New Group ID |
---|---|
cms-consumer-preview | cms-consumer-group |
Old Group ID | New Group ID |
---|---|
kafka-svc-document-consumer-local-test2 | kafka-svc-document-consumer |
Old Group ID | New Group ID |
---|---|
integrDesignerResourcesUsagesRefreshGroup | integration-designer-resources-usages-refresh-group |
genericProcessingGroup | start-workflows-group |
resElemUsageValidation | integration-designer-res-elem-usage-validation-group |
Old Group ID | New Group ID |
---|---|
notif123-preview | notification-plugin-consumer |
Old Group ID (all were notif123-preview ) | New Group ID |
---|---|
notif123-preview | advance |
notif123-preview | notify-parent |
notif123-preview | adapters |
notif123-preview | scheduler-run-action |
notif123-preview | scheduler-advancing |
notif123-preview | message-events |
notif123-preview | process-start |
notif123-preview | process-start-for-event |
notif123-preview | process-expire |
notif123-preview | process-operations |
notif123-preview | process-batch-processing |
Kafka topic migrations
All Kafka topics migrate to versioned naming pattern
ai.flowx.{env}.{service}.{operation}.v1
for improved organization and future compatibility.- Application Manager
- Admin
Application resource topics:
Sync topics:
Resource update propagation:
Build resource topics:
Environment Variable | New Topic Name |
---|---|
KAFKA_TOPIC_APPLICATION_RESOURCE_CORRECTIONAFTERAPPOPERATION_IN | ai.flowx.application-version.correction-after-app-operation.response.v1 |
KAFKA_TOPIC_APPLICATION_RESOURCE_CORRECTIONAFTERAPPOPERATION_OUT_PROCESS | ai.flowx.application-version.correction-after-app-operation.process.request.v1 |
KAFKA_TOPIC_APPLICATION_RESOURCE_CORRECTIONAFTERAPPOPERATION_OUT_BUSINESSRULE | ai.flowx.application-version.correction-after-app-operation.business-rule.request.v1 |
KAFKA_TOPIC_APPLICATION_RESOURCE_CORRECTIONAFTERAPPOPERATION_OUT_REUSABLETEMPLATE | ai.flowx.application-version.correction-after-app-operation.reusable-template.request.v1 |
Environment Variable | New Topic Name |
---|---|
KAFKA_TOPIC_APPLICATION_RESOURCE_SYNC_OUT_PROCESS_IN | ai.flowx.application-version.sync.process.in.v1 |
KAFKA_TOPIC_APPLICATION_RESOURCE_SYNC_OUT_BUSINESSRULE_IN | ai.flowx.application-version.sync.business-rule.in.v1 |
KAFKA_TOPIC_APPLICATION_RESOURCE_SYNC_OUT_REUSABLETEMPLATE_IN | ai.flowx.application-version.sync.reusable-template.in.v1 |
KAFKA_TOPIC_APPLICATION_RESOURCE_SYNC_IN | ai.flowx.application-version.sync.out.v1 |
Environment Variable | New Topic Name |
---|---|
KAFKA_TOPIC_APPLICATION_RESOURCE_UPDATEPROPAGATION | ai.flowx.application-version.resource.update.propagation.v1 |
Environment Variable | New Topic Name |
---|---|
KAFKA_TOPIC_BUILD_RUNTIMEDATA | ai.flowx.build.runtime-data.v1 |
New Kafka features
Resource Update Propagation
Consumer Group:
Threads: 3
Topic:
Purpose: Real-time resource change propagation
app-resource-update-propagation-group
Threads: 3
Topic:
ai.flowx.{env}.application-version.resource.update.propagation.v1
Purpose: Real-time resource change propagation
Build Runtime Data
Consumer Group:
Threads: 2
Topic:
Purpose: Build process data management
build-runtime-data-group
Threads: 2
Topic:
ai.flowx.{env}.build.runtime-data.v1
Purpose: Build process data management
Business Rule Sync
Topic:
Purpose: Enhanced business rule synchronization
Consumer Group:
ai.flowx.{env}.application-version.sync.business-rule.in.v1
Purpose: Enhanced business rule synchronization
Consumer Group:
business-rule-sync-group
Process Sync Enhanced
Topic:
Purpose: Improved process synchronization
Consumer Group:
ai.flowx.{env}.application-version.sync.process.in.v1
Purpose: Improved process synchronization
Consumer Group:
process-sync-group
Reusable Template Sync
Topic:
Purpose: Template synchronization
Consumer Group:
ai.flowx.{env}.application-version.sync.reusable-template.in.v1
Purpose: Template synchronization
Consumer Group:
reusable-template-sync-group
Correction After App Operation
Multiple Topics: Process, business rule, and template correction
Purpose: Post-deployment resource correction
Consumer Group:
Purpose: Post-deployment resource correction
Consumer Group:
processCorrectionAfterAppOperationGroup
Environment variable configuration
Automatic Configuration: Most deployments can rely on the built-in naming patterns without explicit environment variable overrides. Only override when custom naming is required.
Additional Application Manager variables
Variable | Default Value | Description |
---|---|---|
FLOWX_RESOURCESUSAGES_REFRESHPRODUCER_REFRESHEXPIRATIONSECONDS | 300 | Refresh expiration timeout |
SERVER_MAXHTTPREQUESTHEADERSIZE | 16KB | Maximum HTTP request header size |
Integration Designer
Storage configuration
Added support for S3 storage for files in Integration Designer.Variable | Default Value | Description |
---|---|---|
APPLICATION_FILESTORAGE_TYPE | s3 | Storage type |
APPLICATION_FILESTORAGE_PARTITIONSTRATEGY | NONE | Partition strategy |
APPLICATION_FILESTORAGE_DELETIONSTRATEGY | delete | Deletion strategy |
APPLICATION_FILESTORAGE_S3_ENABLED | true | S3 enabled |
APPLICATION_FILESTORAGE_S3_SERVERURL | http://minio:9000 | S3 server URL |
APPLICATION_FILESTORAGE_S3_ENCRYPTIONENABLED | false | S3 encryption enabled |
APPLICATION_FILESTORAGE_S3_ACCESSKEY | minio | S3 access key |
APPLICATION_FILESTORAGE_S3_SECRETKEY | minio123 | S3 secret key |
APPLICATION_FILESTORAGE_S3_BUCKETPREFIX | workflows-bucket | S3 bucket prefix |
Redis
Added caching when running a workflow.Variable | Default Value | Description |
---|---|---|
SPRING_CACHE_TYPE | redis | Cache type |
SPRING_CACHE_REDIS_KEYPREFIX | flowx:core:cache:integration-designer: | Cache key prefix |
SPRING_CACHE_REDIS_TIMETOLIVE | 5000000 | Cache time to live |
SPRING_REDIS_HOST | redis-master | Redis host |
SPRING_REDIS_PORT | 6379 | Redis port |
SPRING_REDIS_PASSWORD | defaultpassword | Redis password |
SPRING_REDIS_TTL | 5000000 | Redis time to live |
SPRING_DATA_REDIS_HOST | spring.redis.host | Redis host |
FlowX Engine
The ADVANCING controller has been redesigned with separate picking and processing operations for improved performance and resource management.
Variables to remove & replace
Remove This Variable | Replace With |
---|---|
ADVANCING_THREADS | ADVANCING_PICKINGTHREADS (default: 1 ) |
ADVANCING_PICKINGBATCHSIZE | ADVANCING_PROCESSINGBUFFERSIZE (default: 20 ) |
New variables to add
Variable | Default Value | Description |
---|---|---|
ADVANCING_PROCESSINGTHREADS | 20 | Number of threads for parallel processing of advancing events |
ADVANCING_BLOCKPICKINGIFNOWORKERAVAILABLE | true | Block picking operations when no worker threads are available |
ADVANCING_DATASOURCE_MAXIMUMPOOLSIZE | 20 | Maximum database connection pool size for advancing operations |
Variables to update
Variable | Current Value | New Value | Reason |
---|---|---|---|
ADVANCING_PICKINGPAUSEMILLIS | 100 | 50 | Optimized 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.
Java runtime configuration
FlowX.AI containers and services must rely exclusively on Java-standard environment variables for runtime tuning.
Deprecated variables | Standard Replacement | Notes |
---|---|---|
JAVA_OPTS , JAVA_TOOL_OPTIONS | JDK_JAVA_OPTIONS | Ensures compatibility with Java 21 and simplifies container config |
Environment-specific memory configurations must now be defined using
JDK_JAVA_OPTIONS
. Avoid relying on JAVA_OPTS
, JAVA_TOOL_OPTIONS
or legacy Docker-level overrides β these are no longer processed explicitly.Config profiles
Config profiles are deprecated since 4.7.6 version.
CONFIG_PROFILE
usage. Delete any CONFIG_PROFILE
environment variable definitions from deployments. This variable is no longer referenced by FlowX.AI services.
Development environment exception
For development environments only,
CONFIG_PROFILE
migrates to the standard Spring configuration profile variable.Remove This Variable | Replace With | Environment |
---|---|---|
CONFIG_PROFILE | SPRING_CONFIG_PROFILE | devenv only |
SpiceDB integration
FlowX.AI 5.1 introduces SpiceDB integration for enhanced authorization capabilities across all core services.
Services affected
The following services require new SpiceDB configuration variables:- Admin
- Application Manager
- Audit Core
- CMS Core
- Document Plugin
- Integration Designer
- Notification Plugin
- Process Engine
- Runtime Manager
- Task Management Plugin
New variables to add
For every CAS configuration, add the following variables:Variable | Default Value | Description |
---|---|---|
FLOWX_SPICEDB_HOST | spicedb | SpiceDB server hostname. Change only if your deployment uses a non-default host. |
FLOWX_SPICEDB_PORT | 50051 | SpiceDB server port. Change only if your deployment uses a non-default port. |
FLOWX_SPICEDB_TOKEN | (secret) | SpiceDB authentication token. Add as a Secret to all services connecting to CAS, including Data-Sync. |
Data sync updates
Data Sync additional variables
For every Data-Sync configuration, add the following variables:Variable | Default Value | Description |
---|---|---|
FLOWX_SPICEDB_HOST | spicedb | SpiceDB server hostname. Change only if your deployment uses a non-default host. |
FLOWX_SPICEDB_PORT | 50051 | SpiceDB server port. Change only if your deployment uses a non-default port. |
FLOWX_DATASOURCE_AUTHSYSTEM_URL | - | Authentication system URL. |
FLOWX_DATASOURCE_AUTHSYSTEM_USERNAME | - | Authentication system username. |
FLOWX_DATASOURCE_AUTHSYSTEM_PASSWORD | - | Authentication system password. |
FLOWX_SPICEDB_TOKEN | - | SpiceDB authentication token. Add as a Secret to all services connecting to CAS, including Data-Sync. |
Kafka topic naming
Global configuration change
Variable | Old Default | New Default | Description |
---|---|---|---|
KAFKA_TOPIC_NAMING_ENVIRONMENT | (varies) | "" | Moved to default empty environment |
This change standardizes topic naming across environments by defaulting to an empty environment identifier.
CORS and ingress updates
Admin service
Admin service ingress configuration requires additional CORS header support for workspace identification.
Process Engine service
Ingress paths requiringFx-Workspace-Id
header:
/admin
/adminInstances
Runtime Manager service
Ingress paths requiringFx-Workspace-Id
header:
/admin
/adminInstances