2015-06-24 67 views
5

我們使用的是sonarqube 5.1.1,通常「應用項目排除」步驟非常非常緩慢。有時在1-2.5小時的範圍內。sonarqube「應用項目排除」非常緩慢

我們「環球資源文件排除」排除2種模式: **/swagger-ui/** **/*.min.js

我不知道改變這怎麼最近是因爲我們sonarqube版本是夜間運行。

更新:我做了一個線程轉儲請求,它看起來像它正在等待數據庫連接。 全部線程轉儲的HotSpot的Java(TM)服務器VM(24.79-B02混合模式):

"pool-2-thread-1" prio=10 tid=0x9e43cc00 nid=0x6e88 waiting on condition [0xa0151000] 
    java.lang.Thread.State: TIMED_WAITING (parking) 
    at sun.misc.Unsafe.park(Native Method) 
    - parking to wait for <0xbfc6bd60> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject) 
    at java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:226) 
    at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2082) 
    at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1090) 
    at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:807) 
    at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068) 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) 
    at java.lang.Thread.run(Thread.java:745) 

"CLEANUP_MANAGER" prio=10 tid=0x9e209000 nid=0x46b1 in Object.wait() [0x9ed8d000] 
    java.lang.Thread.State: TIMED_WAITING (on object monitor) 
    at java.lang.Object.wait(Native Method) 
    - waiting on <0xb9217dd8> (a com.persistit.CleanupManager) 
    at com.persistit.IOTaskRunnable.run(IOTaskRunnable.java:173) 
    - locked <0xb9217dd8> (a com.persistit.CleanupManager) 
    at java.lang.Thread.run(Thread.java:745) 

"CHECKPOINT_WRITER" prio=10 tid=0x9f827000 nid=0x46af in Object.wait() [0x9f05d000] 
    java.lang.Thread.State: TIMED_WAITING (on object monitor) 
    at java.lang.Object.wait(Native Method) 
    - waiting on <0xb9218080> (a com.persistit.CheckpointManager) 
    at com.persistit.IOTaskRunnable.run(IOTaskRunnable.java:173) 
    - locked <0xb9218080> (a com.persistit.CheckpointManager) 
    at java.lang.Thread.run(Thread.java:745) 

"TXN_UPDATE" prio=10 tid=0x9e21dc00 nid=0x46a8 in Object.wait() [0x9f0ad000] 
    java.lang.Thread.State: TIMED_WAITING (on object monitor) 
    at java.lang.Object.wait(Native Method) 
    - waiting on <0xb92182e0> (a com.persistit.TransactionIndex$ActiveTransactionCachePollTask) 
    at com.persistit.IOTaskRunnable.run(IOTaskRunnable.java:173) 
    - locked <0xb92182e0> (a com.persistit.TransactionIndex$ActiveTransactionCachePollTask) 
    at java.lang.Thread.run(Thread.java:745) 

"PAGE_WRITER:8192" prio=10 tid=0x9e217000 nid=0x46a2 in Object.wait() [0x9f0fe000] 
    java.lang.Thread.State: TIMED_WAITING (on object monitor) 
    at java.lang.Object.wait(Native Method) 
    - waiting on <0xb9396070> (a com.persistit.BufferPool$PageWriter) 
    at com.persistit.IOTaskRunnable.run(IOTaskRunnable.java:173) 
    - locked <0xb9396070> (a com.persistit.BufferPool$PageWriter) 
    at java.lang.Thread.run(Thread.java:745) 

"JOURNAL_FLUSHER" prio=10 tid=0x9e216000 nid=0x46a1 in Object.wait() [0x9f260000] 
    java.lang.Thread.State: TIMED_WAITING (on object monitor) 
    at java.lang.Object.wait(Native Method) 
    - waiting on <0xb923c088> (a com.persistit.JournalManager$JournalFlusher) 
    at com.persistit.IOTaskRunnable.run(IOTaskRunnable.java:173) 
    - locked <0xb923c088> (a com.persistit.JournalManager$JournalFlusher) 
    at java.lang.Thread.run(Thread.java:745) 

"JOURNAL_COPIER" prio=10 tid=0x9e215800 nid=0x46a0 in Object.wait() [0x9f2b1000] 
    java.lang.Thread.State: TIMED_WAITING (on object monitor) 
    at java.lang.Object.wait(Native Method) 
    - waiting on <0xba48e0c8> (a com.persistit.JournalManager$JournalCopier) 
    at com.persistit.IOTaskRunnable.run(IOTaskRunnable.java:173) 
    - locked <0xba48e0c8> (a com.persistit.JournalManager$JournalCopier) 
    at java.lang.Thread.run(Thread.java:745) 

"LOG_FLUSHER" daemon prio=10 tid=0x9e5f3800 nid=0x4686 waiting on condition [0x9fe83000] 
    java.lang.Thread.State: TIMED_WAITING (sleeping) 
    at java.lang.Thread.sleep(Native Method) 
    at com.persistit.util.Util.sleep(Util.java:558) 
    at com.persistit.Persistit$LogFlusher.run(Persistit.java:188) 

"Service Thread" daemon prio=10 tid=0x08341400 nid=0x4208 runnable [0x00000000] 
    java.lang.Thread.State: RUNNABLE 

"C2 CompilerThread1" daemon prio=10 tid=0x0833fc00 nid=0x4207 waiting on condition [0x00000000] 
    java.lang.Thread.State: RUNNABLE 

"C2 CompilerThread0" daemon prio=10 tid=0x08335000 nid=0x4206 waiting on condition [0x00000000] 
    java.lang.Thread.State: RUNNABLE 

"Signal Dispatcher" daemon prio=10 tid=0x08333400 nid=0x4205 waiting on condition [0x00000000] 
    java.lang.Thread.State: RUNNABLE 

"Finalizer" daemon prio=10 tid=0x0831dc00 nid=0x4204 in Object.wait() [0xa0547000] 
    java.lang.Thread.State: WAITING (on object monitor) 
    at java.lang.Object.wait(Native Method) 
    - waiting on <0xb4c477e8> (a java.lang.ref.ReferenceQueue$Lock) 
    at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:135) 
    - locked <0xb4c477e8> (a java.lang.ref.ReferenceQueue$Lock) 
    at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:151) 
    at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:209) 

"Reference Handler" daemon prio=10 tid=0x0831c400 nid=0x4203 in Object.wait() [0xa0598000] 
    java.lang.Thread.State: WAITING (on object monitor) 
    at java.lang.Object.wait(Native Method) 
    - waiting on <0xb4c47408> (a java.lang.ref.Reference$Lock) 
    at java.lang.Object.wait(Object.java:503) 
    at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:133) 
    - locked <0xb4c47408> (a java.lang.ref.Reference$Lock) 

"main" prio=10 tid=0x08051000 nid=0x41f7 runnable [0xf709f000] 
    java.lang.Thread.State: RUNNABLE 
    at java.net.SocketInputStream.socketRead0(Native Method) 
    at java.net.SocketInputStream.read(SocketInputStream.java:152) 
    at java.net.SocketInputStream.read(SocketInputStream.java:122) 
    at oracle.net.ns.Packet.receive(Packet.java:300) 
    at oracle.net.ns.DataPacket.receive(DataPacket.java:106) 
    at oracle.net.ns.NetInputStream.getNextPacket(NetInputStream.java:315) 
    at oracle.net.ns.NetInputStream.read(NetInputStream.java:260) 
    at oracle.net.ns.NetInputStream.read(NetInputStream.java:185) 
    at oracle.net.ns.NetInputStream.read(NetInputStream.java:102) 
    at oracle.jdbc.driver.T4CSocketInputStreamWrapper.readNextPacket(T4CSocketInputStreamWrapper.java:124) 
    at oracle.jdbc.driver.T4CSocketInputStreamWrapper.read(T4CSocketInputStreamWrapper.java:80) 
    at oracle.jdbc.driver.T4CMAREngine.unmarshalUB1(T4CMAREngine.java:1137) 
    at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:290) 
    at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:192) 
    at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:531) 
    at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:207) 
    at oracle.jdbc.driver.T4CPreparedStatement.executeForDescribe(T4CPreparedStatement.java:884) 
    at oracle.jdbc.driver.OracleStatement.executeMaybeDescribe(OracleStatement.java:1167) 
    at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1289) 
    at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3584) 
    at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:3628) 
    - locked <0xb6f5bba0> (a oracle.jdbc.driver.T4CConnection) 
    at oracle.jdbc.driver.OraclePreparedStatementWrapper.executeQuery(OraclePreparedStatementWrapper.java:1493) 
    at org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:96) 
    at org.apache.commons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:96) 
    at org.hibernate.jdbc.AbstractBatcher.getResultSet(AbstractBatcher.java:208) 
    at org.hibernate.loader.Loader.getResultSet(Loader.java:1812) 
    at org.hibernate.loader.Loader.doQuery(Loader.java:697) 
    at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:259) 
    at org.hibernate.loader.Loader.doList(Loader.java:2232) 
    at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2129) 
    at org.hibernate.loader.Loader.list(Loader.java:2124) 
    at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:401) 
    at org.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:363) 
    at org.hibernate.engine.query.HQLQueryPlan.performList(HQLQueryPlan.java:196) 
    at org.hibernate.impl.SessionImpl.list(SessionImpl.java:1149) 
    at org.hibernate.impl.QueryImpl.list(QueryImpl.java:102) 
    at org.hibernate.ejb.QueryImpl.getResultList(QueryImpl.java:67) 
    at org.sonar.jpa.session.JpaDatabaseSession.getSingleResult(JpaDatabaseSession.java:207) 
    at org.sonar.jpa.session.JpaDatabaseSession.getSingleResult(JpaDatabaseSession.java:238) 
    at org.sonar.batch.index.ResourcePersister.updateUuids(ResourcePersister.java:291) 
    at org.sonar.batch.index.ResourcePersister.findOrCreateModel(ResourcePersister.java:251) 
    at org.sonar.batch.index.ResourcePersister.persistFileOrDirectory(ResourcePersister.java:218) 
    at org.sonar.batch.index.ResourcePersister.persist(ResourcePersister.java:166) 
    at org.sonar.batch.index.ResourcePersister.persist(ResourcePersister.java:103) 
    at org.sonar.batch.index.ResourcePersister.persist(ResourcePersister.java:77) 
    at org.sonar.batch.scan.filesystem.ComponentIndexer.execute(ComponentIndexer.java:81) 
    at org.sonar.batch.scan.filesystem.DefaultModuleFileSystem.index(DefaultModuleFileSystem.java:223) 
    at org.sonar.batch.phases.DatabaseModePhaseExecutor.indexFs(DatabaseModePhaseExecutor.java:153) 
    at org.sonar.batch.phases.DatabaseModePhaseExecutor.execute(DatabaseModePhaseExecutor.java:110) 
    at org.sonar.batch.scan.ModuleScanContainer.doAfterStart(ModuleScanContainer.java:264) 
    at org.sonar.api.platform.ComponentContainer.startComponents(ComponentContainer.java:92) 
    at org.sonar.api.platform.ComponentContainer.execute(ComponentContainer.java:77) 
    at org.sonar.batch.scan.ProjectScanContainer.scan(ProjectScanContainer.java:235) 
    at org.sonar.batch.scan.ProjectScanContainer.scanRecursively(ProjectScanContainer.java:230) 
    at org.sonar.batch.scan.ProjectScanContainer.scanRecursively(ProjectScanContainer.java:228) 
    at org.sonar.batch.scan.ProjectScanContainer.doAfterStart(ProjectScanContainer.java:220) 
    at org.sonar.api.platform.ComponentContainer.startComponents(ComponentContainer.java:92) 
    at org.sonar.api.platform.ComponentContainer.execute(ComponentContainer.java:77) 
    at org.sonar.batch.scan.ScanTask.scan(ScanTask.java:57) 
    at org.sonar.batch.scan.ScanTask.execute(ScanTask.java:45) 
    at org.sonar.batch.bootstrap.TaskContainer.doAfterStart(TaskContainer.java:135) 
    at org.sonar.api.platform.ComponentContainer.startComponents(ComponentContainer.java:92) 
    at org.sonar.api.platform.ComponentContainer.execute(ComponentContainer.java:77) 
    at org.sonar.batch.bootstrap.GlobalContainer.executeTask(GlobalContainer.java:158) 
    at org.sonar.batch.bootstrapper.Batch.executeTask(Batch.java:95) 
    at org.sonar.batch.bootstrapper.Batch.execute(Batch.java:67) 
    - locked <0xb6a5e6e0> (a org.sonar.batch.bootstrapper.Batch) 
    at org.sonar.runner.batch.IsolatedLauncher.execute(IsolatedLauncher.java:48) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:606) 
    at org.sonar.runner.impl.BatchLauncher$1.delegateExecution(BatchLauncher.java:87) 
    at org.sonar.runner.impl.BatchLauncher$1.run(BatchLauncher.java:75) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at org.sonar.runner.impl.BatchLauncher.doExecute(BatchLauncher.java:69) 
    at org.sonar.runner.impl.BatchLauncher.execute(BatchLauncher.java:50) 
    at org.sonar.runner.api.EmbeddedRunner.doExecute(EmbeddedRunner.java:102) 
    at org.sonar.runner.api.Runner.execute(Runner.java:100) 
    at org.codehaus.mojo.sonar.bootstrap.RunnerBootstraper.execute(RunnerBootstraper.java:135) 
    at org.codehaus.mojo.sonar.SonarMojo.execute(SonarMojo.java:132) 
    at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:134) 
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208) 
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153) 
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145) 
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:116) 
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:80) 
    at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51) 
    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128) 
    at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:307) 
    at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:193) 
    at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:106) 
    at org.apache.maven.cli.MavenCli.execute(MavenCli.java:862) 
    at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:286) 
    at org.apache.maven.cli.MavenCli.main(MavenCli.java:197) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:606) 
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289) 
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229) 
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415) 
    at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356) 

"VM Thread" prio=10 tid=0x08319800 nid=0x4202 runnable 

"GC task thread#0 (ParallelGC)" prio=10 tid=0x0805b000 nid=0x41f8 runnable 

"GC task thread#1 (ParallelGC)" prio=10 tid=0x0805c800 nid=0x41f9 runnable 

"GC task thread#2 (ParallelGC)" prio=10 tid=0x0805e000 nid=0x41fa runnable 

"GC task thread#3 (ParallelGC)" prio=10 tid=0x0805f400 nid=0x41fb runnable 

"GC task thread#4 (ParallelGC)" prio=10 tid=0x08060c00 nid=0x41fc runnable 

"GC task thread#5 (ParallelGC)" prio=10 tid=0x08062400 nid=0x41fd runnable 

"GC task thread#6 (ParallelGC)" prio=10 tid=0x08063c00 nid=0x41fe runnable 

"GC task thread#7 (ParallelGC)" prio=10 tid=0x08065000 nid=0x41ff runnable 

"GC task thread#8 (ParallelGC)" prio=10 tid=0x08066800 nid=0x4200 runnable 

"GC task thread#9 (ParallelGC)" prio=10 tid=0x08068000 nid=0x4201 runnable 

"VM Periodic Task Thread" prio=10 tid=0x08343400 nid=0x4209 waiting on condition 

JNI global references: 196 

Heap 
PSYoungGen  total 267264K, used 165499K [0xde980000, 0xf3980000, 0xf3f00000) 
    eden space 197120K, 81% used [0xde980000,0xe8676998,0xeaa00000) 
    from space 70144K, 6% used [0xef500000,0xef9a8568,0xf3980000) 
    to space 73472K, 0% used [0xeaa00000,0xeaa00000,0xef1c0000) 
ParOldGen  total 240384K, used 198415K [0xb3f00000, 0xc29c0000, 0xde980000) 
    object space 240384K, 82% used [0xb3f00000,0xc00c3f10,0xc29c0000) 
PSPermGen  total 63488K, used 34483K [0xa3f00000, 0xa7d00000, 0xb3f00000) 
    object space 63488K, 54% used [0xa3f00000,0xa60ace98,0xa7d00000) 

上的變通或解決方案有什麼建議?

+0

你可以提供一個線程轉儲嗎? –

+0

更新爲線程轉儲。 –

+4

非常有用。我們正在調查,謝謝! –

回答

0

門票創建:SONAR-6839,對於任何關於這一問題的進一步討論,倒不如干脆評論本吉拉票