This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 227707

Summary: Calling Source.getDocument(forceOpen=true) for Source preferring files -> possible performance problem
Product: groovy Reporter: Jesse Glick <jglick>
Component: EditorAssignee: Martin Janicek <mjanicek>
Status: NEW ---    
Severity: normal    
Priority: P3    
Version: 7.4   
Hardware: PC   
OS: Linux   
Issue Type: DEFECT Exception Reporter:

Description Jesse Glick 2013-03-20 11:40:43 UTC
20130318-e3cebff34a73. Noticed a bunch of occurrences of the following in my logs, not long after having enabled the Groovy plugins. (Working on Jenkins sources in this case.)

INFO [org.netbeans.modules.parsing.api.Source]: Calling Source.getDocument(forceOpen=true) for Source preferring files -> possible performance problem [java.lang.Thread.getStackTrace(Thread.java:1567), org.netbeans.modules.parsing.api.Source.getDocument(Source.java:247), org.netbeans.modules.groovy.editor.api.lexer.LexUtilities.getDocument(LexUtilities.java:122), org.netbeans.modules.groovy.editor.api.parser.GroovyParser$Context.<init>(GroovyParser.java:767), org.netbeans.modules.groovy.editor.api.parser.GroovyParser.parse(GroovyParser.java:153), org.netbeans.modules.parsing.impl.TaskProcessor.callParse(TaskProcessor.java:598), org.netbeans.modules.parsing.impl.SourceCache.getResult(SourceCache.java:236), org.netbeans.modules.parsing.api.ResultIterator.getParserResult(ResultIterator.java:138), org.netbeans.modules.groovy.editor.api.parser.GroovyVirtualSourceProvider$1.run(GroovyVirtualSourceProvider.java:160), org.netbeans.modules.parsing.impl.TaskProcessor.callUserTask(TaskProcessor.java:586), org.netbeans.modules.parsing.api.ParserManager$UserTaskAction.run(ParserManager.java:155), org.netbeans.modules.parsing.api.ParserManager$UserTaskAction.run(ParserManager.java:139), org.netbeans.modules.parsing.impl.TaskProcessor$2.call(TaskProcessor.java:201), org.netbeans.modules.parsing.impl.TaskProcessor$2.call(TaskProcessor.java:198), org.netbeans.modules.masterfs.filebasedfs.utils.FileChangedManager.priorityIO(FileChangedManager.java:176), org.netbeans.modules.masterfs.providers.ProvidedExtensions.priorityIO(ProvidedExtensions.java:360), org.netbeans.modules.parsing.impl.Utilities.runPriorityIO(Utilities.java:74), org.netbeans.modules.parsing.impl.TaskProcessor.runUserTask(TaskProcessor.java:198), org.netbeans.modules.parsing.api.ParserManager.parse(ParserManager.java:106), org.netbeans.modules.groovy.editor.api.parser.GroovyVirtualSourceProvider.getClassNodes(GroovyVirtualSourceProvider.java:157), org.netbeans.modules.groovy.editor.api.parser.GroovyVirtualSourceProvider.translate(GroovyVirtualSourceProvider.java:112), org.netbeans.modules.java.source.usages.VirtualSourceProviderQuery.translate(VirtualSourceProviderQuery.java:153), org.netbeans.modules.java.source.indexing.JavaCustomIndexer.translateVirtualSources(JavaCustomIndexer.java:370), org.netbeans.modules.java.source.indexing.JavaCustomIndexer.index(JavaCustomIndexer.java:194), org.netbeans.modules.parsing.spi.indexing.Indexable$MyAccessor$2.run(Indexable.java:161), org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater.runIndexer(RepositoryUpdater.java:266), org.netbeans.modules.parsing.spi.indexing.Indexable$MyAccessor.index(Indexable.java:159), org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Work.doIndex(RepositoryUpdater.java:2472), org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Work.access$1200(RepositoryUpdater.java:2040), org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Work$1.run(RepositoryUpdater.java:2364), org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Work$1.run(RepositoryUpdater.java:2362), org.netbeans.modules.parsing.impl.indexing.errors.TaskCache.refreshTransaction(TaskCache.java:544), org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Work.index(RepositoryUpdater.java:2362), org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$AbstractRootsWork.scanSource(RepositoryUpdater.java:5034), org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$AbstractRootsWork.scanSources(RepositoryUpdater.java:4746), org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$RootsWork.getDone(RepositoryUpdater.java:4451), org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Work.doTheWork(RepositoryUpdater.java:3059), org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Task._run(RepositoryUpdater.java:5476), org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Task.access$4600(RepositoryUpdater.java:5142), org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Task$3$1.run(RepositoryUpdater.java:5401), org.netbeans.modules.parsing.impl.RunWhenScanFinishedSupport.performScan(RunWhenScanFinishedSupport.java:96), org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Task$3.call(RepositoryUpdater.java:5397), org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Task$3.call(RepositoryUpdater.java:5393), org.netbeans.modules.masterfs.filebasedfs.utils.FileChangedManager.priorityIO(FileChangedManager.java:176), org.netbeans.modules.masterfs.providers.ProvidedExtensions.priorityIO(ProvidedExtensions.java:360), org.netbeans.modules.parsing.impl.Utilities.runPriorityIO(Utilities.java:74), org.netbeans.modules.parsing.impl.indexing.RepositoryUpdater$Task.run(RepositoryUpdater.java:5393), java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471), java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334), java.util.concurrent.FutureTask.run(FutureTask.java:166), org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1432), org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:2044)]

By the way why is the stack trace being logged in this awful way rather than simply log(Level.INFO, "messageā€¦", new Throwable()) which would be readable and potentially hyperlinked?!