Sporadic "Error: The specified region, if not null, must intersect with the image`s bounds."

Hello all,

I get sporadic errors of “Error: The specified region, if not null, must intersect with the image`s bounds.” when processing via GPT (and snappy):

$ /opt/snap/bin/gpt bug.xml ./SAR_IMP_1PNESA19930411_103750_00000018C093_00423_09085_0000.E1
INFO: org.esa.snap.core.gpf.operators.tooladapter.ToolAdapterIO: Initializing external tool adapters
INFO: org.esa.snap.core.util.EngineVersionCheckActivator: Please check regularly for new updates for the best SNAP experience.
Executing processing graph
INFO: org.hsqldb.persist.Logger: dataFileCache open start
90% done.
org.esa.snap.core.gpf.OperatorException: The specified region, if not null, must intersect with the images bounds. at org.esa.snap.core.gpf.graph.GraphProcessor$GPFImagingListener.errorOccurred(GraphProcessor.java:363) at com.sun.media.jai.util.SunTileScheduler.sendExceptionToListener(SunTileScheduler.java:1646) at com.sun.media.jai.util.SunTileScheduler.scheduleTile(SunTileScheduler.java:921) at javax.media.jai.OpImage.getTile(OpImage.java:1129) at javax.media.jai.PlanarImage.getData(PlanarImage.java:2085) at com.bc.ceres.glevel.MultiLevelImage.getData(MultiLevelImage.java:64) at org.esa.snap.core.gpf.internal.OperatorContext.getSourceTile(OperatorContext.java:407) at org.esa.snap.core.gpf.internal.OperatorContext.getSourceTile(OperatorContext.java:393) at org.esa.snap.core.gpf.internal.OperatorImage.computeRect(OperatorImage.java:73) at javax.media.jai.SourcelessOpImage.computeTile(SourcelessOpImage.java:137) at com.sun.media.jai.util.SunTileScheduler.scheduleTile(SunTileScheduler.java:904) at javax.media.jai.OpImage.getTile(OpImage.java:1129) at com.sun.media.jai.util.RequestJob.compute(SunTileScheduler.java:247) at com.sun.media.jai.util.WorkerThread.run(SunTileScheduler.java:468) Caused by: java.lang.IllegalArgumentException: The specified region, if not null, must intersect with the images bounds.
at javax.media.jai.PlanarImage.getData(PlanarImage.java:2069)
at com.bc.ceres.glevel.MultiLevelImage.getData(MultiLevelImage.java:64)
at org.esa.snap.core.gpf.internal.OperatorContext.getSourceTile(OperatorContext.java:407)
at org.esa.snap.core.gpf.internal.OperatorContext.getSourceTile(OperatorContext.java:393)
at org.esa.snap.core.gpf.Operator.getSourceTile(Operator.java:461)
at org.esa.s1tbx.sar.gpf.geometric.SARSimTerrainCorrectionOp.getWarpData(SARSimTerrainCorrectionOp.java:761)
at org.esa.s1tbx.sar.gpf.geometric.SARSimTerrainCorrectionOp.computeTileStack(SARSimTerrainCorrectionOp.java:897)
at org.esa.snap.core.gpf.internal.OperatorImageTileStack.computeRect(OperatorImageTileStack.java:116)
at org.esa.snap.core.gpf.internal.OperatorImageTileStack.computeTile(OperatorImageTileStack.java:85)
at com.sun.media.jai.util.SunTileScheduler.scheduleTile(SunTileScheduler.java:904)
… 11 more

Error: The specified region, if not null, must intersect with the image`s bounds.

The files bug.xml and SAR_IMP_1PNESA19930411_103750_00000018C093_00423_09085_0000.E1 can be found here:

Unfortunately this one is tricky to reproduce. I only see it when run inside a Singularity/Docker image and if the ‘node id=“Write”’ is used instead of option ‘-t target’ of GPT. It then requires me two-three tries to see the error (I’m removing out.dim/data with every run).

Using GPT is only used for demonstration here - I’m using snappy where I ran into this during bulk processing.

Thank you!