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.
091021. With a Maven project open, I closed the IDE's main window. Disk, network, and CPU activity remained heavy for minutes afterwards. Thread dumps reveal the cause as the Maven indexer, which ought to be cancellable and automatically cancelled by IDE shutdown: - java.lang.Object.wait(long) @bci=0 (Interpreted frame) - java.lang.Object.wait() @bci=2, line=474 (Interpreted frame) - org.openide.util.Mutex$QueueCell.sleep() @bci=10, line=1602 (Interpreted frame) - org.openide.util.Mutex.enterImpl(int, java.lang.Thread, boolean) @bci=430, line=723 (Interpreted frame) - org.openide.util.Mutex.enter(int, java.lang.Thread, boolean) @bci=44, line=630 (Interpreted frame) - org.openide.util.Mutex.writeEnter(java.lang.Thread) @bci=4, line=608 (Interpreted frame) - org.openide.util.Mutex.writeAccess(org.openide.util.Mutex$ExceptionAction) @bci=33, line=430 (Interpreted frame) - org.netbeans.modules.maven.indexer.NexusRepositoryIndexerImpl.shutdownAll() @bci=19, line=442 (Interpreted frame) - org.netbeans.modules.maven.indexer.Installer.close() @bci=101, line=68 (Interpreted frame) - org.netbeans.core.startup.NbInstaller.close(java.util.List) @bci=133, line=709 (Interpreted frame) - org.netbeans.ModuleManager.shutDown(java.lang.Runnable) @bci=144, line=1585 (Interpreted frame) - org.netbeans.core.startup.ModuleSystem.shutDown(java.lang.Runnable) @bci=15, line=291 (Interpreted frame) - org.netbeans.core.NbTopManager.doExit() @bci=36, line=526 (Interpreted frame) - java.net.SocketInputStream.socketRead0(java.io.FileDescriptor, byte[], int, int, int) @bci=0 (Compiled frame; information may be imprecise) - java.net.SocketInputStream.read(byte[], int, int) @bci=84, line=129 (Compiled frame) - java.io.BufferedInputStream.fill() @bci=175, line=218 (Compiled frame) - java.io.BufferedInputStream.read1(byte[], int, int) @bci=44, line=256 (Compiled frame) - java.io.BufferedInputStream.read(byte[], int, int) @bci=49, line=313 (Compiled frame) - sun.net.www.MeteredStream.read(byte[], int, int) @bci=16, line=116 (Compiled frame) - java.io.FilterInputStream.read(byte[], int, int) @bci=7, line=111 (Compiled frame) - org.apache.maven.wagon.AbstractWagon.transfer(org.apache.maven.wagon.resource.Resource, java.io.InputStream, java.io.OutputStream, int, int) @bci=50, line=480 (Compiled frame) - org.apache.maven.wagon.AbstractWagon.getTransfer(org.apache.maven.wagon.resource.Resource, java.io.OutputStream, java.io.InputStream, boolean, int) @bci=7, line=327 (Interpreted frame) - org.apache.maven.wagon.AbstractWagon.getTransfer(org.apache.maven.wagon.resource.Resource, java.io.File, java.io.InputStream, boolean, int) @bci=56, line=299 (Interpreted frame) - org.apache.maven.wagon.AbstractWagon.getTransfer(org.apache.maven.wagon.resource.Resource, java.io.File, java.io.InputStream) @bci=7, line=276 (Interpreted frame) - org.apache.maven.wagon.StreamWagon.getIfNewer(java.lang.String, java.io.File, long) @bci=67, line=97 (Interpreted frame) - org.apache.maven.wagon.StreamWagon.get(java.lang.String, java.io.File) @bci=4, line=61 (Interpreted frame) - org.sonatype.nexus.index.updater.DefaultIndexUpdater$WagonFetcher.retrieve(java.lang.String, java.io.File) @bci=6, line=605 (Interpreted frame) - org.sonatype.nexus.index.updater.DefaultIndexUpdater.loadIndexDirectory(org.sonatype.nexus.index.updater.IndexUpdateRequest, boolean, java.lang.String) @bci=71, line=209 (Interpreted frame) - org.sonatype.nexus.index.updater.DefaultIndexUpdater.fetchAndUpdateIndex(org.sonatype.nexus.index.updater.IndexUpdateRequest) @bci=250, line=139 (Interpreted frame) - org.netbeans.modules.maven.indexer.NexusRepositoryIndexerImpl.indexLoadedRepo(org.netbeans.modules.maven.indexer.api.RepositoryInfo, boolean) @bci=185, line=399 (Interpreted frame) - org.netbeans.modules.maven.indexer.NexusRepositoryIndexerImpl.access$400(org.netbeans.modules.maven.indexer.NexusRepositoryIndexerImpl, org.netbeans.modules.maven.indexer.api.RepositoryInfo, boolean) @bci=3, line=137 (Interpreted frame) - org.netbeans.modules.maven.indexer.NexusRepositoryIndexerImpl$1.run() @bci=80, line=429 (Interpreted frame) - org.openide.util.Mutex.writeAccess(org.openide.util.Mutex$ExceptionAction) @bci=37, line=433 (Interpreted frame) - org.netbeans.modules.maven.indexer.NexusRepositoryIndexerImpl.indexRepo(org.netbeans.modules.maven.indexer.api.RepositoryInfo) @bci=37, line=419 (Interpreted frame) - org.netbeans.modules.maven.indexer.api.RepositoryIndexer.indexRepo(org.netbeans.modules.maven.indexer.api.RepositoryInfo) @bci=30, line=59 (Interpreted frame) - org.netbeans.modules.maven.ModInstall$1.run() @bci=230, line=150 (Interpreted frame)
dafe?
Reproduction steps please? A few days earlier I integrated a fix for 164593 which calls thread.stop() on running Maven indexing/downloading index. (look into Installer.close() just a few lines above). In IDE log there should be logged warning that indexing was stopped. Or maybe that stopping didn't work for some reason and I would need reproduction steps to find out why.
I guess I found it. "Cancelling" of maven repo indexer was active only when global progress was shown. But there are small periods of time before and after progress is shown when thread is still active and there probably race condition arose. hopefully fixed: 0acb30ca8554
Integrated into 'main-golden', will be available in build *200911050201* on http://bits.netbeans.org/dev/nightly/ (upload may still be in progress) Changeset: http://hg.netbeans.org/main/rev/0acb30ca8554 User: Dafe Simonek <dsimonek@netbeans.org> Log: #175143: more robust cancelling of maven indexer/index downloader