This documentation is intended for beta users only. This functionality is not available to most Appian customers, and is not part of the released and supported platform. If you are interested in enrolling in the beta program, please contact your Appian representative. |
Processes are the lifeforce of any business. Therefore, it's important to understand and carefully consider any changes you plan to make to those processes.
This page describes how to enable your process to use the new elastic process execution engine, and what impact that will have on your new or existing process.
We highly recommend you review this page in its entirety before enabling elastic scale, so that you fully understand the impacts and minimize development rework if a configuration or node you need to use is not available using the new engine.
It's important to know about which process model configurations are supported before you enable elastic scale. Save time developing and debugging processes with elastic scale enabled by understanding what you can do and what you can't when elastic scale is enabled for your process model.
If you're designing a new process model or flow, take a look at best practices for EPEx to familiarize yourself with recommended design implementations for specific use cases.
This section describes which configurations are unsupported or ignored at both the process level and the node level. Refer to the next section to determine if the node or smart service you want to use is supported when elastic scale is enabled for your process model.
Unsupported configurations block you from saving and publishing the process model. Disable or remove all unsupported configurations to proceed.
Ignored configurations do not block you from saving and publishing the process model. However, each ignored case will appear as a warning describing the behavior of the ignored configuration. It is a best practice to eliminate all warnings before running your model to ensure expected behavior.
Location | Configuration | Unsupported or ignored? |
---|---|---|
General tab | Process Priority | Ignored |
Variables tab | Process Variables > Hidden | Ignored |
Process Start Form | Entire tab | Unsupported |
Deadlines tab | Entire tab | Ignored |
Alerts tab | Entire tab | Ignored |
Data Management tab | Entire tab | Ignored |
Swimlanes > Assignment tab | Assign all nodes in this lane to a person or group of people | Unsupported |
Flow properties | Enable activity chaining | Ignored |
When elastic scale is enabled, the number of executions for each node is limited to 10,000, regardless of any node configurations. This limit is most likely to be encountered in process design using a looping flow.
The following configurations are unsupported or ignored on all relevant nodes in a process model where elastic scale is enabled.
Location | Configuration | Unsupported or ignored? |
---|---|---|
General tab | End condition | Unsupported |
General tab | Default task priority | Unsupported |
General tab | Default task priority > Allow child processes to inherit the parent process' priority | Unsupported |
General tab | Quick task | Unsupported |
Setup tab | Subprocess Setup > Security | Unsupported |
Start Event > General tab | Activity Chaining | Ignored |
Start Event > Triggers tab | Receive Message | Ignored |
Start Event > Triggers tab | Timer | Unsupported |
End Event > Results tab | Send Message | Unsupported |
End Event > Results tab | Terminate Process | Unsupported |
Escalations | Escalation Timer | Ignored |
Scheduling Tab | Don't start this node until | Unsupported |
Scheduling Tab | Repeat this node | Unsupported |
Assignment tab | Assigned as a Task | Unsupported |
Exceptions | Receive Message | Ignored |
Exceptions | Timer | Ignored |
Exceptions | Rule | Ignored |
Other tab > Deadlines | Enable deadlines | Unsupported |
Other tab > Multiple Instances | Automatically run multiple instances of this node | Unsupported |
Other tab > Execution options | Refresh Default Values When Form Viewed | Ignored |
Other tab > Execution options | Confirmation URL | Ignored |
Other tab > Execution options | Allow users to step back to this node from the next chained activity | Ignored |
Other tab > Execution options | Delete previously completed/cancelled instances | Ignored |
Other tab > Execution options | Keep a record of the form as submitted for future reference | Ignored |
Other tab > Execution options | Do not create if active instances exist | Unsupported |
Other tab > Execution options | Delete previous instances that are still active | Unsupported |
The following configurations on the subprocess node are unsupported:
When elastic scale is enabled, we recommend using the subprocess node to kick off processes from other processes in most cases. The subprocess node is optimized to the new architecture, and the Start Process Smart Service should only be used when you need specific functionality available in that smart service, like selecting a process model using the expression editor.
When elastic scale is enabled, no more than a depth of 1000 subprocesses in EPEx can be triggered. This limit is most likely to be encountered in a recursive process design. Processes still using the existing engine have a limit of 100. When going between EPEx and the existing engine, the limit is applied depending on whichever environment you are targeting. For example, if you are starting a process with elastic scale enabled, then the EPEx limit applies.
Tip: In the existing engine, Appian suggests use the Start Process smart service when starting a subprocess from a parent process. However, this guidance does not apply when initiating a subprocess in the existing engine from a parent process with elastic scale enabled.
When a process encounters a logic gateway, any expressions within the gateway are run by initiator
by default, or whichever assignment is configured in the swimlane the logic gate is in.
OR and XOR gateways are immediately reset when the output flow is triggered. You no longer need to put an empty script task before the gate when designing a looping flow to achieve this behavior.
Configurations on the Scheduling, Assignment, Exceptions, and Other tabs aren't supported.
Deprecated smart services do not work in process models with elastic scale enabled. Earlier versions of evolved smart services also do not work in process models with elastic scale enabled; for example the Write Records Smart Service (23.2) is not supported, but the updated version (23.4+) of that smart service is supported.
Plug-in and smart services | Supported for Beta | Supported at GA |
---|---|---|
Excel Tools Plug-in | ||
Import Excel to Database Smart Service | No | TBD |
Import CSV to Database Smart Service | Yes | Yes |
Convert Excel to CSV Smart Service | Yes | Yes |
Merge Excel Documents Smart Service | Yes | Yes |
Get Excel Cell by Number function | Yes | Yes |
Get Excel Cell by Name function | Yes | Yes |
Appian Regular Expressions Functions - Entirely supported for beta | ||
PDF Tools Plug-in - No smart services supported | ||
People Functions Plug-in - Entirely supported for beta | ||
Execute Stored Procedure - No smart services supported | ||
Advanced Document Templating Plug-in - No smart services supported | ||
Dynamic Document Generator Plug-in | ||
PDF from single DOCX with Fonts smart service | Yes | TBD |
PDF from HTML smart service | No | TBD |
DOCX Merge smart service | No | TBD |
Zip File Utilities Plug-in | ||
Unzip Smart Service | No | TBD |
Zip File Detection smart service | No | TBD |
Node or smart service | Supported for Beta | Supported at GA |
---|---|---|
Activities - supported for beta and GA | ||
Gateways - supported for beta and GA | ||
Events | ||
Start Event | Yes | Yes |
End Event | Yes | Yes |
End Node | Yes | Yes |
Receive Message Event | No | No |
Rule Event | No | No |
Send Message Event | No | No |
Timer Event | No | TBD |
Human tasks - not supported for beta or GA | ||
AI Skills - not supported for beta, GA support TBD | ||
Analytics - not supported for beta or GA | ||
Business Rules | ||
Increment Constant Smart Service | Yes | TBD |
Update Constant Smart Service | Yes | TBD |
Communication | ||
Send E-Mail Smart Service | No | TBD |
Send Push Notification Smart Service | No | No |
Data Services | ||
Delete Records Smart Service | Yes | TBD |
Write Records Smart Service | Yes | Yes |
Delete from Data Store Entities Smart Service | Yes | TBD |
Execute Stored Procedure Smart Service | Yes | Yes |
Query Database Smart Service | No | No |
Sync Records Smart Service | Yes | No |
Write to Data Store Entity Smart Service | Yes | Yes |
Write to Multiple Data Store Entities Smart Service | Yes | No |
Document Generation | ||
Export Data Store Entity to CSV Smart Service | Yes | No |
Export Data Store Entity to Excel Smart Service | Yes | No |
Export Process Report to CSV Smart Service | No | No |
Export Process Report to Excel Smart Service | No | No |
HTML Doc From Template Smart Service | No | No |
MS Word 2007 Doc from Template Smart Service | No | No |
Open Office Writer Doc From Template Smart Service | No | No |
PDF Doc From Template Smart Service | No | No |
Text Doc From Template Smart Service | No | No |
Document Management | ||
Create Folder Smart Service | Yes | No |
Create Knowledge Center Smart Service | Yes | No |
Delete Document Smart Service | Yes | No |
Delete Folder Smart Service | Yes | No |
Delete KC Smart Service | Yes | No |
Edit Document Properties Smart Service | Yes | No |
Edit KC Properties Smart Service | Yes | No |
Lock Document Smart Service | Yes | No |
Modify Folder Security Smart Service | Yes | No |
Modify KC Security Smart Service | Yes | No |
Move Document Smart Service | Yes | No |
Move Folder Smart Service | Yes | No |
Reconcile Doc Extraction Smart Service | No | TBD |
Rename Folder Smart Service | Yes | No |
Unlock Document Smart Service | Yes | No |
Identity Management - all supported for beta, not supported for GA | ||
Integrations and APIs | ||
Call Integration Smart Service | Yes | Yes |
Call Web Service Smart Service | No | No |
Invoke SAP BAPI Smart Service | No | No |
Process Management | ||
Cancel Process Smart Service | No | Yes |
Complete Task Smart Service | No | No |
Modify Process Security Smart Service | No | No |
Start Process Smart Service | Yes | Yes |
Robotic Tasks - not supported for beta or GA | ||
Social | ||
Follow Records Smart Service | Yes | No |
Follow Users Smart Service | Yes | No |
Post Comment to Feed Entry Smart Service | Yes | No |
Post Event to Feed Smart Service | Yes | No |
Post Hazard to Feed Entry Smart Service | Yes | No |
Post System Event to Feed Smart Service | Yes | No |
Test Management | ||
Start Rule Tests (All) | Yes | No |
Start Rule Tests (Applications) | No | No |
When you enable elastic scale, some process execution behavior is different from existing behavior. This table highlights those differences.
Summary | Current Behavior | Behavior in EPEx |
---|---|---|
Logic gates in swimlanes | Logic gates always run as the process initiator, even when in a swimlane configured to run as designer. | Logic gates in EPEx abide by swimlane configuration, but default to process initiator when the node is not in a swimlane. |
Floating nodes (no incoming flow) | Any node that has no incoming flow will start when the process model is started. | Floating nodes are not supported in EPEx and will cause design time errors. Only nodes with incoming flows are executed. |
Flow completion | If no flows or events are active after this node completes, the process will be paused by exception. | Flows complete when reaching a -None- state or a node with no output flow. This allows all other flows to continue and the process to complete. |
Logic gate reset | Logic gates are not reset until all incoming flows have been executed. This means an OR gate with two incoming flows in a looping flow will not execute again until both flows have executed. | Execute the outgoing flows from a logic gate any time an outgoing flow is run, resetting the gate immediately. |
Subprocess depth | Limited to 100. | Limited to 1000. |
Node instance limit | Limited to 1000. | Limited to 10000. |
loggedInUser() | When loggedInUser() is queried in a node, it is set to Administrator as opposed to the correct value (the currently logged in user) | When loggedInUser() is called in a node set to run as initiator, process initiator is returned (user or
service account that kicked off the process).
When a node is set to run as designer, the user that published the model is returned. At the process level (in expressions like the process name), the initiator should be returned. |
Process variable size | Process variable size is unlimited. | Process variable size is restricted to 200 KB. |
Process variables for subprocesses | The subprocess call does not check required process variable configurations, and will start no matter what is
passed in. The Start Process smart service calls abide by required process variable configurations, and fail to start the target process if required process variables are not passed in. |
Subprocess calls will not start the target process if required process variables are not passed. |
To enable elastic scale for a new or existing process:
Some configurations, nodes, and smart services aren't compatible with the elastic execution engine. When you validate a process model with elastic scale enabled, you'll see warnings, errors, and design guidance messages pertaining to your model's compatibility with elastic scale. These messages help you understand what you need to change or refactor before your process can execute successfully.
Using the New Engine