Your achievements

Level 1

0% to

Level 2

Tip /
Sign in

Sign in to Community

to gain points, level up, and earn exciting badges like the new
BedrockMission!

Learn more

View all

Sign in to view all badges

SOLVED

Concurrent processing in Fork

wALF
Level 2
Level 2
We are hosted on ACC v7 build 8894.
 
We have observed that, the transitions that spawn out of a Fork, are executed in the sequence specified and not concurrently.  This means if a workflow has a Fork spawning 25 transitions, all these 25 transitions will only execute sequentially and not concurrently.  Is there a config parameter that we can toggle to allow this to be processed/run in parallel?
 
-wALF
ACC Fork sequence
1 Accepted Solution
wodnicki
Correct answer by
Community Advisor
Community Advisor

Hi,

 

Unlike Unica, ACC workflow activities are processed in sequence, top-to-bottom in the fork's list.

You can use advanced js activity or xtk.workflow.PostEvent() to invoke activities in parallel, though you won't be able to join them back together with ootb activities.

What's the use case for parallelism, out of curiosity?

 

Thanks,

-Jon

View solution in original post

2 Replies
wodnicki
Correct answer by
Community Advisor
Community Advisor

Hi,

 

Unlike Unica, ACC workflow activities are processed in sequence, top-to-bottom in the fork's list.

You can use advanced js activity or xtk.workflow.PostEvent() to invoke activities in parallel, though you won't be able to join them back together with ootb activities.

What's the use case for parallelism, out of curiosity?

 

Thanks,

-Jon

View solution in original post

wALF
Level 2
Level 2

I would've thought ACC would also provide that parallel execution just like Unica (it's quite common/expected tbh). There could be multiple use cases, for eg: Fork spawning 3 branches in the order below

a) labelled Heavy (takes roughly 30 mins to complete) and then finally outputs an email delivery and ends.

b) labelled Moderate (takes roughly 15 mins to complete) and then finally outputs another mail delivery (to a different set of customers) and ends.

c) labelled Light (takes 2 mins to complete) and then finally outputs to another email delivery (to a different set of customers) and ends.

 

If having this executed in sequence, although (c) can complete within seconds, it has to wait until (b) is completed, which in turn has to wait for 30 mins for (a) to complete.  Furthermore, if (a) fails for any reason, chances are the entire workflow could go into the Paused state leaving (b) & (c) incomplete/hanging for not so good reasons.

 

-wALF