Page 1 of 1

2 Different Errors From Attempting to Open L2 netCDFs in SeaDAS

Posted: Sat Sep 28, 2024 6:05 am America/New_York
by akfearthdata928
I have mostly not had issues with opening l2 netCDF files in the SeaDAS GUI, but 2 files in particular have both thrown errors when I try to load them.

The files are Landsat 8 and 9 L2 netcdf files generated from L1 ESPA downloaded data.

I error I get in the first file is:

java.util.zip.ZipException: unknown compression method
at java.base/java.util.zip.InflaterInputStream.read(Unknown Source)
at java.base/java.io.FilterInputStream.read(Unknown Source)
at ucar.nc2.util.IO.copyB(IO.java:194)
at ucar.nc2.iosp.hdf5.H5tiledLayoutBB$DataChunk.inflate(H5tiledLayoutBB.java:255)
at ucar.nc2.iosp.hdf5.H5tiledLayoutBB$DataChunk.getByteBuffer(H5tiledLayoutBB.java:216)
at ucar.nc2.iosp.LayoutBBTiled.hasNext(LayoutBBTiled.java:101)
Caused: java.lang.IllegalStateException
at ucar.nc2.iosp.LayoutBBTiled.hasNext(LayoutBBTiled.java:104)
at ucar.nc2.iosp.hdf5.H5tiledLayoutBB.hasNext(H5tiledLayoutBB.java:124)
at ucar.nc2.iosp.IospHelper.readData(IospHelper.java:332)
at ucar.nc2.iosp.IospHelper.readDataFill(IospHelper.java:274)
at ucar.nc2.iosp.hdf5.H5iosp.readData(H5iosp.java:150)
at ucar.nc2.iosp.hdf5.H5iosp.readData(H5iosp.java:123)
at ucar.nc2.NetcdfFile.readData(NetcdfFile.java:2110)
at ucar.nc2.Variable.reallyRead(Variable.java:761)
at ucar.nc2.Variable._read(Variable.java:731)
at ucar.nc2.Variable._read(Variable.java:773)
at ucar.nc2.Variable.read(Variable.java:597)
at gov.nasa.gsfc.seadas.dataio.SeadasFileReader.invalidateLines(SeadasFileReader.java:2147)
at gov.nasa.gsfc.seadas.dataio.L2FileReader.createProduct(L2FileReader.java:97)
at gov.nasa.gsfc.seadas.dataio.SeadasProductReader.readProductNodesImpl(SeadasProductReader.java:205)
at org.esa.snap.core.dataio.AbstractProductReader.readProductNodes(AbstractProductReader.java:175)
at org.esa.snap.core.dataio.ProductIO.readProduct(ProductIO.java:181)
at org.esa.snap.rcp.actions.file.ReadProductOperation.run(ReadProductOperation.java:61)
at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1418)
at org.netbeans.modules.openide.util.GlobalLookup.execute(GlobalLookup.java:45)
at org.openide.util.lookup.Lookups.executeWith(Lookups.java:278)
[catch] at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:2033)

The error I get for the second file is:

​​java.lang.IllegalArgumentException: numElems is less than one
at org.esa.snap.core.datamodel.ProductData.createInstance(ProductData.java:228)
at org.esa.snap.core.datamodel.DataNode.createCompatibleProductData(DataNode.java:320)
at org.esa.snap.core.datamodel.RasterDataNode.createCompatibleRasterData(RasterDataNode.java:1687)
at org.esa.snap.core.datamodel.Band.readRasterDataFully(Band.java:424)
at org.esa.snap.core.datamodel.AbstractBand.loadRasterData(AbstractBand.java:751)
at org.esa.snap.core.datamodel.RasterDataNode.loadRasterData(RasterDataNode.java:956)
at org.esa.snap.core.dataio.geocoding.GeoCodingFactory.getGeoRaster(GeoCodingFactory.java:163)
at org.esa.snap.core.dataio.geocoding.GeoCodingFactory.createPixelGeoCoding(GeoCodingFactory.java:49)
at gov.nasa.gsfc.seadas.dataio.L2FileReader.addPixelGeocoding(L2FileReader.java:364)
at gov.nasa.gsfc.seadas.dataio.L2FileReader.addGeocoding(L2FileReader.java:207)
at gov.nasa.gsfc.seadas.dataio.L2FileReader.createProduct(L2FileReader.java:160)
at gov.nasa.gsfc.seadas.dataio.SeadasProductReader.readProductNodesImpl(SeadasProductReader.java:205)
at org.esa.snap.core.dataio.AbstractProductReader.readProductNodes(AbstractProductReader.java:175)
at org.esa.snap.core.dataio.ProductIO.readProduct(ProductIO.java:181)
at org.esa.snap.rcp.actions.file.ReadProductOperation.run(ReadProductOperation.java:61)
at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1418)
at org.netbeans.modules.openide.util.GlobalLookup.execute(GlobalLookup.java:45)
at org.openide.util.lookup.Lookups.executeWith(Lookups.java:278)
[catch] at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:2033)

I am currently using a python script with the netCDF4 and subprocess libraries to run the l2gen command, and I am wondering if the reason these errors are getting thrown is due to some issue with SeaDAS, the input file, or my script.

Note that I am currently running SeaDAS through its application on a MacBook Pro 14.

Re: 2 Different Errors From Attempting to Open L2 netCDFs in SeaDAS

Posted: Wed Oct 30, 2024 1:29 pm America/New_York
by OB ODPS - towens
You can try running 'ncdump -h' to see if they are valid netCDF and 'file' to see if the file is compressed without an extension to indicate it?

Tommy

Re: 2 Different Errors From Attempting to Open L2 netCDFs in SeaDAS

Posted: Thu Oct 31, 2024 10:14 am America/New_York
by OB SeaDAS - xuanyang02
Please let us know what version of SeaDAS are you using.

It will be helpful for us to replicate the issues if you can share the name of the Landsat L8 and l9 files, and from where you downloaded the files.

Re: 2 Different Errors From Attempting to Open L2 netCDFs in SeaDAS

Posted: Thu Mar 20, 2025 10:30 am America/New_York
by akfearthdata928
After continuing to play around with my SeaDAS processing script, I realized that the errors were most likely due to SeaDAS loading these files from their saved ___location on an external hard drive. Once I moved the files to my computer drive, none of the newer files had issues being opened.

Re: 2 Different Errors From Attempting to Open L2 netCDFs in SeaDAS

Posted: Thu Mar 20, 2025 11:35 am America/New_York
by OB SeaDAS - xuanyang02
Glad that you have figured it out! Thanks for reporting back