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
>
>

Reply via email to