Hi Mikhail, We *do* aim to make Hop Gui as good as possible, but perfection is hard to achieve ;-)
It is definitely worth raising an issue. If you do create a bug ticket, a reproduction path (and pipeline) is always very helpful. Regards, Bart On Sun, May 21, 2023 at 8:19 AM Mikhail Khludnev <m...@apache.org> wrote: > Hello, > I'm experimenting with tiny pipeline. It seems every time exception > occurs, threads stuck in livelock(iirc). I put some logs and stacks below. > Question: > - do you pursue usability perfection for GUI, or it's a dead end and you > move toward web UI? > - is it worth to raise an issue? > > Here's an error that's not a problem: > 2023/05/20 14:22:12 - solr-docs - Execution started for pipeline > [solr-docs] > 2023/05/20 14:22:13 - Generate rows.0 - Finished processing (I=0, O=0, > R=0, W=10, U=0, E=0) > org.apache.hop.core.exception.HopException: > The specified field '{0}' could not be found in the input. > > 2023/05/20 14:22:13 - Fake data - products.0 - Finished processing (I=0, > O=0, R=10, W=10, U=0, E=0) > at > org.apache.hop.pipeline.transforms.jsonoutput.JsonOutput.processRow(JsonOutput.java:202) > at > org.apache.hop.pipeline.transform.RunThread.run(RunThread.java:55) > at java.base/java.lang.Thread.run(Thread.java:833) > 2023/05/20 14:22:13 - JSON output.0 - ERROR: Unexpected error > 2023/05/20 14:22:13 - JSON output.0 - ERROR: > org.apache.hop.core.exception.HopException: > 2023/05/20 14:22:13 - JSON output.0 - The specified field '{0}' could not > be found in the input. > 2023/05/20 14:22:13 - JSON output.0 - > 2023/05/20 14:22:13 - JSON output.0 - at > org.apache.hop.pipeline.transforms.jsonoutput.JsonOutput.processRow(JsonOutput.java:202) > 2023/05/20 14:22:13 - JSON output.0 - at > org.apache.hop.pipeline.transform.RunThread.run(RunThread.java:55) > 2023/05/20 14:22:13 - JSON output.0 - at > java.base/java.lang.Thread.run(Thread.java:833) > 2023/05/20 14:22:13 - JSON output.0 - Finished processing (I=0, O=0, R=1, > W=0, U=0, E=1) > 2023/05/20 14:22:13 - solr-docs - Pipeline detected one or more transforms > with errors. > 2023/05/20 14:22:13 - solr-docs - Pipeline is killing the other transforms! > 2023/05/20 14:22:13 - solr-docs - Pipeline duration : 1.035 seconds [ > 1.034" ] > > but it causes thread stuck (find 0x0000000092b2e408): > > "main" #1 prio=5 os_prio=0 cpu=196921.88ms elapsed=50520.47s > tid=0x00000198b9c56250 nid=0x6454 waiting for monitor entry > [0x00000083d1eff000] > java.lang.Thread.State: BLOCKED (on object monitor) > at org.apache.hop.pipeline.Pipeline.getEngineMetrics(Pipeline.java:3284) > - waiting to lock <0x0000000092b2e408> (a > org.apache.hop.pipeline.engines.local.LocalPipelineEngine) > at org.apache.hop.pipeline.Pipeline.getEngineMetrics(Pipeline.java:3279) > at > org.apache.hop.ui.hopgui.file.pipeline.delegates.HopGuiPipelineGridDelegate.refreshView(HopGuiPipelineGridDelegate.java:352) > at > org.apache.hop.ui.hopgui.file.pipeline.delegates.HopGuiPipelineGridDelegate$1.lambda$run$0(HopGuiPipelineGridDelegate.java:259) > at > org.apache.hop.ui.hopgui.file.pipeline.delegates.HopGuiPipelineGridDelegate$1$$Lambda$350/0x000000080112bd80.run(Unknown > Source) > at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:40) > at > org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:132) > - locked <0x0000000096284228> (a org.eclipse.swt.widgets.RunnableLock) > at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4029) > at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3645) > at org.apache.hop.ui.hopgui.HopGui.open(HopGui.java:474) > at org.apache.hop.ui.hopgui.HopGui.main(HopGui.java:352) > > > "solr-docs - REST client" #282 prio=5 os_prio=0 cpu=15.62ms > elapsed=165.46s tid=0x00000198e17bd250 nid=0x37ec in Object.wait() > [0x00000083d42fe000] > java.lang.Thread.State: WAITING (on object monitor) > at java.lang.Object.wait(java.base@17.0.6/Native Method) > - waiting on <no object reference available> > at java.lang.Object.wait(java.base@17.0.6/Object.java:338) > at org.eclipse.swt.widgets.Synchronizer.syncExec(Synchronizer.java:200) > - locked <0x00000000915845d0> (a org.eclipse.swt.widgets.RunnableLock) > at org.eclipse.swt.widgets.Display.syncExec(Display.java:4785) > at > org.apache.hop.ui.hopgui.file.pipeline.HopGuiPipelineGraph.checkErrorVisuals(HopGuiPipelineGraph.java:4647) > at > org.apache.hop.ui.hopgui.file.pipeline.HopGuiPipelineGraph.lambda$startThreads$17(HopGuiPipelineGraph.java:4546) > at > org.apache.hop.ui.hopgui.file.pipeline.HopGuiPipelineGraph$$Lambda$374/0x0000000801150f20.finished(Unknown > Source) > at > org.apache.hop.pipeline.Pipeline.firePipelineExecutionFinishedListeners(Pipeline.java:1326) > - locked <0x0000000092b2e600> (a > java.util.Collections$SynchronizedRandomAccessList) > at > org.apache.hop.pipeline.Pipeline.lambda$startThreads$0(Pipeline.java:1142) > - locked <0x0000000092b2e408> (a > org.apache.hop.pipeline.engines.local.LocalPipelineEngine) > at > org.apache.hop.pipeline.Pipeline$$Lambda$381/0x00000008011523d8.transformFinished(Unknown > Source) > at > org.apache.hop.pipeline.transform.BaseTransform.fireTransformFinishedListeners(BaseTransform.java:2779) > - locked <0x0000000092026e60> (a > java.util.Collections$SynchronizedRandomAccessList) > - locked <0x00000000922d0390> (a > org.apache.hop.pipeline.transforms.rest.Rest) > at > org.apache.hop.pipeline.transform.BaseTransform.markStop(BaseTransform.java:2768) > - locked <0x00000000922d0390> (a > org.apache.hop.pipeline.transforms.rest.Rest) > at org.apache.hop.pipeline.transform.RunThread.run(RunThread.java:142) > at java.lang.Thread.run(java.base@17.0.6/Thread.java:833) > > Attaching these files. > -- > Sincerely yours > Mikhail Khludnev > >