[frs-179] Can’t generate stack traces under Windows (2000, 2003, XP, Vista), Java 1.4


Problem

On Windows platforms using CF7 or other Java 1.4 VM, attempting to view a thread stack trace produces one of the following error messages:

  • Thread not found or already finished.
  • FusionReactor was unable to show you the stack trace but an attempt has been made to send the stack trace to the console or your runtime log file. Please check there.
  • Could not capture stack trace, attempted dump to stdout, please check there.

In these cases, a full stack trace is written to STDOUT (usually CFusionMX7runtimecoldfusion-out.log, or jrun4logscoldfusion-out.log for multiple instance installations), terminating with the message:

"Trace Error: Stack trace sent to the console; output could not be captured. Capture file open failed"

Solution

This error can be caused when FusionReactor is running as a non-default user, and fails to open a temporary file for the stack trace, prior to processing it and displaying it in the FusionReactor administrator. The temporary file is located in the root of C: and is removed immediately after processing.

To continue, you should ascertain the user account under which the ColdFusion service runs. You can find this out using the following procedure:

  • Open the Services control panel
  • Double click the ColdFusion MX 7 Application Server service
  • Open the Log On tab
  • Note down which account name is in use
  • Close this property sheet by clicking Cancel.

This user must be granted the Full Control permission on the C: folder (this permission is not required on any subdirectories) . The simplest way to do this is using the cacls utility.

  • Open a command prompt window (Start -> Run -> cmd.exe).
  • Run the following command, replacing cfusion with the user under which your ColdFusion service runs.
    • cacls c: /e /G cfusion:F
    • This command instructs windows to edit (/e) the permissions for c: by granting (/G) Full Control for the user cfusion (cfusion:F)

It should not be necessary to restart ColdFusion for this change to take effect.

Issue Details

Type: Technote
Issue Number: FRS-179
Components: Thread Management
Environment:
Resolution: Fixed
Last Updated: 02/Nov/07 9:46 AM
Affects Version: 1.0, 2.0, 2.0.3, 2.0.4
Fixed Version:
Server: ColdFusion 6, ColdFusion 7, ColdFusion 8, Flex Data Services, JBoss, JRun 4, LiveCycle Data Services, Tomcat, WebSphere, WebLogic
Platform: Windows XP, Windows 2000, Windows 2003
Related Issues: