Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 319451 - Opening the launch dialog scans all plugins
Summary: Opening the launch dialog scans all plugins
Status: RESOLVED NOT_ECLIPSE
Alias: None
Product: PDE
Classification: Eclipse Project
Component: UI (show other bugs)
Version: 3.6   Edit
Hardware: PC Windows XP
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: PDE-UI-Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-07-09 20:21 EDT by Michael Scharf CLA
Modified: 2010-07-13 09:19 EDT (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Michael Scharf CLA 2010-07-09 20:21:08 EDT
This is related to bug 229073.

When I open the launch dialog it normally takes a second or two. (I have a flash disk that is quite fast). But sometimes the virus scanner jumps in and checks any file a program opens and then it take 10-20 minutes to open the launch dialog. Is there a way to disable the scanning of all plugins?

       at java.util.zip.ZipFile.open(Native Method)
        at java.util.zip.ZipFile.<init>(ZipFile.java:114)
        at org.eclipse.pde.internal.core.TracingOptionsManager.getOptions(TracingOptionsManager.java:173)
        at org.eclipse.pde.internal.core.TracingOptionsManager.addToTemplate(TracingOptionsManager.java:38)
        at org.eclipse.pde.internal.core.TracingOptionsManager.createTemplate(TracingOptionsManager.java:33)
        at org.eclipse.pde.internal.core.TracingOptionsManager.getTracingTemplateCopy(TracingOptionsManager.java:86)
        at org.eclipse.pde.internal.ui.launcher.TracingBlock.initializeFrom(TracingBlock.java:200)
        at org.eclipse.pde.ui.launcher.TracingTab.initializeFrom(TracingTab.java:89)
        at org.eclipse.pde.ui.launcher.AbstractPDELaunchConfigurationTabGroup$1.run(AbstractPDELaunchConfigurationTabGroup.java:61)
        at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
        at org.eclipse.pde.ui.launcher.AbstractPDELaunchConfigurationTabGroup.initializeFrom(AbstractPDELaunchConfigurationTabGroup.java:52)
        at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationTabGroupWrapper.initializeFrom(LaunchConfigurationTabGroupWrapper.java:194)
        at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationTabGroupViewer.displayInstanceTabs(LaunchConfigurationTabGroupViewer.java:751)
        at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationTabGroupViewer$8.run(LaunchConfigurationTabGroupViewer.java:623)
        at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
        at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationTabGroupViewer.inputChanged(LaunchConfigurationTabGroupViewer.java:640)
        at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationTabGroupViewer.setInput0(LaunchConfigurationTabGroupViewer.java:602)
        at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationTabGroupViewer.setInput(LaunchConfigurationTabGroupViewer.java:578)
        at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationsDialog.handleLaunchConfigurationSelectionChanged(LaunchConfigurationsDialog.java:940)
        at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationsDialog$3.selectionChanged(LaunchConfigurationsDialog.java:559)
        at org.eclipse.jface.viewers.StructuredViewer$3.run(StructuredViewer.java:867)
        at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
        at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:49)
        at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175)
        at org.eclipse.jface.viewers.StructuredViewer.firePostSelectionChanged(StructuredViewer.java:865)
        at org.eclipse.jface.viewers.StructuredViewer.setSelection(StructuredViewer.java:1700)
        at org.eclipse.jface.viewers.TreeViewer.setSelection(TreeViewer.java:1139)
        at org.eclipse.jface.viewers.Viewer.setSelection(Viewer.java:392)
        at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationsDialog.doInitialTreeSelection(LaunchConfigurationsDialog.java:599)
        at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationsDialog.initializeContent(LaunchConfigurationsDialog.java:1077)
        at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationsDialog.createContents(LaunchConfigurationsDialog.java:440)
        at org.eclipse.jface.window.Window.create(Window.java:431)
        at org.eclipse.jface.dialogs.Dialog.create(Dialog.java:1089)
        at org.eclipse.debug.internal.ui.launchConfigurations.LaunchConfigurationsDialog.create(LaunchConfigurationsDialog.java:371)
Comment 1 Michael Scharf CLA 2010-07-09 20:29:04 EDT
changed to PDE UI (I think it does not belong to debug)
Comment 2 Curtis Windatt CLA 2010-07-12 15:04:27 EDT
Can you provide more exact steps?

PDE must read all the plug-ins in the target platform the first time plug-in information is requested after startup.  However, this should only happen in the launch dialog when you open a PDE configuration (Eclipse application, OSGi framework, JUnit Plugin).  There is no way to disable this as without a PDEState, the majority of PDE's features wouldn't work.

On the surface, this could be related to bug 229073, but that bug is more to do with the peformance of creating the plug-in tree.  The launch configuration needs a list of plug-ins in the PDEState.  Even if we were able to avoid filling in the config's attributes until launch time, your launch would just hang until the AV finished.
Comment 3 Michael Scharf CLA 2010-07-12 17:56:58 EDT
It has really to do with the virus scanner settings. Because the virus scanner scans each file that is opened. The virus scanner our IT has installed is quite slow scanning jar files and it scans it a lot.


You are saying opening all plugins cannot be avoided when opening a pde launch configuration... Fortunately I was able to convince out IT to disable virus scanning for my eclipse installation and therefore the problem is gone...
Comment 4 Darin Wright CLA 2010-07-13 09:19:24 EDT
marking as NOT ECLIPSE.