Please ensure Javascript is enabled for purposes of website accessibility
Powered by Zoomin Software. For more details please contactZoomin

AVEVA Enterprise SCADA

Debugging the Application Calculation Engine

  • Last UpdatedJul 05, 2024
  • 1 minute read

Microsoft Visual Studio can be used for debugging by simply attaching it to the aceengine.exe process.

Warning: Debugging is very dangerous on a live RealTime system as debugging the ACEEngine causes the processing of all Application Calculation Engine (ACE) Configuration (aceconfig) records to stop. Normally the ACEEngine can execute thousands of procedures every 5 seconds. Debugging should only be done on a Test and Development System.

The ACEEngine will be restarted if left in the debugger for longer than the runaway timeout period. You must configure the runaway timeout in the registry, as follows:

RUNAWAY_TIMEOUT default = 60000

Note: The default is 60 seconds.

The monitoring code thinks that there is an infinite loop, and therefore restarts the ACEEngine. As a result, an in-depth debugging can sometimes only be done in one execution cycle of an ACE procedure, after which the ACE Process has to be re-attached as it will likely shut down. This can be eliminated by setting the runaway timeout to a very large value on the Test and Development System computer, but it effectively disables runaway detection on that computer.

The ACE source files can be loaded into the debugger and breakpoints can be set in the code. The ACE procedures by default are stored in %DNAInstallRoot%\RealTime\database\ACE\source. Once a breakpoint is set the debugger can be used to step through the ACE code (acecode).

Note: The Call Stack, Watch Windows, and other useful debugging tools are available while stepping through the code.