| Summary: | JVMTI agent for agent controller not found | ||
|---|---|---|---|
| Product: | z_Archived | Reporter: | Neil Dunn <neildunn> |
| Component: | TPTP | Assignee: | Igor Alelekov <igor.alelekov> |
| Status: | CLOSED FIXED | QA Contact: | |
| Severity: | critical | ||
| Priority: | P1 | CC: | amc4, asaf.yaffe, caniszczyk, eclipse.org, guru.nagarajan, neildunn |
| Version: | unspecified | Keywords: | plan |
| Target Milestone: | --- | ||
| Hardware: | PC | ||
| OS: | All | ||
| Whiteboard: | closed460 | ||
| Bug Depends on: | |||
| Bug Blocks: | 178916 | ||
| Attachments: | |||
|
Description
Neil Dunn
Please install the JVMTI runtime with the New Agent Controller and retry. Could you please elabortate. I have: - Installed the New Agent Controller (agntctrl.linux_ia32-TPTP-4.2.1.zip) - Installed the "New Java Profiler" (javaprofiler.linux_ia32-TPTP-4.2.0.zip) as a plugin to the agent controller by dropping org.eclipse.tptp.javaprofiler into the plugins directory - Installed the "JVMTI Client" (jvmti-client-TPTP-4.2.0.zip) plugin for Eclipse - Installed the latest TPTP runtime for eclipse (tptp.runtime-TPTP-4.2.1.zip) Have I missed a step? What else do I need to install with the NAC? Neil You have the right steps. Can you retry with the TPTP 4.3 release. I tested the 4.3 and it looks good. I will look at the 4.2.1 download and investigate the issue I have a similar problem with TPTP 4.3 I've installed both, the JVMTI eclipse client and the JVMTI agent plugin for the agent controller; using Sun Java 1.6 on Windows. I can run a java application via "run" and add -agentlib:JPIBootLoader=JPIAgent:server=enabled;CGProf as JVM argument and the application works properly, albeit slowly (which i take as a sign that the profiler is working). When i start the same application via "profile as", the same parameters (except the -agentlibs stuff), choose "Java profiling with instrumentation" and then click on "test availability" i get the following error popup: ### The JVMTI agent org.eclipse.tptp.jvmti is not available. Please make sure the agent's libraries are available and configured properly. Reason: ### (no reason specified and nothing in the textarea when i expand the details). When i actually attempt to profile the application i get the following text in the progress view: ### Launching NLS missing message: TASK_CONNECTING_TO_AGENT in: org.eclipse.tptp.platform.jvmti.client.internal.messages ### The javaw process doesn't even start when i attempt to launch it via "profile as". So i suspect it is a bug in the eclipse side jvmti client. Before anybody asks: Yes, the agent controller is running (i get different error messages when it isn't) and yes, i've double-checked that the eclipse JVMTI client is installed. I think the "Java profiling with instrumentation" option wouldn't be available w/o the jvmti client. bumping the severity on this one as it's quite a problem After replacing pretty much every plugin of my eclipse setup - except the workspace - with current milestones things got even worse with the JVMTI plugin. Whenever i go to the profile -> profile as dialog a rather undefined error message popups and refers me to the error log, so here's what i've got, just from this single error (cleared my logs before i reproduced it). I'm using Eclipse, JDT 3.3M4, CDT 4.00 Nightly, TPTP 4.3 Platform Runtime, TPTP 4.3 Trace Runtime, TPTP JVMTI 4.3 (although internally it still seems to be 4.2). In addition to that the emf, equinox and birt dependencies for tptp. Well, here is the log: !SESSION 2007-01-06 05:11:57.074 ----------------------------------------------- eclipse.buildId=I20061214-1445 java.version=1.6.0 java.vendor=Sun Microsystems Inc. BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=de_DE Command-line arguments: -os win32 -ws win32 -arch x86 !ENTRY org.eclipse.osgi 4 0 2007-01-06 05:13:00.413 !MESSAGE An error occurred while automatically activating bundle org.eclipse.hyades.probekit (1664). !STACK 0 org.osgi.framework.BundleException: Exception in org.eclipse.hyades.probekit.ProbekitPlugin.start() of bundle org.eclipse.hyades.probekit. at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:1018) at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:974) at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:327) at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:260) at org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:400) at org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:111) at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:415) at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(DefaultClassLoader.java:189) at org.eclipse.osgi.framework.internal.core.BundleLoader.findLocalClass(BundleLoader.java:350) at org.eclipse.osgi.framework.internal.core.SingleSourcePackage.loadClass(SingleSourcePackage.java:37) at org.eclipse.osgi.framework.internal.core.BundleLoader.findClassInternal(BundleLoader.java:415) at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass(BundleLoader.java:379) at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass(BundleLoader.java:367) at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:83) at java.lang.ClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClassInternal(Unknown Source) at java.lang.Class.getDeclaredConstructors0(Native Method) at java.lang.Class.privateGetDeclaredConstructors(Unknown Source) at java.lang.Class.getConstructor0(Unknown Source) at java.lang.Class.newInstance0(Unknown Source) at java.lang.Class.newInstance(Unknown Source) at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.createExecutableExtension(RegistryStrategyOSGI.java:170) at org.eclipse.core.internal.registry.ExtensionRegistry.createExecutableExtension(ExtensionRegistry.java:787) at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:243) at org.eclipse.core.internal.registry.ConfigurationElementHandle.createExecutableExtension(ConfigurationElementHandle.java:51) at org.eclipse.hyades.trace.ui.internal.launcher.ProfilingSetsManager.initializeProfilingTypes(ProfilingSetsManager.java:214) at org.eclipse.hyades.trace.ui.internal.launcher.ProfilingSetsManager.initialize(ProfilingSetsManager.java:117) at org.eclipse.hyades.trace.ui.internal.launcher.ProfilingSetsManager.getProfilingTypesGroups(ProfilingSetsManager.java:93) at org.eclipse.hyades.trace.ui.launcher.ProfilingSetsManagerCopy.initializeProfilingTypesGroups(ProfilingSetsManagerCopy.java:135) at org.eclipse.hyades.trace.ui.internal.launcher.ProfilingSetsManager.initialize(ProfilingSetsManager.java:116) at org.eclipse.hyades.trace.ui.launcher.ProfilingSetsManagerCopy.<init>(ProfilingSetsManagerCopy.java:51) at org.eclipse.hyades.trace.ui.internal.core.TraceProfileUI.getProfilingSetWC(TraceProfileUI.java:964) at org.eclipse.hyades.trace.ui.internal.core.TraceProfileUI.createDataCollectorTree(TraceProfileUI.java:277) at org.eclipse.hyades.trace.ui.internal.core.TraceProfileUI.createFlatControl(TraceProfileUI.java:246) at org.eclipse.hyades.trace.ui.internal.core.TraceProfileUI.createControl(TraceProfileUI.java:207) at org.eclipse.hyades.trace.ui.internal.launcher.ProfileTab.createControl(ProfileTab.java:73) at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationTabGroupViewer.showInstanceTabsFor(LaunchConfigurationTabGroupViewer.java:810) at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationTabGroupViewer.displayInstanceTabs(LaunchConfigurationTabGroupViewer.java:743) at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationTabGroupViewer$7.run(LaunchConfigurationTabGroupViewer.java:633) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:67) at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationTabGroupViewer.inputChanged(LaunchConfigurationTabGroupViewer.java:651) at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationTabGroupViewer.setInput(LaunchConfigurationTabGroupViewer.java:612) at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationsDialog.handleLaunchConfigurationSelectionChanged(LaunchConfigurationsDialog.java:934) at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationsDialog$4.selectionChanged(LaunchConfigurationsDialog.java:559) at org.eclipse.jface.viewers.StructuredViewer$3.run(StructuredViewer.java:841) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37) at org.eclipse.core.runtime.Platform.run(Platform.java:850) at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:45) at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:153) at org.eclipse.jface.viewers.StructuredViewer.firePostSelectionChanged(StructuredViewer.java:839) at org.eclipse.jface.viewers.StructuredViewer.setSelection(StructuredViewer.java:1606) at org.eclipse.jface.viewers.Viewer.setSelection(Viewer.java:388) at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationsDialog.doInitialTreeSelection(LaunchConfigurationsDialog.java:599) at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationsDialog.initializeContent(LaunchConfigurationsDialog.java:1040) at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationsDialog.createContents(LaunchConfigurationsDialog.java:438) at org.eclipse.jface.window.Window.create(Window.java:426) at org.eclipse.jface.dialogs.Dialog.create(Dialog.java:1111) at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationsDialog.create(LaunchConfigurationsDialog.java:367) at org.eclipse.jface.window.Window.open(Window.java:785) at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationsDialog.open(LaunchConfigurationsDialog.java:1092) at org.eclipse.debug.ui.DebugUITools$1.run(DebugUITools.java:385) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:67) at org.eclipse.debug.ui.DebugUITools.openLaunchConfigurationDialogOnGroup(DebugUITools.java:389) at org.eclipse.debug.ui.DebugUITools.openLaunchConfigurationDialogOnGroup(DebugUITools.java:331) at org.eclipse.debug.ui.actions.OpenLaunchDialogAction.run(OpenLaunchDialogAction.java:80) at org.eclipse.jface.action.Action.runWithEvent(Action.java:499) at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:545) at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:490) at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:402) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:928) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3465) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3079) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1945) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1909) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:425) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) at org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplication.java:95) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.eclipse.equinox.internal.app.EclipseAppContainer.callMethod(EclipseAppContainer.java:522) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:147) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:104) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:74) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:354) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:170) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.eclipse.core.launcher.Main.invokeFramework(Main.java:339) at org.eclipse.core.launcher.Main.basicRun(Main.java:283) at org.eclipse.core.launcher.Main.run(Main.java:984) at org.eclipse.core.launcher.Main.main(Main.java:959) Caused by: java.lang.ExceptionInInitializerError at org.eclipse.hyades.probekit.ProbekitPlugin.start(ProbekitPlugin.java:66) at org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(BundleContextImpl.java:999) at java.security.AccessController.doPrivileged(Native Method) at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:993) ... 95 more Caused by: java.lang.ClassCastException: org.apache.xerces.jaxp.DocumentBuilderFactoryImpl cannot be cast to javax.xml.parsers.DocumentBuilderFactory at javax.xml.parsers.DocumentBuilderFactory.newInstance(Unknown Source) at org.eclipse.tptp.platform.probekit.registry.ProbeRegistry.<clinit>(ProbeRegistry.java:135) ... 99 more Root exception: java.lang.ExceptionInInitializerError at org.eclipse.hyades.probekit.ProbekitPlugin.start(ProbekitPlugin.java:66) at org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(BundleContextImpl.java:999) at java.security.AccessController.doPrivileged(Native Method) at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:993) at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:974) at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:327) at org.eclipse.osgi.framework.internal.core.AbstractBundle.start(AbstractBundle.java:260) at org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:400) at org.eclipse.core.runtime.internal.adaptor.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:111) at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:415) at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(DefaultClassLoader.java:189) at org.eclipse.osgi.framework.internal.core.BundleLoader.findLocalClass(BundleLoader.java:350) at org.eclipse.osgi.framework.internal.core.SingleSourcePackage.loadClass(SingleSourcePackage.java:37) at org.eclipse.osgi.framework.internal.core.BundleLoader.findClassInternal(BundleLoader.java:415) at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass(BundleLoader.java:379) at org.eclipse.osgi.framework.internal.core.BundleLoader.findClass(BundleLoader.java:367) at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:83) at java.lang.ClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClassInternal(Unknown Source) at java.lang.Class.getDeclaredConstructors0(Native Method) at java.lang.Class.privateGetDeclaredConstructors(Unknown Source) at java.lang.Class.getConstructor0(Unknown Source) at java.lang.Class.newInstance0(Unknown Source) at java.lang.Class.newInstance(Unknown Source) at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.createExecutableExtension(RegistryStrategyOSGI.java:170) at org.eclipse.core.internal.registry.ExtensionRegistry.createExecutableExtension(ExtensionRegistry.java:787) at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:243) at org.eclipse.core.internal.registry.ConfigurationElementHandle.createExecutableExtension(ConfigurationElementHandle.java:51) at org.eclipse.hyades.trace.ui.internal.launcher.ProfilingSetsManager.initializeProfilingTypes(ProfilingSetsManager.java:214) at org.eclipse.hyades.trace.ui.internal.launcher.ProfilingSetsManager.initialize(ProfilingSetsManager.java:117) at org.eclipse.hyades.trace.ui.internal.launcher.ProfilingSetsManager.getProfilingTypesGroups(ProfilingSetsManager.java:93) at org.eclipse.hyades.trace.ui.launcher.ProfilingSetsManagerCopy.initializeProfilingTypesGroups(ProfilingSetsManagerCopy.java:135) at org.eclipse.hyades.trace.ui.internal.launcher.ProfilingSetsManager.initialize(ProfilingSetsManager.java:116) at org.eclipse.hyades.trace.ui.launcher.ProfilingSetsManagerCopy.<init>(ProfilingSetsManagerCopy.java:51) at org.eclipse.hyades.trace.ui.internal.core.TraceProfileUI.getProfilingSetWC(TraceProfileUI.java:964) at org.eclipse.hyades.trace.ui.internal.core.TraceProfileUI.createDataCollectorTree(TraceProfileUI.java:277) at org.eclipse.hyades.trace.ui.internal.core.TraceProfileUI.createFlatControl(TraceProfileUI.java:246) at org.eclipse.hyades.trace.ui.internal.core.TraceProfileUI.createControl(TraceProfileUI.java:207) at org.eclipse.hyades.trace.ui.internal.launcher.ProfileTab.createControl(ProfileTab.java:73) at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationTabGroupViewer.showInstanceTabsFor(LaunchConfigurationTabGroupViewer.java:810) at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationTabGroupViewer.displayInstanceTabs(LaunchConfigurationTabGroupViewer.java:743) at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationTabGroupViewer$7.run(LaunchConfigurationTabGroupViewer.java:633) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:67) at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationTabGroupViewer.inputChanged(LaunchConfigurationTabGroupViewer.java:651) at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationTabGroupViewer.setInput(LaunchConfigurationTabGroupViewer.java:612) at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationsDialog.handleLaunchConfigurationSelectionChanged(LaunchConfigurationsDialog.java:934) at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationsDialog$4.selectionChanged(LaunchConfigurationsDialog.java:559) at org.eclipse.jface.viewers.StructuredViewer$3.run(StructuredViewer.java:841) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37) at org.eclipse.core.runtime.Platform.run(Platform.java:850) at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:45) at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:153) at org.eclipse.jface.viewers.StructuredViewer.firePostSelectionChanged(StructuredViewer.java:839) at org.eclipse.jface.viewers.StructuredViewer.setSelection(StructuredViewer.java:1606) at org.eclipse.jface.viewers.Viewer.setSelection(Viewer.java:388) at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationsDialog.doInitialTreeSelection(LaunchConfigurationsDialog.java:599) at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationsDialog.initializeContent(LaunchConfigurationsDialog.java:1040) at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationsDialog.createContents(LaunchConfigurationsDialog.java:438) at org.eclipse.jface.window.Window.create(Window.java:426) at org.eclipse.jface.dialogs.Dialog.create(Dialog.java:1111) at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationsDialog.create(LaunchConfigurationsDialog.java:367) at org.eclipse.jface.window.Window.open(Window.java:785) at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationsDialog.open(LaunchConfigurationsDialog.java:1092) at org.eclipse.debug.ui.DebugUITools$1.run(DebugUITools.java:385) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:67) at org.eclipse.debug.ui.DebugUITools.openLaunchConfigurationDialogOnGroup(DebugUITools.java:389) at org.eclipse.debug.ui.DebugUITools.openLaunchConfigurationDialogOnGroup(DebugUITools.java:331) at org.eclipse.debug.ui.actions.OpenLaunchDialogAction.run(OpenLaunchDialogAction.java:80) at org.eclipse.jface.action.Action.runWithEvent(Action.java:499) at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:545) at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:490) at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:402) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:928) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3465) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3079) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1945) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1909) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:425) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) at org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplication.java:95) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.eclipse.equinox.internal.app.EclipseAppContainer.callMethod(EclipseAppContainer.java:522) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:147) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:104) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:74) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:354) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:170) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.eclipse.core.launcher.Main.invokeFramework(Main.java:339) at org.eclipse.core.launcher.Main.basicRun(Main.java:283) at org.eclipse.core.launcher.Main.run(Main.java:984) at org.eclipse.core.launcher.Main.main(Main.java:959) Caused by: java.lang.ClassCastException: org.apache.xerces.jaxp.DocumentBuilderFactoryImpl cannot be cast to javax.xml.parsers.DocumentBuilderFactory at javax.xml.parsers.DocumentBuilderFactory.newInstance(Unknown Source) at org.eclipse.tptp.platform.probekit.registry.ProbeRegistry.<clinit>(ProbeRegistry.java:135) ... 99 more !ENTRY org.eclipse.jface 4 2 2007-01-06 05:13:00.522 !MESSAGE Problems occurred when invoking code from plug-in: "org.eclipse.jface". !STACK 0 java.lang.NullPointerException at org.eclipse.hyades.trace.ui.internal.launcher.ProfilingSetsManager.readSets(ProfilingSetsManager.java:354) at org.eclipse.hyades.trace.ui.internal.launcher.ProfilingSetsManager.readSetsFromPreferences(ProfilingSetsManager.java:341) at org.eclipse.hyades.trace.ui.internal.launcher.ProfilingSetsManager.initializeProfilingSets(ProfilingSetsManager.java:242) at org.eclipse.hyades.trace.ui.internal.launcher.ProfilingSetsManager.initialize(ProfilingSetsManager.java:118) at org.eclipse.hyades.trace.ui.internal.launcher.ProfilingSetsManager.getProfilingTypesGroups(ProfilingSetsManager.java:93) at org.eclipse.hyades.trace.ui.launcher.ProfilingSetsManagerCopy.initializeProfilingTypesGroups(ProfilingSetsManagerCopy.java:135) at org.eclipse.hyades.trace.ui.internal.launcher.ProfilingSetsManager.initialize(ProfilingSetsManager.java:116) at org.eclipse.hyades.trace.ui.launcher.ProfilingSetsManagerCopy.<init>(ProfilingSetsManagerCopy.java:51) at org.eclipse.hyades.trace.ui.internal.core.TraceProfileUI.getProfilingSetWC(TraceProfileUI.java:964) at org.eclipse.hyades.trace.ui.internal.core.TraceProfileUI.createDataCollectorTree(TraceProfileUI.java:277) at org.eclipse.hyades.trace.ui.internal.core.TraceProfileUI.createFlatControl(TraceProfileUI.java:246) at org.eclipse.hyades.trace.ui.internal.core.TraceProfileUI.createControl(TraceProfileUI.java:207) at org.eclipse.hyades.trace.ui.internal.launcher.ProfileTab.createControl(ProfileTab.java:73) at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationTabGroupViewer.showInstanceTabsFor(LaunchConfigurationTabGroupViewer.java:810) at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationTabGroupViewer.displayInstanceTabs(LaunchConfigurationTabGroupViewer.java:743) at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationTabGroupViewer$7.run(LaunchConfigurationTabGroupViewer.java:633) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:67) at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationTabGroupViewer.inputChanged(LaunchConfigurationTabGroupViewer.java:651) at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationTabGroupViewer.setInput(LaunchConfigurationTabGroupViewer.java:612) at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationsDialog.handleLaunchConfigurationSelectionChanged(LaunchConfigurationsDialog.java:934) at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationsDialog$4.selectionChanged(LaunchConfigurationsDialog.java:559) at org.eclipse.jface.viewers.StructuredViewer$3.run(StructuredViewer.java:841) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37) at org.eclipse.core.runtime.Platform.run(Platform.java:850) at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:45) at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:153) at org.eclipse.jface.viewers.StructuredViewer.firePostSelectionChanged(StructuredViewer.java:839) at org.eclipse.jface.viewers.StructuredViewer.setSelection(StructuredViewer.java:1606) at org.eclipse.jface.viewers.Viewer.setSelection(Viewer.java:388) at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationsDialog.doInitialTreeSelection(LaunchConfigurationsDialog.java:599) at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationsDialog.initializeContent(LaunchConfigurationsDialog.java:1040) at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationsDialog.createContents(LaunchConfigurationsDialog.java:438) at org.eclipse.jface.window.Window.create(Window.java:426) at org.eclipse.jface.dialogs.Dialog.create(Dialog.java:1111) at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationsDialog.create(LaunchConfigurationsDialog.java:367) at org.eclipse.jface.window.Window.open(Window.java:785) at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationsDialog.open(LaunchConfigurationsDialog.java:1092) at org.eclipse.debug.ui.DebugUITools$1.run(DebugUITools.java:385) at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:67) at org.eclipse.debug.ui.DebugUITools.openLaunchConfigurationDialogOnGroup(DebugUITools.java:389) at org.eclipse.debug.ui.DebugUITools.openLaunchConfigurationDialogOnGroup(DebugUITools.java:331) at org.eclipse.debug.ui.actions.OpenLaunchDialogAction.run(OpenLaunchDialogAction.java:80) at org.eclipse.jface.action.Action.runWithEvent(Action.java:499) at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:545) at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:490) at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:402) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:928) at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3465) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3079) at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1945) at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1909) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:425) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) at org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplication.java:95) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.eclipse.equinox.internal.app.EclipseAppContainer.callMethod(EclipseAppContainer.java:522) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:147) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:104) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:74) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:354) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:170) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.eclipse.core.launcher.Main.invokeFramework(Main.java:339) at org.eclipse.core.launcher.Main.basicRun(Main.java:283) at org.eclipse.core.launcher.Main.run(Main.java:984) at org.eclipse.core.launcher.Main.main(Main.java:959) Ok, now i've updated to the latest TPTP 4.4 nightly build, including the JVMTI client, new agent controller etc. etc. That fixes the problems from comment #5 and i'm back to exactly the same problems stated in comment #4. So i suggest to change the version tag to 4.4 and the OS to All since the original poster has/had the same problem on Linux and i'm on windows. Just to make sure that i haven't missed anything: 1. I extract the new AC to a seperate directory than the TPTP plugins, i.e. it's not an eclipse plugin but runs stand-alone. 2. i extract the JVMTI java profiler plugin for the newAC into the AC's directory 3. i extract the JVMTI client into the TPTP directory 4. add localhost:10006 in eclipse as a profiling host 5. disable eclipse's the built-in agenet controller 6. set the java runtime in the agent controller (via setupConfig) that's all i have to do, right? Since the error message states it can't find the jvmti agent controller and i should check if it's configured properly, but the documentation (http://www.eclipse.org/tptp/platform/documents/tutorials/jvmti/Java_Application_Profiling_using_TPTP-r4-3.html) doesn't state anything about additional configuration steps that are required on the newAC side. The only thing that's mentioned is the client port, but the AC is already listening on port 10002 and 10006, so i figure it's set up correctly. sorry, i meant the update to 4.4 nightly fixes the problems mentioned in comment #6 fixing version,os Chris, Are you attempting to the JVMTI profiling on Z/OS? The JVMTI profiler is currently supported only on Windows and Linux on IA. Guru, this problem seems to be related to the timeout issues we saw on Windows and Linux with the New AC. Do we have a Bugzilla open for tracking this? Created attachment 57017 [details]
logs for TPTP-4.4.0-200701170100
updated the newAC and TPTP plugin to TPTP-4.4.0-200701170100. Still the same problem.
I've gathered all related logs i could find, but they don't reveal that much. I guess the most interesting one is the tptpParseError.log. The 2 different errors are the result of a test availability and a profiling launch attempt.
There is an issue with bugzilla - so I cannnot update the target version. I will work on this. Thanks some feedback would be useful. I.e. is the cause known? Are some other logs or further information required? Can we assist the bug finding procedure in any other way? Created attachment 58059 [details]
Stack trace generated by Eclipse
Stack trace dumped to console when trying to initiate a profiling session.
I am still waiting on this bug fix. I would like to know if a fix is expected anytime in the near future as it is blocking an important project. If it will not be fixed soon please say. If the code is also unstable and should not be used to create new functionality please say that too! I have tried today from a fresh install and all the latest nightlies to get this running: eclipse-SDK-3.3M4-linux-gtk.tar.gz jvmti-client-TPTP-4.4.0-200701310100.zip agntctrl.linux_ia32.sdk-TPTP-4.2.0.zip emf-sdo-xsd-SDK-2.2.1.zip tptp.runtime-TPTP-4.4.0-200701310100.zip agntctrl.linux_ia32-TPTP-4.2.0.zip tptp.sdk-TPTP-4.4.0-200701310100.zip All running on Linux. I took the following installation steps: * Untarred Eclipse into a directory ./install/eclipse * Unzipped EMF into ./install/eclipse * Unzipped TPTP-SDK into ./install/eclipse * Unzipped TPTP-Runtime into ./install/eclipse * Unzipped JVMTI-Client into ./install/eclipse * Unzipped Agent Controller runtime to ./install/ac * Unzipped Agent Controller SDK to ./install/ac * Unzipped the "New Java Profiler" for all platforms then moved the linux_ia32 version of org.eclipse.tptp.javaprofiler/ to ./install/ac/plugins/ Note: I had to use the version for all_platforms as the nightly of the linux_ia32 version (javaprofiler.linux_ia32-TPTP-4.4.0-200701311213.zip) gives a 404 on the download page. * Ran ./install/ac/bin/SetConfig.sh and accepted all the defaults. I then did the followings: * Appended ./install/ac/lib to LD_LIBRARY_PATH * Started the Agent Controller. ./install/ac/bin/ACServer * Started eclipse (./install/eclipse/eclipse) * Wrote a 2 line program. * Opened Preferences -> Profiling and Logging -> Hosts and added localhost:10006 * Hit "Test Connection" and recieved the message "Connection Success". * Selected Run -> Profile As -> Java Application * Selected Execution Time Analysis in the "Java Profiling (Java 5.0+)" section of the "Monitor" tab. * Hit "Run" This printed the following message to the Console: Exception in thread "main" java.lang.NoClassDefFoundError Starting a profiling session dumps a stack trace (Attachment #58059 [details]) to the console. There are no details in the agent controller's servicelog and I cannot find any Eclipse logs that might give me more details. In the Eclipse "Error Log" view the following message is also dumped twice: NLS missing message: TASK_CONNECTING_TO_AGENT in: org.eclipse.tptp.platform.jvmti.client.internal.messages And: NLS missing message: ERROR_TI_MODEL_CREATION in: org.eclipse.tptp.platform.jvmti.client.internal.messages After hanging at 78% progress the launch then fails and the stack trace attached ( Attachment #58059 [details]) is dumped by Eclipse to either stderr or stdout. There is no useful log output in servicelog.log and I cannot find any Eclipse logs with more details. If you actually believe I should be able to do carry out this scenario please tell meI was planning on using this new technology in a project I am working on but I fear it is currently too unstable to be of any use. I would like to know if you expect this to be fixed anytime in the near future so that I can decide whether to continue attempting to work with all this stuff. Neil Neil - I tried using the driver on Linux and I have not been able to recreate it. Lets try and resolve the issue you have. a) What version of Linux are you using? b) What version of Java are using? Can you also to check to see if there are no other installs of the Agent Controller on your machine. I would like you to try running the "Profiler" from the command line. To run the new Java Profiler in standalone mode on Linux: a) Set TPTP_AC_HOME=<<Agent Controller Home>> b) Set JAVA_PROFILER_HOME=%TPTP_AC_HOME%/plugins/org.eclipse.tptp.javaprofiler c) Add the following directories to LD_LIBRARY_PATH: %JAVA_PROFILER_HOME%:%TPTP_AC_HOME%/lib d) Execute the following command: java ‘-agentlib:JPIBootLoader=JPIAgent:server=standalone;CGProf’ <<Your Application to profile>> Let me know if you are able to invoke the profiler. Neil Can you also attach the java profiler runtime plugin configuration file i.e. org.eclipse.tptp.javaprofiler/ that you installed to ./install/ac/plugins/ The file is in the org.eclipse.tptp.javaprofiler/config/config.xml Thanks, Guru (In reply to comment #17) bash-3.00$ java -version java version "1.5.0_03" Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_03-b07) Java HotSpot(TM) Client VM (build 1.5.0_03-b07, mixed mode, sharing) bash-3.00$ uname -a Linux glyph10 2.6.17.11-x86_01doc #1 SMP Wed Sep 6 12:10:14 BST 2006 i686 Intel(R) Pentium(R) 4 CPU 3.00GHz unknown GNU/Linux This is a Mandrakelinux release 10.2 (Limited Edition 2005) for i586 install. The call graph profiler runs successfully and generates a trace file trace.trcxml of about 17M in the working directory. Created attachment 58070 [details]
javaprofiler plugin config
pluginconfig.xml
I also spotted: (01/01/07 23:34:46 /vol/bitbucket/nd03/partial-eclipse/install/ac/bin/tptpProcessController) XML Error: Expected comment or processing instruction (error detected at lin e:1, col:278, in "parseApplication()") in the tptpParseError.log Cool the fact that the profiler works in the standalone says the JVM and the OS configs are good. Let me look up the attachment of the plugin. Neil - when you bring up the Eclipse client to profile - what response do you get when you select the Profiler and say Test Availability? (In reply to comment #22) Running the "Test Availability" command gives the following error message: The JVMTI agent org.eclipse.tptp.jvmti is not available. Make sure the agent's libraries are available and it is configured properly. The Reason dialogue is empty. Created attachment 58100 [details]
Stack trace generated by Eclipse when running "Test Availability"
(In reply to comment #24) Running "Test Availability" also dumps the following to stdout or stderr. From ACServer: Exception in thread "main" java.lang.NoClassDefFoundError From Eclipse (see Attachment #58100 [details]) Neil - can you try the following
a) Start the Agent Controller
b) Invoke Eclipse Workbench
a) In the Eclipse Workbench select profiler
b) IN the Profiler Launch Configuration select "Eclipse Application"
c) In the Monitor select (Java profiling with Instrumentation)
d) Do Profile
Let me know what you see.
I am in the US (GMT -8)
Thanks,
Guru
(In reply to comment #27) Exactly the same problem. NoClassDefFoundError dumped to the Eclipse Console and the same stack trace as attached dumped to stdout (or stderr). Neil - one more try
a) Can you stop the Agent Controller
b) Go to the ac_install/config directory
-- edit the file serviceconfig.xml
-- Search for Logging - modify format="Simple"
<Logging directory="%TPTP_AC_HOME%\config" format="Simple" level="INFORMATION"/>
c) Restart AC
d) Try profiling again
(In reply to comment #29) Identical error messages in Console and dumped to stdout. In servicelog.log there is the following: File transfer operations are currently disabled in the Agent Controller Compatibility layer. Cannot create JVM Received command for unrecognized interface: iid=org.eclipse.tptp.eventProvider, cmd=listenerAccepted CONSOLE LAUNCHED COMMAND for connection(5001). Neil - one last info Can you upload the serviceconfig.xml file. Created attachment 58120 [details]
Service config file - Linux
Neil - your config file looks good. Everything looks fine on your side. I have a machine closer to your config that I am going to try on. It may be later in the day since we are closing in on an iteration. (In reply to comment #33) Ok. It's nearly the end of the day here so I'll be looking out for a reply over the weekend or Monday! Thanks for the help, lets hope we can sort this out. Neil - your config file looks good. Everything looks fine on your side. I have a machine closer to your config that I am going to try on. It may be later in the day since we are closing in on an iteration. Guru have we made any progress here? Is there anything else I can do to move the bugfix along? A new build to try? Possible configuration changes? Regards, Neil Sorry Neil, I have not been able to recreate this issue. I am working on a patch on additional logging info that can be output on your machine that will help in root causing the issue. Sorry - too many things happening.
One last input -
a) In the Eclipse Preferences i.e. Menu->Window->Preferences
Select Agent Controller ->Integrated Agent Controller
a) Check the box - allow remote connection
b) Set the Port value to be 10006(Default value of the New Agent Controller port)
Let me know if you see a difference.
Neil I have not been able to recreate the issue with the latest source base. I am able to do profiling on Linux both from a Local Eclipse Workbench and a remote Eclipse workbench running on windows. The configurations I have tested are a) RH - 2.4.21-27.ELsmp gcc:3.2.3 20030502 (Red Hat Linux 3.2.3-47) b) SUSE LINUX Enterprise Server 9 (i586) Kernel: 2.6.5-7.69-smp gcc:(GCC) 3.3.3 (SuSE Linux) An issue I had was that the Agent Controller port of 10006 was the one that worked. The backward compatibility port of 10002 that allows the Old AC and new AC connections on windows did not work on lInux. Let me know after you have tried with latest code base Guru. This is getting rather frustrating. I am running everything on Linux including Eclipe. I have downloaded the following for install: agntctrl.linux_ia32.sdk-TPTP-4.4.0-200702160321.zip eclipse-SDK-3.3M4-linux-gtk.tar.gz tptp.sdk-TPTP-4.4.0-200702160321.zip agntctrl.linux_ia32-TPTP-4.4.0-200702160321.zip emf-sdo-xsd-SDK-2.3.0M4.zip tptp.runtime-TPTP-4.4.0-200702160321.zip The agent controller and tptp runtime and sdk are the latest 4.4 development builds as of February 17th (they were released on 16th of Feb according to download and file name). After installing Eclipse, EMF and the TPTP SDK and Runtime I now have a situation where there is no "Profile" section in the Run menu and no Preferences tab for a profiler. According to the "Product Congifuration" all of the TPTP plugins are installed and enabled including the "TPTP JVMTI Profiler" so why can't I run it or find any mention of it in anywhere in the GUI? I am going to try the 4.3 builds again to see if this makes any difference. Help NEEDED urgently. Guru I have made further progess. I downloaded and installed the "All in one" TPTP runtime (which includes a full Eclipse installation which is unexpected, is this correct). Running this version of the Eclipse install gives me all the necessary profiling options and I can connect to the agent controller when I "Test Connection' on port 10006. The problem is now this: When I execute a profile I get the following error: Error occurred during initialization of VM Could not find agent library on the library path or in the local directory: JPIBootLoader There is no JPIBootloader.so in the zip files: agntctrl.linux_ia32-TPTP-4.4.0-200702160321.zip agntctrl.linux_ia32.sdk-TPTP-4.4.0-200702160321.zip Is this a problem with the build like I reported previously? I still would like to know why it doesn't work if I install the tptp plugins to a seperate eclipse install too. I don't have confidence in all of this and I did want to actually work with the code and build upon it. Searching through the "agent controller for all platforms" the JPIBootLoader only appears in the win_ia32, win_em64 and win_ipf builds. Why is it not in the linux 32 bit? Is this a build error? $ find . | grep -i jpi ./win_ia32/plugins/org.eclipse.tptp.javaprofiler/JPI.dll ./win_ia32/plugins/org.eclipse.tptp.javaprofiler/JPIBootLoader.dll ./win_em64t/plugins/org.eclipse.tptp.javaprofiler/JPI.dll ./win_em64t/plugins/org.eclipse.tptp.javaprofiler/JPIBootLoader.dll ./win_ipf/plugins/org.eclipse.tptp.javaprofiler/JPI.dll ./win_ipf/plugins/org.eclipse.tptp.javaprofiler/JPIBootLoader.dll (In reply to comment #41) > The problem is now this: When I execute a profile I get the following error: > Error occurred during initialization of VM > Could not find agent library on the library path or in the local directory: > JPIBootLoader Ok, by using the all-in-one-package (which i'm not willing to download) you made progress and arrived at a different error, right? I've upgraded to Eclipse 3.3M5 and TPTP-4.4.0-200702160321 (platform runtime, trace tools) + EMF stuff Does that mean a) there's something missing in the standalone downloads or b) we missed some requirements? I am not seeing this issue on Linux. Pls let me know if there are other concerns on Linux/JVMTI It's still an issue on windows... as reported before connecting to the agent controller and launching an application to profile doesn't work and spawns entries like (03/04/07 11:24:22 ACServer.exe) XML Error: Expected whitespace (error detected at line:23, col:95, in "parseMessage()") in the tptpparseerror.log. So, please reopen the bug, it's certainly not resolved/fixed. With the latest driver on windows I have been able to recreate this. This seems like a Threading issue in the AgentController. The XML Parser strips the "Class" to be launched and inserts null. This causes the Process launching to fail and hence the libraries not found message is reported. There is an issue with the XML Parsing on the Agent Controller side. Whenever you have this error you see an entry in the tptpparseerror.log file in the AC/bin directory. The message is XML Error: Expected whitespace (error detected at line:23, col:95, in "parseMessage()") in the tptpparseerror.log. Command Sent by CLient: Command Handler <Cmd dest="101" src="113" ctxt="3"><startProcess iid="org.eclipse.tptp.processController"><launchInfo><Application executable="java.exe" location="C:\temp\TPTP44-Iter1\eclipse"><Parameter value="-Xms40m -Xmx256m -agentlib:JPIBootLoader=JPIAgent:server=controlled;CGProf org.eclipse.core.launcher.Main -launcher C:\temp\TPTP44-Iter1\eclipse\eclipse -name Eclipse -showsplash 600 -product org.eclipse.sdk.ide -data C:\temp\ticlientupd/../runtime-New_configuration(1) -configuration "file:C:/temp/ticlientupd/.metadata/.plugins/org.eclipse.pde.core/New_configuration (1)/" -dev "file:C:/temp/ticlientupd/.metadata/.plugins/org.eclipse.pde.core/New_configuration (1)/dev.properties" -pdelaunch -os win32 -ws win32 -arch x86"/><Variable name="CLASSPATH" position="prepend" value="C:\temp\TPTP44-Iter1\eclipse\plugins\org.eclipse.equinox.launcher_1.0.0.v20070208a.jar"/></Application><keepRunning>0</keepRunning><noNotices>0</noNotices></launchInfo><consoleConnectID>5005</consoleConnectID></startProcess></Cmd> Command Processed by the AgentController and used for launchign the process Agent 'ProcessController' parsed xml cmd <Cmd ctxt="3" dest="101" src="113"><startProcess iid="org.eclipse.tptp.processController"><launchInfo><Application executable="java.exe" location="C:\temp\TPTP44-Iter1\eclipse"/></launchInfo></startProcess></Cmd> **********NOTICE that the Command For launching the StartProcess is missing Critical information************ The process launch fails and the agent is not launched. Created attachment 61860 [details]
Service Log that captures the AC output when this occurs
The Log file for the Agent Controller that captures the stripped start process command
Created attachment 61862 [details]
ServiceLog for the scenario where the launch succeeds
Look for the following String in the Log file. The StartProcess command used by the Process COntroller to launch the Process. In this scenario the process launchign succeeds.;
Agent 'ProcessController' parsed xml cmd <Cmd ctxt="3" dest="101" src="118"><startProcess iid="org.eclipse.tptp.processController"><launchInfo><Application executable="java.exe" location="C:\temp\TPTP44-Iter1\eclipse"><Parameter value="-Xms40m -Xmx256m -agentlib:JPIBootLoader=JPIAgent:server=controlled;CGProf org.eclipse.core.launcher.Main -launcher C:\temp\TPTP44-Iter1\eclipse\eclipse -name Eclipse -showsplash 600 -product org.eclipse.sdk.ide -data C:\runtime-New_configuration/../runtime-New_configuration -configuration file:C:/runtime-New_configuration/.metadata/.plugins/org.eclipse.pde.core/New_configuration/ -dev file:C:/runtime-New_configuration/.metadata/.plugins/org.eclipse.pde.core/New_configuration/dev.properties -pdelaunch -os win32 -ws win32 -arch x86"/><Variable name="CLASSPATH" position="prepend" value="C:\temp\TPTP44-Iter1\eclipse\plugins\org.eclipse.equinox.launcher_1.0.0.v20070208a.jar"/></Application><keepRunning>0</keepRunning><noNotices>0</noNotices></launchInfo><consoleConnectID>5008</consoleConnectID></startProcess></Cmd>
Created attachment 61925 [details] patch The XML issue is caused by illegal command formating on the client side. You can see that the command in the Comment #47 has internal double-quote characters in the attribute of the <Parameter..> tag. A solution could be in replacing of these internal double-quote characters by single-quotes as it is recommended at xml.org. Guru, could you review the patch for the execution framework? The Successfull scenario in the Comment #49 also has potential issues since corresponding command hasn't any internal quotes. And if a user launching directoty has spaces, he will get the launching error. It could be recommended to use quotes as well. Applied Patch. The tests look good for windows (Tested simple apps and Eclipse WOrkbench) The Linux testing is yet to be done for JVMTI client. Validated on Linux and WIndows in the 3/26 driver. Thx. The described errors don't occur anymore :) 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. |