Page tree
Skip to end of metadata
Go to start of metadata

Overview

AIE enables users to make changes to components and workflows while the system is running. These changes work in single and multi-node environments and persist across system restarts. 

View incoming links.

Usage

The Workflows and Palette pages in the AIE Administrator allow users to create, update and delete any component or workflow that was manually configured by the user. Components or workflows that were generated by features are not editable.

Change Persistence

Changes are saved in the configuration server's data store. When the project is updated from the configuration server, new project source files are generated in the project directory. 

It is a Best Practice to update the dynamic changes to the project files, and then to re-deploy the project to the configuration servers using the "Ignore changes and replace existing project" option.  This two-step process converts your dynamic changes into reloadable configuration files that can be backed up.

Runtime Changes

Changes made at runtime work via a command queue mechanism. Any dynamic change made via the UI or API may trigger a number of smaller lower level changes called a changeset. For instance, adding a new workflow might cause a new set of component's to be created, workflow locations to be created or even workflow locations to change. Each of these smaller changes are made one at a time. If any change fails, it's effects and all other changes made as a part of the changeset will be reverted. In a multi-node installation, all nodes must complete each smaller change before the next one change in the set is executed. This ensures that all nodes either succeed or fail together and that the system is always in a consistent state.

The output for a changeset might appear as follows in the system logs at runtime:

ConfigurationApiBean [webapp-231] - Changes to apply: [Component('MyCapitalizer', added)]
ConfigurationApiBean [webapp-231] - Current source changes: [Component('MyCapitalizer', added)]
ConfigurationApiBean [webapp-244] - Changes to persist: [Workflow('ingest', modified), Component('MyCapitalizer', added), ConnectorDefinition('MyCSVConnector', added)]
ConfigurationApiBean [webapp-244] - Changes to apply: [Workflow('ingest', deleted), Workflow('ingest', added)]
ConfigurationApiBean [webapp-244] - Current source changes: [Workflow('ingest', modified)]
ConfigurationApiBean [webapp-244] - Updating all beans referencing the configuration

Disable Dynamic Configuration

Dynamic configuration can be disabled by setting the following property in your project's property file:

enableDynamicConfiguration=false

Dynamic configuration controls dynamic changes to workflows, components, and connectors. No changes of any kind will be allowed if this flag is set to false and the UI/API will throw exceptions if any attempts are made to make changes.

  • No labels