Synchronous start process behavior

Certified Senior Developer

Hello folks,

I would like to understand the Start Process SS behavior. From my understanding, we no longer need to perform chaining inside a child process if the child process is configured as a Synchronous Start Process.

Below is the configuration I applied for one of my record-related actions.





Here once action is completed we re query  the audit data in the interface which is set in refresh variable and refresh after "RECORD_ACTION". But this is not working as expected. I have to refresh the entire screen to get latest audit data. But if i put chaining between start process(Write audit) and end node, page is refreshing as expected and getting latest audit data.

Please let me know if it is expected behavior. Thanks in advance

  Discussion posts and replies are publicly visible

Parents
  • +1
    Certified Lead Developer

    Yes this is expected behaviour. Chaining maintains the execution of each node one after another and returns back to the start form with data available till the node chaining is configured. In scenario 1, when you dont have chained till start process then process executes in backend without passing any context data to start form back.
    In scenario 2, when you do have it chained till start process then process executes keeping the start form active - so that user's action completion happens after then node when chaining is complete. So the process holds the user form, waits till sub process is complete and returns the data back in main process and then lastly action is complete and user sees UI will latest data.

    Process being synchronous/non-synchronous doesn't not relate to the above mentioned behaviour. To understand simply, the sync/no-sync allows system to run process in serial/parallel for optimal performance in same/different engines. Its used mainly to improve processing performance and break big processes into smaller ones depending on their dependency on one - another.

    If the need is for user to wait for some data to be updated/refresh the data on after action then activity chaining is needed with synchronous sub process. 

Reply
  • +1
    Certified Lead Developer

    Yes this is expected behaviour. Chaining maintains the execution of each node one after another and returns back to the start form with data available till the node chaining is configured. In scenario 1, when you dont have chained till start process then process executes in backend without passing any context data to start form back.
    In scenario 2, when you do have it chained till start process then process executes keeping the start form active - so that user's action completion happens after then node when chaining is complete. So the process holds the user form, waits till sub process is complete and returns the data back in main process and then lastly action is complete and user sees UI will latest data.

    Process being synchronous/non-synchronous doesn't not relate to the above mentioned behaviour. To understand simply, the sync/no-sync allows system to run process in serial/parallel for optimal performance in same/different engines. Its used mainly to improve processing performance and break big processes into smaller ones depending on their dependency on one - another.

    If the need is for user to wait for some data to be updated/refresh the data on after action then activity chaining is needed with synchronous sub process. 

Children
  • 0
    Certified Senior Developer
    in reply to Harsha Sharma

    Thanks  .So you meant to say, along with configuration I did in above image, we need to chain all nodes in subprocess to get latest audit data. 
    Initially i did that way and it was working fine, but randomly(1 in 20attempts) am getting below popup error when we chain child process


    In one  thread(Appian Community)  I read that chaining is not relevant in the case of a Synchronous Start Process. Based on that, I removed chaining from the child process, assuming that the error I encountered was caused by chaining.

  • 0
    Certified Senior Developer
    in reply to Vaishal

    Giving more context to above error
    Chaining is done for child process and once user click on submit button in related action form, they will get the error popup. If we click ok and refresh the page, the page will be refreshed with latest data.
    In monitoring i could see that the process is paused at start process node(even though the child process is already completed). Also noticed that after 1 hour the node will be resumed and completed