Quantcast
Channel: Symantec Connect - Endpoint Management
Viewing all articles
Browse latest Browse all 7163

ADUserInfo type and memory utilization

$
0
0
I need a solution

Hello -

I have a monitoring workflow that runs nightly to send selected users email reminders about their upcoming password expirations based on critieria (such as when their password will expire, etc...).  The workflow has been running fine for the last year or so and the Workflow system has not recently been changed.  Lately, however, I've encountered issues where the workflow will not exit properly (either successfully or with an error), resulting in situations where some of the users receive the same email message over and over until I manually restart IIS.

 

I've been able to reproduce the error using the Workflow debugger and I think the issue is being caused by resource (i.e. memory) constraints on the Workflow system itself.  The server meets the Workflow specifications, but because the workflow has to loop through users in our active directory (using the ADUserInfo data type to be able to evaluate the criteria), and because the number of users in our active directory has been steadily increasing, I think the workflow has simply reached a point where it can't process the volume of data.  What leads me to believe this is that when I run the workflow through in the debugger, it loops through a few of the users, but then upon reaching the Get User Details component for the nth time, rather than exit that component via the component's Error outcome, the workflow kicks over to it's Critical Errors model and then stops at the Start component (even when I simplified the Critical Errors model to have only a Start and an End component).  It seems to me that because the workflow is out of memory, it cannot even finish the Critical Errors model and so eventually the scheduler tries to re-run it, producing the same result (and causing some users to receive the email over and over).

 

I've come up with a potential solution, i.e. the workflow has consistently exited successfully in the debugger and now once in production (but I'll be happier after it runs for a week or so without error).  Namely, I added the "Remove Data" component at the end of each loop through active directory using the Get User Details component, so once the workflow loop has evaluated the user details against the criteria and taken whatever action(s) specified, the workflow discards the ADUserInfo data and then gets the details on the next user.

 

My question is, has anyone else encountered memory-related Workflow issues similar to this?  If so, what approach did you take to resolving the issues?  Also, do you use the "Remove Data" component in your workflows?  Does it help in terms of memory management or is it intended to help?  Lastly, in terms of memory management, are there good Workflow practices to follow to try to avoid memory-related issues, e.g. Workflow or project-related configuration settings, Workflow components to use, etc...?  Any/all thoughts/insights are greatly appreciated.

 

Tnx, Tom


Viewing all articles
Browse latest Browse all 7163

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>