Community
Participate
Working Groups
Build ID: I20070503-1400 Steps To Reproduce: 1. configure stand-alone ACServer for security enabled 2. profile an external java app. 3. authenticate * 4. try to profile StartStop test class * When I open the launch dialog and click on the configuration I am prompted *twice or more* about accepting the certificate and challenged twice or more times for authentication. After authenticating the test connection does indicate success. More information: The attempt to profile results in an error: "one of the selected launch delegates has failed:" org.eclipse.core.runtime.CoreException Agent Controller is unavailable under port 10002. Make sure that the service is started and the port number is correct under preferences. org.eclipse.tptp.platform.execution.exceptions.AgentControllerUnavailableException: Error: Unable to connect to the Agent Controller.Timeout while waiting for connection to complete at org.eclipse.tptp.platform.execution.client.core.internal.NodeImpl.connect(NodeImpl.java:146) at org.eclipse.tptp.platform.jvmti.client.internal.launcher.util.AgentControllerDelegate$1$EstablishConnection.run(AgentControllerDelegate.java:155) at java.lang.Thread.run(Thread.java:803) This is using 0508C build of 4.4.0 on windows XP. I also saw this issue on Vista. StartStop is a test class from the automation framework.
On a different Windows host I am getting the same multiple dialogs but the profiling is working (no connection error) One major difference is on this host AC and workbench are using IBM JDK 1.4.
This symptom is caused by the UI querying the AC for the JDK version. This needs to be improved.
Created attachment 67854 [details] Patch Alan, The inability to profile with JVM1.5 is caused by the JVMTI not being able to connect to a secure Agent Controller. I have opened another defect to track this problem: https://bugs.eclipse.org/bugs/show_bug.cgi?id=187887. The attached patch fixes the multiple user prompts that you have noted in your defect description.
Alan, can you please check to make sure that the attached patch functions correctly? Eugene, can you please review the code (which is merged with the patch for bug 186639) and check to make sure that it functions correctly? Joanna assuming code review passes, can you please approve this for i4 inclusion? Thank you.
I would like to get this defect fixed. Alan have you had a chance to test? Eugene have you had a chance to review the code?
I have tried it 6-7 times with jre 1.5 and 1.4.2 (the latter can profile and collect data successfully) and with different pauses and incorrect passwords. This is on the Vista host which was easy to reproduce the original problem with. I do not see the multiple dialogs appear anymore.
Good news! Eugene would you please do the code review so we can include this in the next driver?
I tested with ibm JDK 1.4.2 and 1.5. Tried with not accepting certificate, wrong password and user id, and things work correctly. I cannot complete the test with 1.5 but the authentication and certificate dialogs are prompted in the right order and in the correct amount of occurrence.
I did a code review and the patch looks good as well.
Fix in CVS - HEAD.
In 4.4.0.1 on Vista I am seeing the multiple prompts again. I am running everything under sun jre 1.4.2 and when I try to manually profile an app I am challenged for login when I launch the profile dialog, test the server, select a analysis type, and when swithing from one item to another (ie: attach to external application). This seems even worse then before. The end result of the attempt is the same exception but I don't think that fix is in this build. I am using 200707090100 build on avista.
I realized that Connection Pool (hyades NodeFactory) is being requested for a connection with addresses 192.168.*.*, 127.0.0.1, localhost. All these addresses belong to the single host, but NodeFactory originates separate connections (and requests for login/psw).
org.eclipse.tptp.platform.common.ui.trace.internal.util.PDCoreUtil.createNode() has redundant unnecessary call to NodeFactory. Could by substituted by InetAddress.getByName(name).getHostAddress()
Using the 07090100B build I still get the multiple prompts. twice each time I try to launch and external application and when I attach I get it twice and then once more after clicking "profile". In these tests the profiling does start and is successful, maybe this is because the fix for 187887 is in it.
The multiple prompts can't be considered as stop ship for 4.4.0.1 (given that the user can profile successfully). I'm lowering the priority to P2 and re-targeting to 4.4.1
Created attachment 73985 [details] Second version of the patch
Alan, can you please test to see if the latest patch works as expected. Eugene, can you review the patch. The multiple prompts were being caused by the client code disconnecting the connection on a node. A connection needs to be established every time the node is reused and hence the user prompted for a username and password multiple times. I'm re-targeting this to 4.4.0.2.
Ali, the following use case fails to work: - start RAC with security : on - launch an java application - detach the java application - attach to application via 'Attach Java process' launch configuration.
Eugene, I'm able to successfully attach after detaching from the agent. Let's talk about this once you're in the office. Thanks.
With jre 1.4.2 this patch seems to work well. I tried launching, attaching and Eugene's case. With jre 1.5 the repeated login challenges are fixed but I find I cannot attach to a java application, only launch it from the workbench.
Created attachment 74190 [details] 3rd version of the patch Eugene, as discussed I had disabled attach of the JVMTI agent when AC was detected to run in secure mode. The use case was throwing an exception in an older version of the workbench that I was using. I have re-enabled and tested the use case under 4.4.0.1. Please give the latest patch a try. I've also made some modifications to jvmti.client to improve the sluggish performance when expanding/checking a JVMTI agent under the attach tab. Alan, I'm able to attach to a JVMPI and a JVMTI agent using IBM JRE 1.5
Patch looks okay to me.
Created attachment 74257 [details] 4th version of the patch Alan reported redundant consoles being created when attaching to a JVMTI agent. I've included a fix under this latest patch but there are other problems inside the new execution framework that does not allow the user to interact with the attached JVMTI agent's console. The user would have to select the console of the originally launched process to provide console input. I've opened the following defect against the new execution framework: https://bugs.eclipse.org/bugs/show_bug.cgi?id=197297
I've tested patch 4 with jre 1.4.2 and 1.5. Tried cases of both launch and attach using AC and IAC, security on and off. Looks good.
Fix checked into CVS - HEAD and 4.4.0.2 branch.
As of TPTP 4.6.0, TPTP is in maintenance mode and focusing on improving quality by resolving relevant enhancements/defects and increasing test coverage through test creation, automation, Build Verification Tests (BVTs), and expanded run-time execution. As part of the TPTP Bugzilla housecleaning process (see http://wiki.eclipse.org/Bugzilla_Housecleaning_Processes), this enhancement/defect is verified/closed by the Project Lead since this enhancement/defect has been resolved and unverified for more than 1 year and considered to be fixed. If this enhancement/defect is still unresolved and reproducible in the latest TPTP release (http://www.eclipse.org/tptp/home/downloads/), please re-open.