Skip to content

Instantly share code, notes, and snippets.

@ailabs-software
Created April 27, 2017 04:39
Show Gist options
  • Select an option

  • Save ailabs-software/920c93e1bf003ce86286b2ed0f5a4ead to your computer and use it in GitHub Desktop.

Select an option

Save ailabs-software/920c93e1bf003ce86286b2ed0f5a4ead to your computer and use it in GitHub Desktop.
GWT compiler threaddump
commit was: 4faea6b575c5702962267a1ca35048bc5d500142 on crm-funnels
java pid was: 60159
Description:
When line 17 is not commented out (see https://gist.github.com/bpilot/ee279678429db3cd937f9ce3c563f9ab ),
Note that the compiler ALWAYS gets stuck on this exact code, in this codebase.
compiler gets stuck here:
Tests run: 0, Failures: 0, Errors: 0, Skipped: 0
[INFO]
[INFO] --- gwt-maven-plugin:2.8.0:compile (default) @ shopwindowshared ---
[INFO] auto discovered modules [shopwindowshared.ShopwindowShared]
[INFO] shopwindowshared.ShopwindowShared has no EntryPoint - compilation skipped
[INFO]
[INFO] --- maven-jar-plugin:2.2:jar (default-jar) @ shopwindowshared ---
[INFO] Building jar: /opt/deployment/applications/shopwindow/modular/shopwindowshared/target/shopwindowshared-1.0-SNAPSHOT.jar
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building shopwindowapp 1.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-resources-plugin:2.3:resources (default-resources) @ shopwindowapp ---
[WARNING] Using platform encoding (UTF-8 actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] skip non existing resourceDirectory /opt/deployment/applications/shopwindow/modular/shopwindowapp/src/main/resources
[INFO]
[INFO] --- maven-compiler-plugin:2.0.2:compile (default-compile) @ shopwindowapp ---
[INFO] Compiling 19 source files to /opt/deployment/applications/shopwindow/modular/shopwindowapp/target/classes
[INFO]
[INFO] --- maven-resources-plugin:2.3:testResources (default-testResources) @ shopwindowapp ---
[WARNING] Using platform encoding (UTF-8 actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] skip non existing resourceDirectory /opt/deployment/applications/shopwindow/modular/shopwindowapp/src/test/resources
[INFO]
[INFO] --- maven-compiler-plugin:2.0.2:testCompile (default-testCompile) @ shopwindowapp ---
[INFO] No sources to compile
[INFO]
[INFO] --- maven-surefire-plugin:2.10:test (default-test) @ shopwindowapp ---
[INFO] No tests to run.
[INFO] Surefire report directory: /opt/deployment/applications/shopwindow/modular/shopwindowapp/target/surefire-reports
-------------------------------------------------------
T E S T S
-------------------------------------------------------
Results :
Tests run: 0, Failures: 0, Errors: 0, Skipped: 0
[INFO]
[INFO] --- gwt-maven-plugin:2.8.0:compile (default) @ shopwindowapp ---
[INFO] auto discovered modules [ShopwindowApp]
[INFO] Compiling module ShopwindowApp
[INFO] Compiling 1 permutation
[INFO] Compiling permutation 0...
jstack 60159 > jstack_dump_javaproc.txt
2017-04-27 00:36:59
Full thread dump Java HotSpot(TM) 64-Bit Server VM (25.111-b14 mixed mode):
"Attach Listener" #27 daemon prio=9 os_prio=0 tid=0x00007fe768001000 nid=0xeb57 waiting on condition [0x0000000000000000]
java.lang.Thread.State: RUNNABLE
"In-process PermutationWorker 0" #26 prio=5 os_prio=0 tid=0x00007fe7986af000 nid=0xeb1d runnable [0x00007fe77a52c000]
java.lang.Thread.State: RUNNABLE
at java.util.HashMap.getNode(HashMap.java:571)
at java.util.LinkedHashMap.get(LinkedHashMap.java:440)
at com.google.gwt.dev.js.ast.JsNormalScope.findExistingNameNoRecurse(JsNormalScope.java:63)
at com.google.gwt.dev.js.ast.JsScope.findExistingName(JsScope.java:103)
at com.google.gwt.dev.js.JsInliner$InliningVisitor.getUnusedName(JsInliner.java:1052)
at com.google.gwt.dev.js.JsInliner$InliningVisitor.process(JsInliner.java:1000)
at com.google.gwt.dev.js.JsInliner$InliningVisitor.endVisit(JsInliner.java:798)
at com.google.gwt.dev.js.ast.JsInvocation.traverse(JsInvocation.java:91)
at com.google.gwt.dev.js.ast.JsVisitor.doTraverse(JsVisitor.java:467)
at com.google.gwt.dev.js.ast.JsModVisitor$NodeContext.traverse(JsModVisitor.java:153)
at com.google.gwt.dev.js.ast.JsModVisitor.doAccept(JsModVisitor.java:176)
at com.google.gwt.dev.js.ast.JsVisitor.accept(JsVisitor.java:109)
at com.google.gwt.dev.js.ast.JsBinaryOperation.traverse(JsBinaryOperation.java:87)
at com.google.gwt.dev.js.ast.JsVisitor.doTraverse(JsVisitor.java:467)
at com.google.gwt.dev.js.ast.JsModVisitor$NodeContext.traverse(JsModVisitor.java:153)
at com.google.gwt.dev.js.ast.JsModVisitor.doAccept(JsModVisitor.java:176)
at com.google.gwt.dev.js.ast.JsVisitor.accept(JsVisitor.java:109)
at com.google.gwt.dev.js.ast.JsExprStmt.traverse(JsExprStmt.java:42)
at com.google.gwt.dev.js.ast.JsVisitor.doTraverse(JsVisitor.java:467)
at com.google.gwt.dev.js.ast.JsModVisitor$ListContext.traverse(JsModVisitor.java:80)
at com.google.gwt.dev.js.ast.JsModVisitor.doAcceptWithInsertRemove(JsModVisitor.java:197)
at com.google.gwt.dev.js.ast.JsVisitor.acceptWithInsertRemove(JsVisitor.java:121)
at com.google.gwt.dev.js.ast.JsBlock.traverse(JsBlock.java:53)
at com.google.gwt.dev.js.ast.JsVisitor.doTraverse(JsVisitor.java:467)
at com.google.gwt.dev.js.ast.JsModVisitor$NodeContext.traverse(JsModVisitor.java:153)
at com.google.gwt.dev.js.ast.JsModVisitor.doAccept(JsModVisitor.java:176)
at com.google.gwt.dev.js.ast.JsVisitor.accept(JsVisitor.java:109)
at com.google.gwt.dev.js.ast.JsFor.traverse(JsFor.java:107)
at com.google.gwt.dev.js.ast.JsVisitor.doTraverse(JsVisitor.java:467)
at com.google.gwt.dev.js.ast.JsModVisitor$ListContext.traverse(JsModVisitor.java:80)
at com.google.gwt.dev.js.ast.JsModVisitor.doAcceptWithInsertRemove(JsModVisitor.java:197)
at com.google.gwt.dev.js.ast.JsVisitor.acceptWithInsertRemove(JsVisitor.java:121)
at com.google.gwt.dev.js.ast.JsBlock.traverse(JsBlock.java:53)
at com.google.gwt.dev.js.ast.JsVisitor.doTraverse(JsVisitor.java:467)
at com.google.gwt.dev.js.ast.JsModVisitor$NodeContext.traverse(JsModVisitor.java:153)
at com.google.gwt.dev.js.ast.JsModVisitor.doAccept(JsModVisitor.java:176)
at com.google.gwt.dev.js.ast.JsVisitor.accept(JsVisitor.java:109)
at com.google.gwt.dev.js.ast.JsFunction.traverse(JsFunction.java:181)
at com.google.gwt.dev.js.ast.JsVisitor.doTraverse(JsVisitor.java:467)
at com.google.gwt.dev.js.ast.JsModVisitor$NodeContext.traverse(JsModVisitor.java:153)
at com.google.gwt.dev.js.ast.JsModVisitor.doAccept(JsModVisitor.java:176)
at com.google.gwt.dev.js.ast.JsVisitor.accept(JsVisitor.java:109)
at com.google.gwt.dev.js.ast.JsBinaryOperation.traverse(JsBinaryOperation.java:87)
at com.google.gwt.dev.js.ast.JsVisitor.doTraverse(JsVisitor.java:467)
at com.google.gwt.dev.js.ast.JsModVisitor$NodeContext.traverse(JsModVisitor.java:153)
at com.google.gwt.dev.js.ast.JsModVisitor.doAccept(JsModVisitor.java:176)
at com.google.gwt.dev.js.ast.JsVisitor.accept(JsVisitor.java:109)
at com.google.gwt.dev.js.ast.JsExprStmt.traverse(JsExprStmt.java:42)
at com.google.gwt.dev.js.ast.JsVisitor.doTraverse(JsVisitor.java:467)
at com.google.gwt.dev.js.ast.JsModVisitor$ListContext.traverse(JsModVisitor.java:80)
at com.google.gwt.dev.js.ast.JsModVisitor.doAcceptWithInsertRemove(JsModVisitor.java:197)
at com.google.gwt.dev.js.ast.JsVisitor.acceptWithInsertRemove(JsVisitor.java:121)
at com.google.gwt.dev.js.ast.JsBlock.traverse(JsBlock.java:53)
at com.google.gwt.dev.js.ast.JsVisitor.doTraverse(JsVisitor.java:467)
at com.google.gwt.dev.js.ast.JsModVisitor$NodeContext.traverse(JsModVisitor.java:153)
at com.google.gwt.dev.js.ast.JsModVisitor.doAccept(JsModVisitor.java:176)
at com.google.gwt.dev.js.ast.JsVisitor.accept(JsVisitor.java:109)
at com.google.gwt.dev.js.ast.JsProgramFragment.traverse(JsProgramFragment.java:41)
at com.google.gwt.dev.js.ast.JsVisitor.doTraverse(JsVisitor.java:467)
at com.google.gwt.dev.js.ast.JsModVisitor$NodeContext.traverse(JsModVisitor.java:153)
at com.google.gwt.dev.js.ast.JsModVisitor.doAccept(JsModVisitor.java:176)
at com.google.gwt.dev.js.ast.JsVisitor.accept(JsVisitor.java:109)
at com.google.gwt.dev.js.ast.JsProgram.traverse(JsProgram.java:120)
at com.google.gwt.dev.js.ast.JsVisitor.doTraverse(JsVisitor.java:467)
at com.google.gwt.dev.js.ast.JsModVisitor$NodeContext.traverse(JsModVisitor.java:153)
at com.google.gwt.dev.js.ast.JsModVisitor.doAccept(JsModVisitor.java:176)
at com.google.gwt.dev.js.ast.JsVisitor.accept(JsVisitor.java:109)
at com.google.gwt.dev.js.JsInliner.execImpl(JsInliner.java:1627)
at com.google.gwt.dev.js.JsInliner.exec(JsInliner.java:1561)
at com.google.gwt.dev.jjs.JavaToJavaScriptCompiler.optimizeJsLoop(JavaToJavaScriptCompiler.java:1001)
at com.google.gwt.dev.jjs.JavaToJavaScriptCompiler.optimizeJs(JavaToJavaScriptCompiler.java:529)
at com.google.gwt.dev.jjs.JavaToJavaScriptCompiler.compilePermutation(JavaToJavaScriptCompiler.java:412)
at com.google.gwt.dev.jjs.JavaToJavaScriptCompiler.compilePermutation(JavaToJavaScriptCompiler.java:272)
at com.google.gwt.dev.CompilePerms.compile(CompilePerms.java:198)
at com.google.gwt.dev.ThreadedPermutationWorkerFactory$ThreadedPermutationWorker.compile(ThreadedPermutationWorkerFactory.java:50)
at com.google.gwt.dev.PermutationWorkerFactory$Manager$WorkerThread.run(PermutationWorkerFactory.java:74)
at java.lang.Thread.run(Thread.java:745)
"Thread-10" #21 daemon prio=5 os_prio=0 tid=0x00007fe7982dc800 nid=0xeb17 runnable [0x00007fe77a129000]
java.lang.Thread.State: RUNNABLE
at sun.nio.fs.LinuxWatchService.poll(Native Method)
at sun.nio.fs.LinuxWatchService.access$600(LinuxWatchService.java:47)
at sun.nio.fs.LinuxWatchService$Poller.run(LinuxWatchService.java:314)
at java.lang.Thread.run(Thread.java:745)
"Thread-9" #20 daemon prio=5 os_prio=0 tid=0x00007fe7982d9800 nid=0xeb16 runnable [0x00007fe77a22a000]
java.lang.Thread.State: RUNNABLE
at sun.nio.fs.LinuxWatchService.poll(Native Method)
at sun.nio.fs.LinuxWatchService.access$600(LinuxWatchService.java:47)
at sun.nio.fs.LinuxWatchService$Poller.run(LinuxWatchService.java:314)
at java.lang.Thread.run(Thread.java:745)
"Thread-8" #19 daemon prio=5 os_prio=0 tid=0x00007fe798348800 nid=0xeb15 runnable [0x00007fe77a32b000]
java.lang.Thread.State: RUNNABLE
at sun.nio.fs.LinuxWatchService.poll(Native Method)
at sun.nio.fs.LinuxWatchService.access$600(LinuxWatchService.java:47)
at sun.nio.fs.LinuxWatchService$Poller.run(LinuxWatchService.java:314)
at java.lang.Thread.run(Thread.java:745)
"Thread-7" #18 daemon prio=5 os_prio=0 tid=0x00007fe798343800 nid=0xeb14 runnable [0x00007fe77a42c000]
java.lang.Thread.State: RUNNABLE
at sun.nio.fs.LinuxWatchService.poll(Native Method)
at sun.nio.fs.LinuxWatchService.access$600(LinuxWatchService.java:47)
at sun.nio.fs.LinuxWatchService$Poller.run(LinuxWatchService.java:314)
at java.lang.Thread.run(Thread.java:745)
"Thread-6" #16 daemon prio=5 os_prio=0 tid=0x00007fe79833c800 nid=0xeb12 runnable [0x00007fe77a62e000]
java.lang.Thread.State: RUNNABLE
at sun.nio.fs.LinuxWatchService.poll(Native Method)
at sun.nio.fs.LinuxWatchService.access$600(LinuxWatchService.java:47)
at sun.nio.fs.LinuxWatchService$Poller.run(LinuxWatchService.java:314)
at java.lang.Thread.run(Thread.java:745)
"Thread-5" #15 daemon prio=5 os_prio=0 tid=0x00007fe79832d800 nid=0xeb11 runnable [0x00007fe77a72f000]
java.lang.Thread.State: RUNNABLE
at sun.nio.fs.LinuxWatchService.poll(Native Method)
at sun.nio.fs.LinuxWatchService.access$600(LinuxWatchService.java:47)
at sun.nio.fs.LinuxWatchService$Poller.run(LinuxWatchService.java:314)
at java.lang.Thread.run(Thread.java:745)
"Thread-4" #14 prio=5 os_prio=0 tid=0x00007fe798321800 nid=0xeb10 waiting on condition [0x00007fe77aa41000]
java.lang.Thread.State: TIMED_WAITING (sleeping)
at java.lang.Thread.sleep(Native Method)
at com.google.gwt.dev.resource.impl.ResourceAccumulatorManager$1.run(ResourceAccumulatorManager.java:92)
"pool-1-thread-1" #13 prio=5 os_prio=0 tid=0x00007fe79831e000 nid=0xeb0f waiting on condition [0x00007fe77b76b000]
java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x00000000e02b8d28> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)
at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1067)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
"Timer-0" #10 daemon prio=5 os_prio=0 tid=0x00007fe75c294800 nid=0xeb0e in Object.wait() [0x00007fe77b473000]
java.lang.Thread.State: TIMED_WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x00000000e0a5fd88> (a java.util.TaskQueue)
at java.util.TimerThread.mainLoop(Timer.java:552)
- locked <0x00000000e0a5fd88> (a java.util.TaskQueue)
at java.util.TimerThread.run(Timer.java:505)
"Service Thread" #7 daemon prio=9 os_prio=0 tid=0x00007fe7980bc800 nid=0xeb0b runnable [0x0000000000000000]
java.lang.Thread.State: RUNNABLE
"C1 CompilerThread1" #6 daemon prio=9 os_prio=0 tid=0x00007fe7980b9800 nid=0xeb0a waiting on condition [0x0000000000000000]
java.lang.Thread.State: RUNNABLE
"C2 CompilerThread0" #5 daemon prio=9 os_prio=0 tid=0x00007fe7980b7000 nid=0xeb09 waiting on condition [0x0000000000000000]
java.lang.Thread.State: RUNNABLE
"Signal Dispatcher" #4 daemon prio=9 os_prio=0 tid=0x00007fe7980b5800 nid=0xeb08 runnable [0x0000000000000000]
java.lang.Thread.State: RUNNABLE
"Finalizer" #3 daemon prio=8 os_prio=0 tid=0x00007fe798082000 nid=0xeb07 in Object.wait() [0x00007fe7881b9000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x00000000e0a7f038> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:143)
- locked <0x00000000e0a7f038> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:164)
at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:209)
"Reference Handler" #2 daemon prio=10 os_prio=0 tid=0x00007fe79807d800 nid=0xeb06 in Object.wait() [0x00007fe7882ba000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x00000000e0a9e7a0> (a java.lang.ref.Reference$Lock)
at java.lang.Object.wait(Object.java:502)
at java.lang.ref.Reference.tryHandlePending(Reference.java:191)
- locked <0x00000000e0a9e7a0> (a java.lang.ref.Reference$Lock)
at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:153)
"main" #1 prio=5 os_prio=0 tid=0x00007fe79800c000 nid=0xeb01 waiting on condition [0x00007fe7a0f94000]
java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x00000000e22851d0> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)
at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
at com.google.gwt.dev.PermutationWorkerFactory$Manager.doRun(PermutationWorkerFactory.java:141)
at com.google.gwt.dev.PermutationWorkerFactory$Manager.run(PermutationWorkerFactory.java:106)
at com.google.gwt.dev.PermutationWorkerFactory.compilePermutations(PermutationWorkerFactory.java:257)
at com.google.gwt.dev.CompilePerms.compile(CompilePerms.java:211)
at com.google.gwt.dev.Compiler.compile(Compiler.java:219)
at com.google.gwt.dev.Compiler.compile(Compiler.java:155)
at com.google.gwt.dev.Compiler.compile(Compiler.java:144)
at com.google.gwt.dev.Compiler$1.run(Compiler.java:118)
at com.google.gwt.dev.CompileTaskRunner.doRun(CompileTaskRunner.java:55)
at com.google.gwt.dev.CompileTaskRunner.runWithAppropriateLogger(CompileTaskRunner.java:50)
at com.google.gwt.dev.Compiler.main(Compiler.java:125)
"VM Thread" os_prio=0 tid=0x00007fe798076000 nid=0xeb05 runnable
"GC task thread#0 (ParallelGC)" os_prio=0 tid=0x00007fe798021800 nid=0xeb03 runnable
"GC task thread#1 (ParallelGC)" os_prio=0 tid=0x00007fe798023000 nid=0xeb04 runnable
"VM Periodic Task Thread" os_prio=0 tid=0x00007fe7980bf800 nid=0xeb0c waiting on condition
JNI global references: 326
@ailabs-software

Copy link
Copy Markdown
Author

Code from class where line 17 causes freeze:

package shopwindowshared.client.crm.data;

import java.util.List;
import java.util.ArrayList;

import ailabs.jclosure.client.dom.Window;
import ailabs.jclosure.client.ui.control.OptionModel;

import shopwindowshared.client.crm.model.FunnelModel;

/** @fileoverview Provide access to CRM funnels data */

public class FunnelDataService
{
public static void createFunnel(String title)
{
FunnelDataService.createFunnel(title);
}

public static List getFunnels()
{
return Window.getDefaultWindow()
.getPropertyObject("PAGEDATA")
.getPropertyObject("CRM_FUNNELS").copyToArrayList();
}

public static List< OptionModel > getFunnelsMenuOptions()
{
List funnels = getFunnels();
List< OptionModel > funnelMenuOptions = new ArrayList< OptionModel >();

for (FunnelModel funnel : funnels)
{
  funnelMenuOptions.add( new OptionModel<FunnelModel>(funnel.title, funnel) );
}

return funnelMenuOptions;

}
}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment