Free cookie consent management tool by TermsFeed Using the New Engine [Autoscaled Process Execution]
Using the New Engine
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.

Overview

Processes are the life force 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 autoscaling, 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.

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.

What's supported?

It's important to know about which process model nodes configurations are supported before you enable autoscaling mode. You'll save time developing and debugging your processes by understanding what's possible when autoscaling mode is enabled for your process models.

If you are building a brand new process model, we recommend that you enable autoscaling before you begin. An icon autoscale icon is shown when autoscaling mode is enabled, and this makes it easy to see whether a model is configured to run in that mode.

The palette makes it easy for you to design your process models because it will only show nodes and smart services that can be used with autoscaling mode.

Supported nodes, smart services, and plug-ins

For the beta, a set of the most commonly used nodes and smart services is available for you to use in your process models.

Note:  Plug-ins and deprecated smart services do not work in process models with autoscaling enabled.

Process nodes and smart services

Node or smart service Supported?
Activities
Script Task Yes
Subprocess No
Gateways
AND Yes
OR Yes
XOR Yes
Complex Yes
Events
Start Node Yes
End Node Yes
Receive Message Event No
Rule Event No
Send Message Event No
Timer Event No
Human tasks - not supported for beta
AI Skills - not supported for beta
Analytics - not supported for beta
Business Rules - not supported for beta
Communication - not supported for beta
Data Services
Delete Records Smart Service No
Write Records Smart Service Yes
Delete from Data Store Entities Smart Service No
Execute Stored Procedure Smart Service No
Query Database Smart Service No
Sync Records Smart Service No
Write to Data Store Entity Smart Service Yes
Write to Multiple Data Store Entities Smart Service Yes
Document Generation - not supported for beta
Document Management - not supported for beta
Identity Management - not supported for beta
Integrations and APIs
Call Integration Smart Service Yes
Call Web Service Smart Service No
Invoke SAP BAPI Smart Service No
Process Management
Cancel Process Smart Service No
Complete Task Smart Service No
Modify Process Security Smart Service No
Start Process Smart Service Yes
Robotic Tasks - not supported for beta
Social - not supported for beta
Test Management - not supported for beta

Configurations

This section describes which configurations are unsupported or ignored at both the process level and the node level. Refer to the What's supported? section to determine if the node or smart service you want to use is supported when autoscaling is enabled for your process model.

Unsupported vs. ignored

Unsupported configurations block you from saving and publishing the process model. Disable or remove all unsupported configurations to proceed.

Ignored configurations are not applied when running in autoscaling mode, but they do not block you from saving and publishing the process model.

Process configurations

Location Configuration Unsupported or ignored?
General tab Process Priority 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 Unsupported

Node execution limits

When autoscaling 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.

Node configurations

The following configurations are unsupported on all relevant nodes in a process model where autoscaling is enabled.

Location Configuration
General tab End condition
General tab Default task priority
General tab Default task priority > Allow child processes to inherit the parent process' priority
General tab Quick task
Start Event > General tab Activity Chaining
Start Event > Triggers tab Receive Message
Start Event > Triggers tab Timer
End Event > Results tab Send Message
End Event > Results tab Terminate Process
Escalations Escalation Timer
Scheduling tab Don't start this node until
Scheduling tab Repeat this node
Assignment tab Assigned as a Task
Exceptions Receive Message
Exceptions Timer
Exceptions Rule
Other tab > Deadlines Enable deadlines
Other tab > Multiple Instances Automatically run multiple instances of this node
Other tab > Execution options Refresh Default Values When Form Viewed
Other tab > Execution options Confirmation URL
Other tab > Execution options Allow users to step back to this node from the next chained activity
Other tab > Execution options Delete previously completed/cancelled instances
Other tab > Execution options Keep a record of the form as submitted for future reference
Other tab > Execution options Do not create if active instances exist
Other tab > Execution options Delete previous instances that are still active

Workflow nodes

Logic gateways (OR/XOR/AND/Complex)

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.

Script tasks

Configurations on the Scheduling, Assignment, Exceptions, and Other tabs aren't supported.

Differences from the existing architecture

When you enable autoscaling mode, 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 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.
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 will be returned.
Process variable size Process variable size is unlimited. Process variable size is restricted to 1 MB.

Enable autoscaling

To enable autoscaling mode for a new or existing process:

  1. From the process modeler menu, select File > Properties.
  2. On the General tab, select the Autoscaling checkbox and click OK.
  3. Continue designing your process.

Some configurations, nodes, and smart services aren't compatible with the autoscaling mode. When you validate a process model with autoscaling enabled, you'll see warnings, errors, and design guidance messages pertaining to your model's compatibility. These messages help you understand what you need to change or refactor before your process can execute successfully.

Using the New Engine

FEEDBACK