10-07-2014 12:53 PM
I created a long term test designed to continuously test a product over time under various conditions. The test runs normally for about 2-3 days, and will then hang for an indefinite period of time.
TestStand is still running normally, I can break the execution, examine variables, and then resume, but the test still does not move on. Its as if TestStand hits some sort of wall or limit and refuses to continue executing any more steps.
I have reporting disabled along with the record results from each step option (I've run into issues of TestStand running out of memory on long term tests without disabling the results recording in the past).
Has anybody else experienced a similar issue or have an idea of where to start finding a solution? Apart from it not moving on to the next steps, everything else in TestStand and the sequence itself seems to be as expected. The issue was first found in TestStand 2013, and I recently upgraded to 2014, where the problem still persists.
10-08-2014 08:55 AM
Hi,
Maybe this thread helps to clarify.
http://forums.ni.com/t5/NI-TestStand/Reports-and-quot-out-of-memory-quot/td-p/2495170/highlight/true
Regards
Juergen
10-08-2014 09:09 AM
Hi Juergen, thanks for your reply!
Unfortunately, that thread seems to deal with out of memory exceptions when trying to generate a report. I have reporting and results recording turned off completely, and don't see any errors or exceptions either.
The test just stops and refuses to continue after some time, although TestStand is still responsive.
10-09-2014 08:52 AM
Is it hung inside one of the sequence's code modules? If so, have you tried to debug the code module to see what it's doing? If not, what step is it hung on? What is that step doing? Without more details it's hard to know for sure what the cause might be. Try to figure out what the code is waiting for that isn't happening.
Hope this helps,
-Doug
10-09-2014 09:12 AM
Initially, it was hanging on an Action step utiilizing the .NET adapter. It was calling a function from a device library to communicate with a piece of testing equipment. My initial thought was that the function within that library was getting hung up somewhere, but I was able to continuously make calls to that same library/function from a different piece of software (LinqPad) for long periods of time (4-5 days) without ever seeing it hang.
Thinking that there was some sort of issue with the interaction between the library and TestStand, I've since created a simple console application that executes that same function call within the same library. Its final step prints the results to the stdout before returning, and I had hoped that by encapsulating the library call I could eliminate any conflict between the library and TestStand.
The console application seems to finish running and exit successfully, as I can view the result of the call in Step.StdOutput.Text. But for whatever reason, the sequence never moves on. The Call Executable step does have a Post Expression, but it only converts the resulting string from Step.StdOutput.Text to a Float64 to store in a local variable, and the initial Action step with .NET adapter didn't have any Post Expressions whatsoever.
10-10-2014 10:49 AM - edited 10-10-2014 10:52 AM
Is it hanging on the callexecutable step? Is your console app exiting (check task manager's process list)? Most likely your console app isn't fully exiting and the callexecuteable step is waiting for it to finish.
It's likely that your previous hang was for a completely different reason, perhaps an issue with the .NET code you were calling.
-Doug