We often come across scenarios wherein workflows are getting in error state with the log 'no free disk space available'. After checking the database usage of the workflows we came to know that the workflows were not cleaned up (i.e their temp tables were not dropped and which was occupying unnecessary database space).
After looking into the workflows we came to know that, scheduled workflows terminated with end activity didn't appeared in the database usage list while others with no end activity had used the database space.
Please let me know whether adding end activity to the workflows will solve the 'no free disk space issue', or do we need to optimize the workflow design as well.
Currently the ACM v6.1 documentation does not give much in depth detail on end activity, it will be very helpful if you can give more insights on the same.
Thanks for your question. The storage of temp tables in a workflow is one of the biggest reasons for slow performance of Campaign and as a best practice you should use end activity to plug the loop in your workflow and let them finish.
By design , if you do not put an end activity in the workflow the workflow status remains == paused and for a paused workflow the last executed activity still stores the temporary tables on the DB. So it is always better to use a end activity in a workflow.
Also, you need to check for the option "keep the result of interim population between two executions" under workflow properties>General tab and make sure this is unchecked unless you are doing a test to see the interim data in the workflow. This option stores the temp tables generated all through the workflow and can easily overload the DB.
For best practices guide , please follow this link
Adhiyan has explained it well and it should resolve DB space issue. Can you please check "keep the result of interim population between two executions" is not checked for these scheduled/ Signal workflows. Also, all paths in your workflow has an end activity.