Skip to main content
Update environment variable configurations for all existing FlowX.AI services to support version 5.1.0 compatibility.

Audit core

Elasticsearch configuration migrates from SPRING_ELASTICSEARCH_* to FLOWX_ELASTICSEARCH_* namespace with enhanced index management.

Variables to remove & replace

Remove This VariableReplace WithOld DefaultNew Default
SPRING_ELASTICSEARCH_INDEXSETTINGS_DATASTREAMFLOWX_ELASTICSEARCH_INDEXSETTINGS_NAMEaudit-logsaudit-logs
SPRING_ELASTICSEARCH_INDEXSETTINGS_SHARDSFLOWX_ELASTICSEARCH_INDEXSETTINGS_SHARDS22
SPRING_ELASTICSEARCH_INDEXSETTINGS_REPLICASFLOWX_ELASTICSEARCH_INDEXSETTINGS_REPLICAS20

New variables to add

VariableDefault ValueDescription
FLOWX_ELASTICSEARCH_INDEXROLLOVERDAYS30Automatic index rollover policy
Simple migration with containerization support and namespace alignment.

Variables to update

VariableCurrent ValueNew ValueReason
SPRING_ELASTICSEARCH_REST_URISlocalhost:9200elasticsearch:9200Containerization support

Variables to replace

Remove ThisAdd ThisDefault Value
SPRING_ELASTICSEARCH_INDEXSETTINGS_NAMEFLOWX_ELASTICSEARCH_INDEXSETTINGS_NAMEprocess_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

Admin (3 groups):
Old Group IDNew Group ID
genericProcessingGroupgeneric-processing-group
processSyncGroupprocess-sync-group
adminResourcesUsagesRefreshGroupadmin-resources-usages-refresh-group
Application Manager (15 groups):
Old Group IDNew Group ID
appResourceExportGroupapp-resource-export-group
appResourceImportGroupapp-resource-import-group
appResourceUsagesGroupapp-resource-usages-group
appResElemUsageValidationRespapp-resource-elem-usage-validation-resp
appResourceCopyGroupapp-resource-copy-group
appResourceSyncGroupapp-resource-sync-group
appResourceUpdatePropagationGroupapp-resource-update-propagation-group
appMergeItemGroupapp-merge-item-group
buildCreateGroupbuild-create-group
buildUpdateGroupbuild-update-group
buildResourceExportGroupbuild-resource-export-group
buildResourceImportGroupbuild-resource-import-group
buildRuntimeDataGroupbuild-runtime-data-group
buildStartTimerEventsUpdatesGroupbuild-start-timer-events-updates-group
processStartGroupprocess-start-group
CMS Core (1 group):
Old Group IDNew Group ID
cms-consumer-previewcms-consumer-group
Document Plugin (1 group):
Old Group IDNew Group ID
kafka-svc-document-consumer-local-test2kafka-svc-document-consumer
Integration Designer (3 groups):
Old Group IDNew Group ID
integrDesignerResourcesUsagesRefreshGroupintegration-designer-resources-usages-refresh-group
genericProcessingGroupstart-workflows-group
resElemUsageValidationintegration-designer-res-elem-usage-validation-group
Notification Plugin (1 group):
Old Group IDNew Group ID
notif123-previewnotification-plugin-consumer
Process Engine (11 groups):
Old Group ID (all were notif123-preview)New Group ID
notif123-previewadvance
notif123-previewnotify-parent
notif123-previewadapters
notif123-previewscheduler-run-action
notif123-previewscheduler-advancing
notif123-previewmessage-events
notif123-previewprocess-start
notif123-previewprocess-start-for-event
notif123-previewprocess-expire
notif123-previewprocess-operations
notif123-previewprocess-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:
Environment VariableNew Topic Name
KAFKA_TOPIC_APPLICATION_RESOURCE_CORRECTIONAFTERAPPOPERATION_INai.flowx.application-version.correction-after-app-operation.response.v1
KAFKA_TOPIC_APPLICATION_RESOURCE_CORRECTIONAFTERAPPOPERATION_OUT_PROCESSai.flowx.application-version.correction-after-app-operation.process.request.v1
KAFKA_TOPIC_APPLICATION_RESOURCE_CORRECTIONAFTERAPPOPERATION_OUT_BUSINESSRULEai.flowx.application-version.correction-after-app-operation.business-rule.request.v1
KAFKA_TOPIC_APPLICATION_RESOURCE_CORRECTIONAFTERAPPOPERATION_OUT_REUSABLETEMPLATEai.flowx.application-version.correction-after-app-operation.reusable-template.request.v1
Sync topics:
Environment VariableNew Topic Name
KAFKA_TOPIC_APPLICATION_RESOURCE_SYNC_OUT_PROCESS_INai.flowx.application-version.sync.process.in.v1
KAFKA_TOPIC_APPLICATION_RESOURCE_SYNC_OUT_BUSINESSRULE_INai.flowx.application-version.sync.business-rule.in.v1
KAFKA_TOPIC_APPLICATION_RESOURCE_SYNC_OUT_REUSABLETEMPLATE_INai.flowx.application-version.sync.reusable-template.in.v1
KAFKA_TOPIC_APPLICATION_RESOURCE_SYNC_INai.flowx.application-version.sync.out.v1
Resource update propagation:
Environment VariableNew Topic Name
KAFKA_TOPIC_APPLICATION_RESOURCE_UPDATEPROPAGATIONai.flowx.application-version.resource.update.propagation.v1
Build resource topics:
Environment VariableNew Topic Name
KAFKA_TOPIC_BUILD_RUNTIMEDATAai.flowx.build.runtime-data.v1

New Kafka features

Resource Update Propagation

Consumer Group: 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: build-runtime-data-group
Threads: 2
Topic: ai.flowx.{env}.build.runtime-data.v1
Purpose: Build process data management

Business Rule Sync

Topic: 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: ai.flowx.{env}.application-version.sync.process.in.v1
Purpose: Improved process synchronization
Consumer Group: process-sync-group

Reusable Template Sync

Topic: 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: 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.
# Resource Update Propagation
KAFKA_TOPIC_APPLICATION_RESOURCE_UPDATEPROPAGATION=ai.flowx.dev.application-version.resource.update.propagation.v1

# Build Runtime Data  
KAFKA_TOPIC_BUILD_RUNTIMEDATA=ai.flowx.dev.build.runtime-data.v1

# Sync Topics
KAFKA_TOPIC_APPLICATION_RESOURCE_SYNC_OUT_PROCESS=ai.flowx.dev.application-version.sync.process.in.v1
KAFKA_TOPIC_APPLICATION_RESOURCE_SYNC_OUT_BUSINESSRULE=ai.flowx.dev.application-version.sync.business-rule.in.v1
KAFKA_TOPIC_APPLICATION_RESOURCE_SYNC_OUT_REUSABLE_TEMPLATE=ai.flowx.dev.application-version.sync.reusable-template.in.v1

# Correction After App Operation
KAFKA_TOPIC_APPLICATION_RESOURCE_CORRECTIONAFTERAPPOPERATION_OUT_PROCESS=ai.flowx.dev.application-version.correction-after-app-operation.process.request.v1
KAFKA_TOPIC_APPLICATION_RESOURCE_CORRECTIONAFTERAPPOPERATION_OUT_BUSINESSRULE=ai.flowx.dev.application-version.correction-after-app-operation.business-rule.request.v1
KAFKA_TOPIC_APPLICATION_RESOURCE_CORRECTIONAFTERAPPOPERATION_OUT_REUSABLETEMPLATE=ai.flowx.dev.application-version.correction-after-app-operation.reusable-template.request.v1

Additional Application Manager variables

VariableDefault ValueDescription
FLOWX_RESOURCESUSAGES_REFRESHPRODUCER_REFRESHEXPIRATIONSECONDS300Refresh expiration timeout
SERVER_MAXHTTPREQUESTHEADERSIZE16KBMaximum HTTP request header size

Integration Designer

Storage configuration

Added support for S3 storage for files in Integration Designer.
VariableDefault ValueDescription
APPLICATION_FILESTORAGE_TYPEs3Storage type
APPLICATION_FILESTORAGE_PARTITIONSTRATEGYNONEPartition strategy
APPLICATION_FILESTORAGE_DELETIONSTRATEGYdeleteDeletion strategy
APPLICATION_FILESTORAGE_S3_ENABLEDtrueS3 enabled
APPLICATION_FILESTORAGE_S3_SERVERURLhttp://minio:9000S3 server URL
APPLICATION_FILESTORAGE_S3_ENCRYPTIONENABLEDfalseS3 encryption enabled
APPLICATION_FILESTORAGE_S3_ACCESSKEYminioS3 access key
APPLICATION_FILESTORAGE_S3_SECRETKEYminio123S3 secret key
APPLICATION_FILESTORAGE_S3_BUCKETPREFIXworkflows-bucketS3 bucket prefix

Redis

Added caching when running a workflow.
VariableDefault ValueDescription
SPRING_CACHE_TYPEredisCache type
SPRING_CACHE_REDIS_KEYPREFIXflowx:core:cache:integration-designer:Cache key prefix
SPRING_CACHE_REDIS_TIMETOLIVE5000000Cache time to live
SPRING_REDIS_HOSTredis-masterRedis host
SPRING_REDIS_PORT6379Redis port
SPRING_REDIS_PASSWORDdefaultpasswordRedis password
SPRING_REDIS_TTL5000000Redis time to live
SPRING_DATA_REDIS_HOSTspring.redis.hostRedis 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 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.

Java runtime configuration

FlowX.AI containers and services must rely exclusively on Java-standard environment variables for runtime tuning.
Deprecated variablesStandard ReplacementNotes
JAVA_OPTS, JAVA_TOOL_OPTIONSJDK_JAVA_OPTIONSEnsures 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.
Remove legacy 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 VariableReplace WithEnvironment
CONFIG_PROFILESPRING_CONFIG_PROFILEdevenv 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:
VariableDefault ValueDescription
FLOWX_SPICEDB_HOSTspicedbSpiceDB server hostname. Change only if your deployment uses a non-default host.
FLOWX_SPICEDB_PORT50051SpiceDB 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:
VariableDefault ValueDescription
FLOWX_SPICEDB_HOSTspicedbSpiceDB server hostname. Change only if your deployment uses a non-default host.
FLOWX_SPICEDB_PORT50051SpiceDB 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

VariableOld DefaultNew DefaultDescription
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.
Kubernetes ingress annotation update:
nginx.ingress.kubernetes.io/cors-allow-headers: "...,Fx-Workspace-Id"

Process Engine service

Ingress paths requiring Fx-Workspace-Id header:
  • /admin
  • /adminInstances
Kubernetes ingress annotation update:
nginx.ingress.kubernetes.io/cors-allow-headers: "...,Fx-Workspace-Id"

Runtime Manager service

Ingress paths requiring Fx-Workspace-Id header:
  • /admin
  • /adminInstances
Kubernetes ingress annotation update:
nginx.ingress.kubernetes.io/cors-allow-headers: "...,Fx-Workspace-Id"