Transaction support in SnapLogic

Hi ,

I am new to SnapLogic and going through some of training videos and materials. Is there any support for transaction for group of Snaps? This is not database transaction. But for any snap. For example if I have to do 5 step activities using 5 different snaps. To complete the integration all snaps have to be executed successfully. In case if any one of the snap fails, all remaining 4 snaps have to fail. Can you advice, how this can be achieved?

Thanks and regards,
G. Ponnusamy

Generally, by fail, ONE snap fails, if it precedes others. It may cause other snaps to fail, but you can’t depend on that. Sometimes other snaps also might fail. There are TWO ways to do this through snaps ONLY…

  1. At some point, set the error port, under views, under a particular snap to stop pipeline execution. I believe that is generally the default. This ONLY takes into account an error that a program would have, like file doesn’t exist, or data format is not compatible. For example, multiple levels on a CSV formatter will trigger an error, since it can only process flat data.
  2. Direct some error condition YOU dictate to an exit snap, and set the snap to fail on a certain number of accesses. You can also set the error message that will be logged. So you could set it to fail on a tuesday in a month if it is the tenth for example, or if you get more than X conditions, etc… It is up to YOU what the error condition is.

BTW Such an error is FATAL, so the entire process fails, and reports it to the caller. If you want it to be a NON fatal error, you can tell the snaps to output to an error view, for #1, and for #2, you can use a filter to stop future processing of that document, or a copy and join to bypass snaps.

Thank Stephen for the details.