-
Notifications
You must be signed in to change notification settings - Fork 1.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Indexer slowness freezes editor (+2) #342
Comments
(Submitted via user feedback.) |
Removed the owner. |
Could not reproduce the problem. Not sure whether user meant added library by using #import. Anyways tried to do add library('base') and also #import, in both cases autocomplete did not freeze the editor. |
This has the same root problem as issue #196. If you try to do something before the indexer has finished you may freeze the UI thread. We might be able to work around this particular problem by changing the way SearchEngine works. If the indexer isn't done it could return an empty list. You'd get no type completion proposals but at least it wouldn't look like your app is frozen. In this case, it takes about 5 minutes (Mac Pro desktop machine) for the indexer to finish with base. That's enough time for a lot of things to go wrong. We can expect to see more bug reports from users blaming all sorts of things for their app freezing, if they try to work with base. Pre-compiled indices would not help in this case since he's opening the library in the editor. Added Usability, Performance labels. |
[user feedback] //////////////////////////////////////////////////////////////////////////////////// log unavailable: /Users/lukechurch/Downloads/dart/workspace/.metadata/.log (No such file or directory) Changed the title to: "Indexer slowness freezes editor (+2)". |
Set owner to @bwilkerson. |
The indexer has been replaced. Please re-open if there is still a problem. Added AssumedStale label. |
I tried to add the base library (the one that contains the AnimationScheduler) to my project by opening the library, and then using #Library('base'). When I did that, and attempted to get an AutoComplete for AnimationScheduler, the app froze.
////////////////////////////////////////////////////////////////////////////////////
Editor Version: 921
OS: Windows 7
////////////////////////////////////////////////////////////////////////////////////
!SESSION 2011-11-03 15:47:15.510 -----------------------------------------------
eclipse.buildId=unknown
java.version=1.7.0_01
java.vendor=Oracle Corporation
BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_US
Command-line arguments: -os win32 -ws win32 -arch x86_64 -data workspace
!ENTRY org.eclipse.core.resources 4 2 2011-11-03 17:16:15.539
at org.eclipse.swt.widgets.Display.filterEvent(Display.java:1262)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1052)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1077)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1062)
at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1104)
at org.eclipse.swt.widgets.Widget.sendKeyEvent(Widget.java:1100)
at org.eclipse.swt.widgets.Widget.wmChar(Widget.java:1509)
at org.eclipse.swt.widgets.Control.WM_CHAR(Control.java:4640)
at org.eclipse.swt.widgets.Canvas.WM_CHAR(Canvas.java:345)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:4528)
at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:341)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:4972)
at org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native Method)
at org.eclipse.swt.internal.win32.OS.DispatchMessage(OS.java:2530)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3752)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2696)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2660)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2494)
at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:674)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:667)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at com.google.dart.tools.deploy.DartIDEApplication.start(DartIDEApplication.java:44)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:344)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
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.launcher.Main.invokeFramework(Main.java:622)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577)
at org.eclipse.equinox.launcher.Main.run(Main.java:1410)
at org.eclipse.equinox.launcher.Main.main(Main.java:1386)
!ENTRY org.eclipse.core.jobs 2 2 2011-11-03 17:17:04.665
!MESSAGE Job found still running after platform shutdown. Jobs should be canceled by the plugin that scheduled them during shutdown: org.eclipse.ui.internal.decorators.DecorationScheduler$1
!SESSION 2011-11-03 17:55:31.786 -----------------------------------------------
eclipse.buildId=unknown
java.version=1.7.0_01
java.vendor=Oracle Corporation
BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_US
Command-line arguments: -os win32 -ws win32 -arch x86_64 -data workspace
!ENTRY com.google.dart.tools.ui 4 10001 2011-11-03 17:56:58.496
!MESSAGE Internal Error
!STACK 0
java.lang.reflect.InvocationTargetException
at org.eclipse.ui.actions.WorkspaceModifyOperation.run(WorkspaceModifyOperation.java:121)
at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:121)
Caused by: Dart Model Exception: Core Exception [code 0] Too many files representing the library file ${user.home}esktopartorkspaceestest.dart
at com.google.dart.tools.core.internal.model.DartModelManager.createLibraryProject(DartModelManager.java:1273)
at com.google.dart.tools.core.internal.model.DartModelManager.openLibrary(DartModelManager.java:971)
at com.google.dart.tools.core.DartCore.openLibrary(DartCore.java:492)
at com.google.dart.tools.core.generator.ApplicationGenerator.execute(ApplicationGenerator.java:99)
at com.google.dart.tools.ui.wizard.NewApplicationWizard.performOperation(NewApplicationWizard.java:99)
at com.google.dart.tools.ui.wizard.NewApplicationWizard$1.execute(NewApplicationWizard.java:70)
at org.eclipse.ui.actions.WorkspaceModifyOperation$1.run(WorkspaceModifyOperation.java:106)
at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2344)
at org.eclipse.ui.actions.WorkspaceModifyOperation.run(WorkspaceModifyOperation.java:118)
... 1 more
Root exception:
Dart Model Exception: Core Exception [code 0] Too many files representing the library file ${user.home}esktopartorkspaceestest.dart
at com.google.dart.tools.core.internal.model.DartModelManager.createLibraryProject(DartModelManager.java:1273)
at com.google.dart.tools.core.internal.model.DartModelManager.openLibrary(DartModelManager.java:971)
at com.google.dart.tools.core.DartCore.openLibrary(DartCore.java:492)
at com.google.dart.tools.core.generator.ApplicationGenerator.execute(ApplicationGenerator.java:99)
at com.google.dart.tools.ui.wizard.NewApplicationWizard.performOperation(NewApplicationWizard.java:99)
at com.google.dart.tools.ui.wizard.NewApplicationWizard$1.execute(NewApplicationWizard.java:70)
at org.eclipse.ui.actions.WorkspaceModifyOperation$1.run(WorkspaceModifyOperation.java:106)
at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2344)
at org.eclipse.ui.actions.WorkspaceModifyOperation.run(WorkspaceModifyOperation.java:118)
at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:121)
Caused by: Dart Model Exception: Dart Model Status [Too many files representing the library file ${user.home}esktopartorkspaceestest.dart]
at com.google.dart.tools.core.internal.model.DartModelManager.createLibraryProject(DartModelManager.java:1240)
at com.google.dart.tools.core.internal.model.DartModelManager.openLibrary(DartModelManager.java:971)
at com.google.dart.tools.core.DartCore.openLibrary(DartCore.java:492)
at com.google.dart.tools.core.generator.ApplicationGenerator.execute(ApplicationGenerator.java:99)
at com.google.dart.tools.ui.wizard.NewApplicationWizard.performOperation(NewApplicationWizard.java:99)
at com.google.dart.tools.ui.wizard.NewApplicationWizard$1.execute(NewApplicationWizard.java:70)
at org.eclipse.ui.actions.WorkspaceModifyOperation$1.run(WorkspaceModifyOperation.java:106)
at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2344)
at org.eclipse.ui.actions.WorkspaceModifyOperation.run(WorkspaceModifyOperation.java:118)
at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:121)
!ENTRY org.eclipse.ui 4 0 2011-11-03 17:56:58.505
!MESSAGE Unhandled event loop exception
!STACK 0
org.eclipse.swt.SWTException: Failed to execute runnable (java.lang.NullPointerException)
at org.eclipse.swt.SWT.error(SWT.java:4282)
at org.eclipse.swt.SWT.error(SWT.java:4197)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:138)
at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4140)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3757)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2696)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2660)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2494)
at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:674)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:667)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at com.google.dart.tools.deploy.DartIDEApplication.start(DartIDEApplication.java:44)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:344)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
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.launcher.Main.invokeFramework(Main.java:622)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577)
at org.eclipse.equinox.launcher.Main.run(Main.java:1410)
at org.eclipse.equinox.launcher.Main.main(Main.java:1386)
Caused by: java.lang.NullPointerException
at com.google.dart.tools.ui.wizard.NewApplicationWizard.performPostOperationUIAction(NewApplicationWizard.java:108)
at com.google.dart.tools.ui.wizard.NewApplicationWizard$2.run(NewApplicationWizard.java:82)
at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:135)
... 23 more
The text was updated successfully, but these errors were encountered: