Note: This website is archived. For up-to-date information about D projects and development, please visit wiki.dlang.org.

Ticket #112 (new defect)

Opened 11 years ago

Last modified 9 years ago

100% processor consumption

Reported by: Vladimir Assigned to:
Priority: critical Component: descent.astview
Version: Keywords:
Cc:

Description

svn revision 1233

Hard to reproduce. It took whole day of normal use of Descent under debugger. Problem: suddenly, both cpu cores become 100% utilized.

I have seen similar symptoms + all the vm's memory allocated, but maybe it is different problem.

org.eclipse.equinox.launcher.Main at localhost:49536 (Suspended)	
	Daemon System Thread [Attach Listener] (Suspended)	
	Daemon System Thread [Signal Dispatcher] (Suspended)	
	Daemon System Thread [Finalizer] (Suspended)	
	Daemon System Thread [Reference Handler] (Suspended)	
	Thread [main] (Suspended)	
	Daemon Thread [State Data Manager] (Suspended)	
		Thread.sleep(long) line: not available [native method]	
		StateManager.run() line: 297	
		Thread.run() line: not available [local variables unavailable]	
	Daemon Thread [Framework Event Dispatcher] (Suspended)	
		Object.wait(long) line: not available [native method]	
		EventManager$EventThread(Object).wait() line: 485 [local variables unavailable]	
		EventManager$EventThread.getNextEvent() line: 355	
		EventManager$EventThread.run() line: 293	
	Daemon Thread [Start Level Event Dispatcher] (Suspended)	
		Object.wait(long) line: not available [native method]	
		EventManager$EventThread(Object).wait() line: 485 [local variables unavailable]	
		EventManager$EventThread.getNextEvent() line: 355	
		EventManager$EventThread.run() line: 293	
	Daemon Thread [Java indexing] (Suspended)	
		Object.wait(long) line: not available [native method]	
		IndexManager(Object).wait() line: 485 [local variables unavailable]	
		IndexManager(JobManager).run() line: 349	
		Thread.run() line: not available [local variables unavailable]	
	Daemon Thread [descent.internal.ui.text.JavaReconciler] (Suspended)	
		Object.wait(long) line: not available [native method]	
		AbstractReconciler$BackgroundThread.run() line: 176	

This thread consumes one core:

	Daemon Thread [descent.internal.ui.text.JavaReconciler] (Suspended)	
		HashMap<K,V>.get(Object) line: not available	
		DefaultBindingResolver.resolveBuiltinProperty(Type, SimpleName) line: 449	
		DefaultBindingResolver.resolveName(Name) line: 408	
		SimpleName(Name).resolveBinding() line: 88	
		SemanticToken.getBinding() line: 45	
		SemanticHighlightings$DeprecatedHighlighting.consumes(SemanticToken) line: 1382	
		SemanticHighlightingReconciler$PositionCollector.visit(SimpleName) line: 133	
		SimpleName.accept0(ASTVisitor) line: 145	
		SimpleName(ASTNode).accept(ASTVisitor) line: 2915	
		DotIdentifierExpression(ASTNode).acceptChild(ASTVisitor, ASTNode) line: 2953	
		DotIdentifierExpression.accept0(ASTVisitor) line: 148	
		DotIdentifierExpression(ASTNode).accept(ASTVisitor) line: 2915	
		Assignment(ASTNode).acceptChild(ASTVisitor, ASTNode) line: 2953	
		Assignment.accept0(ASTVisitor) line: 253	
		Assignment(ASTNode).accept(ASTVisitor) line: 2915	
		ExpressionStatement(ASTNode).acceptChild(ASTVisitor, ASTNode) line: 2953	
		ExpressionStatement.accept0(ASTVisitor) line: 129	
		ExpressionStatement(ASTNode).accept(ASTVisitor) line: 2915	
		Block(ASTNode).acceptChildren(ASTVisitor, ASTNode$NodeList) line: 2976	
		Block.accept0(ASTVisitor) line: 123	
		Block(ASTNode).accept(ASTVisitor) line: 2915	
		ConstructorDeclaration(ASTNode).acceptChild(ASTVisitor, ASTNode) line: 2953	
		ConstructorDeclaration.accept0(ASTVisitor) line: 356	
		ConstructorDeclaration(ASTNode).accept(ASTVisitor) line: 2915	
		SemanticHighlightingReconciler$PositionCollector.visitConditionalDeclaration(ConditionalDeclaration) line: 196	
		SemanticHighlightingReconciler$PositionCollector.visit(DebugDeclaration) line: 162	
		DebugDeclaration.accept0(ASTVisitor) line: 216	
		DebugDeclaration(ASTNode).accept(ASTVisitor) line: 2915	
		AggregateDeclaration(ASTNode).acceptChildren(ASTVisitor, ASTNode$NodeList) line: 2976	
		AggregateDeclaration.accept0(ASTVisitor) line: 315	
		AggregateDeclaration(ASTNode).accept(ASTVisitor) line: 2915	
		CompilationUnit(ASTNode).acceptChildren(ASTVisitor, ASTNode$NodeList) line: 2976	
		CompilationUnit.accept0(ASTVisitor) line: 828	
		CompilationUnit(ASTNode).accept(ASTVisitor) line: 2915	
		SemanticHighlightingReconciler.reconcilePositions(ASTNode[]) line: 452	
		SemanticHighlightingReconciler.reconciled(CompilationUnit, boolean, IProgressMonitor) line: 406	
		CompilationUnitEditor.reconciled(CompilationUnit, boolean, IProgressMonitor) line: 1725	
		JavaReconcilingStrategy.reconcile(boolean) line: 128	
		JavaReconcilingStrategy.reconcile(IRegion) line: 140	
		JavaCompositeReconcilingStrategy(CompositeReconcilingStrategy).reconcile(IRegion) line: 86	
		JavaCompositeReconcilingStrategy.reconcile(IRegion) line: 93	
		JavaReconciler(MonoReconciler).process(DirtyRegion) line: 75	
		JavaReconciler.process(DirtyRegion) line: 342	
		AbstractReconciler$BackgroundThread.run() line: 204	
	Daemon Thread [descent.internal.ui.text.JavaReconciler] (Suspended)	
		Object.wait(long) line: not available [native method]	
		AbstractReconciler$BackgroundThread.run() line: 176	
	Daemon Thread [Java indexing] (Suspended)	
		Object.wait(long) line: not available [native method]	
		IndexManager(Object).wait() line: 485	
		IndexManager(JobManager).run() line: 369	
		Thread.run() line: not available	
	Thread [Worker-31] (Suspended)	
		SelectionListenerWithASTManager$PartListenerGroup$3.run(IProgressMonitor) line: 140	
		Worker.run() line: 55	
	Thread [Worker-42] (Suspended)	
		SelectionListenerWithASTManager$PartListenerGroup$3.run(IProgressMonitor) line: 140	
		Worker.run() line: 55	

And this one:

	Thread [Worker-43] (Suspended)	
		HashMap<K,V>.get(Object) line: not available	
		DefaultBindingResolver.resolveVarAliasOrTypedefDeclaration(Dsymbol) line: 327	
		DefaultBindingResolver.resolveVariableFragment(VariableDeclarationFragment) line: 256	
		DefaultBindingResolver.resolveName(Name) line: 352	
		SimpleName(Name).resolveBinding() line: 88	
		NaiveOccurrencesFinder.visit(SimpleName) line: 133	
		SimpleName.accept0(ASTVisitor) line: 145	
		SimpleName(ASTNode).accept(ASTVisitor) line: 2915	
		VariableDeclarationFragment(ASTNode).acceptChild(ASTVisitor, ASTNode) line: 2953	
		VariableDeclarationFragment.accept0(ASTVisitor) line: 147	
		VariableDeclarationFragment(ASTNode).accept(ASTVisitor) line: 2915	
		VariableDeclaration(ASTNode).acceptChildren(ASTVisitor, ASTNode$NodeList) line: 2976	
		VariableDeclaration.accept0(ASTVisitor) line: 208	
		VariableDeclaration(ASTNode).accept(ASTVisitor) line: 2915	
		DeclarationStatement(ASTNode).acceptChild(ASTVisitor, ASTNode) line: 2953	
		DeclarationStatement.accept0(ASTVisitor) line: 126	
		DeclarationStatement(ASTNode).accept(ASTVisitor) line: 2915	
		Block(ASTNode).acceptChildren(ASTVisitor, ASTNode$NodeList) line: 2976	
		Block.accept0(ASTVisitor) line: 123	
		Block(ASTNode).accept(ASTVisitor) line: 2915	
		FunctionDeclaration(ASTNode).acceptChild(ASTVisitor, ASTNode) line: 2953	
		FunctionDeclaration.accept0(ASTVisitor) line: 390	
		FunctionDeclaration(ASTNode).accept(ASTVisitor) line: 2915	
		AggregateDeclaration(ASTNode).acceptChildren(ASTVisitor, ASTNode$NodeList) line: 2976	
		AggregateDeclaration.accept0(ASTVisitor) line: 315	
		AggregateDeclaration(ASTNode).accept(ASTVisitor) line: 2915	
		CompilationUnit(ASTNode).acceptChildren(ASTVisitor, ASTNode$NodeList) line: 2976	
		CompilationUnit.accept0(ASTVisitor) line: 828	
		CompilationUnit(ASTNode).accept(ASTVisitor) line: 2915	
		NaiveOccurrencesFinder.perform() line: 116	
		CompilationUnitEditor(JavaEditor).updateOccurrenceAnnotations(ITextSelection, CompilationUnit) line: 3066	
		JavaEditor$5.selectionChanged(IEditorPart, ITextSelection, CompilationUnit) line: 3151	
		SelectionListenerWithASTManager$PartListenerGroup.calculateASTandInform(IJavaElement, ITextSelection, IProgressMonitor) line: 163	
		SelectionListenerWithASTManager$PartListenerGroup$3.run(IProgressMonitor) line: 140	
		Worker.run() line: 55	
	Thread [Worker-46] (Suspended)	
		Object.wait(long) line: not available [native method]	
		WorkerPool.sleep(long) line: 185	
		WorkerPool.startJob(Worker) line: 217	
		Worker.run() line: 51	
	Thread [Worker-47] (Suspended)	
		Object.wait(long) line: not available [native method]	
		WorkerPool.sleep(long) line: 185	
		WorkerPool.startJob(Worker) line: 217	
		Worker.run() line: 51	

Change History

08/01/08 12:55:58 changed by Vladimir

descent.internal.formatter.AbortFormatting: unexpected token type, expecting:null, actual:while
	at descent.internal.formatter.Scribe.printNextToken(Scribe.java:1099)
	at descent.internal.formatter.Scribe.printNextToken(Scribe.java:1091)
	at descent.internal.formatter.CodeFormatterVisitor.visit(CodeFormatterVisitor.java:1836)
	at descent.core.dom.SimpleName.accept0(SimpleName.java:145)
	at descent.core.dom.ASTNode.accept(ASTNode.java:2915)
	at descent.internal.formatter.CodeFormatterVisitor.visit(CodeFormatterVisitor.java:1842)
	at descent.core.dom.SimpleType.accept0(SimpleType.java:123)
	at descent.core.dom.ASTNode.accept(ASTNode.java:2915)
	at descent.internal.formatter.CodeFormatterVisitor.visit(CodeFormatterVisitor.java:2381)
	at descent.core.dom.VariableDeclaration.accept0(VariableDeclaration.java:202)
	at descent.core.dom.ASTNode.accept(ASTNode.java:2915)
	at descent.internal.formatter.CodeFormatterVisitor.formatDeclarations(CodeFormatterVisitor.java:2791)
	at descent.internal.formatter.CodeFormatterVisitor.visit(CodeFormatterVisitor.java:599)
	at descent.core.dom.CompilationUnit.accept0(CompilationUnit.java:824)
	at descent.core.dom.ASTNode.accept(ASTNode.java:2915)
	at descent.internal.formatter.CodeFormatterVisitor.format(CodeFormatterVisitor.java:77)
	at descent.internal.formatter.DefaultCodeFormatter.formatCompilationUnit(DefaultCodeFormatter.java:209)
	at descent.internal.formatter.DefaultCodeFormatter.format(DefaultCodeFormatter.java:152)
	at descent.ui.JavadocContentAccess.appendCode(JavadocContentAccess.java:281)
	at descent.ui.JavadocContentAccess.transform(JavadocContentAccess.java:249)
	at descent.ui.JavadocContentAccess.getDdocReader(JavadocContentAccess.java:157)
	at descent.ui.JavadocContentAccess.getContentReader(JavadocContentAccess.java:101)
	at descent.ui.JavadocContentAccess.getHTMLContentReader(JavadocContentAccess.java:529)
	at descent.internal.ui.infoviews.JavadocView.getJavadocHtml(JavadocView.java:499)
	at descent.internal.ui.infoviews.JavadocView.computeInput(JavadocView.java:428)
	at descent.internal.ui.infoviews.AbstractInfoView$2.run(AbstractInfoView.java:501)
org.eclipse.core.runtime.OperationCanceledException
	at descent.internal.core.ReconcileWorkingCopyOperation.executeOperation(ReconcileWorkingCopyOperation.java:69)
	at descent.internal.core.JavaModelOperation.run(JavaModelOperation.java:720)
	at descent.internal.core.JavaModelOperation.runOperation(JavaModelOperation.java:781)
	at descent.internal.core.CompilationUnit.reconcile(CompilationUnit.java:1132)
	at descent.internal.ui.text.java.JavaReconcilingStrategy$1.run(JavaReconcilingStrategy.java:92)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
	at descent.internal.ui.text.java.JavaReconcilingStrategy.reconcile(JavaReconcilingStrategy.java:76)
	at descent.internal.ui.text.java.JavaReconcilingStrategy.reconcile(JavaReconcilingStrategy.java:140)
	at descent.internal.ui.text.CompositeReconcilingStrategy.reconcile(CompositeReconcilingStrategy.java:86)
	at descent.internal.ui.text.JavaCompositeReconcilingStrategy.reconcile(JavaCompositeReconcilingStrategy.java:93)
	at org.eclipse.jface.text.reconciler.MonoReconciler.process(MonoReconciler.java:75)
	at descent.internal.ui.text.JavaReconciler.process(JavaReconciler.java:342)
	at org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run(AbstractReconciler.java:204)
org.eclipse.core.runtime.OperationCanceledException
	at descent.internal.core.ReconcileWorkingCopyOperation.executeOperation(ReconcileWorkingCopyOperation.java:69)
	at descent.internal.core.JavaModelOperation.run(JavaModelOperation.java:720)
	at descent.internal.core.JavaModelOperation.runOperation(JavaModelOperation.java:781)
	at descent.internal.core.CompilationUnit.reconcile(CompilationUnit.java:1132)
	at descent.internal.ui.text.java.JavaReconcilingStrategy$1.run(JavaReconcilingStrategy.java:92)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37)
	at descent.internal.ui.text.java.JavaReconcilingStrategy.reconcile(JavaReconcilingStrategy.java:76)
	at descent.internal.ui.text.java.JavaReconcilingStrategy.reconcile(JavaReconcilingStrategy.java:140)
	at descent.internal.ui.text.CompositeReconcilingStrategy.reconcile(CompositeReconcilingStrategy.java:86)
	at descent.internal.ui.text.JavaCompositeReconcilingStrategy.reconcile(JavaCompositeReconcilingStrategy.java:93)
	at org.eclipse.jface.text.reconciler.MonoReconciler.process(MonoReconciler.java:75)
	at descent.internal.ui.text.JavaReconciler.process(JavaReconciler.java:342)
	at org.eclipse.jface.text.reconciler.AbstractReconciler$BackgroundThread.run(AbstractReconciler.java:204)

01/30/09 10:17:11 changed by Vladimir

  • priority changed from major to critical.

07/04/10 00:27:48 changed by JoeCoder

I get this only when mark occurrences is enabled followed by a few minutes of usage.