Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 323137

Summary: Improve internal AC diagnostics
Product: z_Archived Reporter: Mike Reid <mikereid>
Component: TPTPAssignee: Mike Reid <mikereid>
Status: CLOSED FIXED QA Contact: Kathy Chan <kathy>
Severity: normal    
Priority: P3 CC: jgwest
Version: unspecified   
Target Milestone: ---   
Hardware: PC   
OS: Unix All   
Whiteboard:
Attachments:
Description Flags
Patch none

Description Mike Reid CLA 2010-08-19 09:08:21 EDT
Currently diagnostics pertaining to the IAC are somewhat lacking. One of the reasons is that detection of an IAC process that died is handled incorrectly for Linux (and other UNIX-y) platforms.

On UNIX-y platforms, the launch executable for IAC is a shell script, which performs the work of setting the environment and launching the AC. The script then waits to confirm the AC either started successfully, or failed and then exits with a status code.

The IAC administrator code currently just checks if the process has terminated and concludes the IAC started fine if it is still running. This can be improved for UNIX platforms to instead wait for the shell script to end, an verify its status code is 0, otherwise conclude the IAC did not start correctly. The Windows code path should remain the same since in that case the ACServer.exe executable is launched directly, and if it dies it does indicate a failure of some kind.
Comment 1 Kathy Chan CLA 2010-08-24 11:16:14 EDT
Deferring to TPTP 4.7.2.
Comment 2 Mike Reid CLA 2010-12-06 17:11:34 EST
Created attachment 184666 [details]
Patch

After some iteration the best approach seems to be to augment the "Profiling settings" tab. Part of the motivation is to prevent any unwanted notifications from occurring in the test tooling, and the respective downstream products. Second is that probing the AC in the code which starts the IAC leads to a circle because connection attempts cause an attempt to start the IAC.

Hence implementing this on the profiling settings UI fits into the code base much more easily.

Attaching a patch which implements an AC validation step that occurs after the data collectors have been fetched. The validator simply checks to see if the NEF (new execution framework) is available and if not warns the user that the AC will be unable to profile JVMTI agents.

I've tested this to ensure it behaves well with older ACs, as well as newer ACs on both Windows and Linux.
Comment 3 Mike Reid CLA 2010-12-07 10:13:06 EST
Patch checked into HEAD.
Comment 4 Kathy Chan CLA 2011-02-11 13:46:15 EST
This defect had been resolved as FIXED for more than 1 month.  Please verify with the latest TPTP 4.7.2 driver.  If this defect is still left unverified by February 25, we'll close it on the originator's behalf.

TPTP 4.7.2 driver can be downloaded from:

http://www.eclipse.org/tptp/home/downloads/?ver=4.7.2
Comment 5 Mike Reid CLA 2011-04-04 11:05:01 EDT
Closing.