Skip to main content

 Hello,

I am looking for insight to what root cause could generate this error in my pipeline. As of a week ago this pipeline which is scheduled to run every 10 mins was running with no issues. On the 16th of December 2022 this pipeline began producing the below error messages. The pipeline grabs files from a local FS and sends them to S3. Under the state history we are given the following for one of the runs: 

com.streamsets.datacollector.runner.PipelineRuntimeException: CONTAINER_0791 - Pipeline lifecycle event stage run error: com.streamsets.datacollector.runner.PipelineRuntimeException: CONTAINER_0792 - Pipeline lifecycle event stage generated error record: SHELL_002 - Script execution timed out

 

Any insight on what might be causing this issue would be greatly appreciated. 

Thanks, 

(full log file for pipeline error)

crunner:] estage:] ERROR ProductionPipelineRunnable - An exception occurred while running the pipeline, com.streamsets.datacollector.runner.PipelineRuntimeException: CONTAINER_0791 - Pipeline lifecycle event stage run error: com.streamsets.datacollector.runner.PipelineRuntimeException: CONTAINER_0792 - Pipeline lifecycle event stage generated error record: SHELL_002 - Script execution timed out
com.streamsets.datacollector.runner.PipelineRuntimeException: CONTAINER_0791 - Pipeline lifecycle event stage run error: com.streamsets.datacollector.runner.PipelineRuntimeException: CONTAINER_0792 - Pipeline lifecycle event stage generated error record: SHELL_002 - Script execution timed out
at com.streamsets.datacollector.runner.Pipeline.destroy(Pipeline.java:495)
at com.streamsets.datacollector.execution.runner.common.ProductionPipeline.run(ProductionPipeline.java:168)
at com.streamsets.datacollector.execution.runner.common.ProductionPipelineRunnable.run(ProductionPipelineRunnable.java:75)
at com.streamsets.datacollector.execution.runner.standalone.StandaloneRunner.startInternal(StandaloneRunner.java:762)
at com.streamsets.datacollector.execution.runner.standalone.StandaloneRunner.start(StandaloneRunner.java:755)
at com.streamsets.datacollector.execution.AbstractRunner.lambda$scheduleForRetries$0(AbstractRunner.java:386)
at com.streamsets.pipeline.lib.executor.SafeScheduledExecutorService$SafeCallable.lambda$call$0(SafeScheduledExecutorService.java:226)
at com.streamsets.datacollector.security.GroupsInScope.execute(GroupsInScope.java:34)
at com.streamsets.pipeline.lib.executor.SafeScheduledExecutorService$SafeCallable.call(SafeScheduledExecutorService.java:222)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304)
at com.streamsets.datacollector.metrics.MetricSafeScheduledExecutorService$MetricsTask.run(MetricSafeScheduledExecutorService.java:100)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630)
at java.base/java.lang.Thread.run(Thread.java:832)

 

“Shell Executor” stage has a default timeout of 1000ms. Here it seems your script is reaching this default timeout, hence the error.

To increase this timeout: 

  1. Open the pipeline and select the  “Shell” stage.
  2. Go to Configuration / Environment / Show Advanced Options
  3. You should see the Timeout (ms) field. Set accordingly to your needs.

Reply