2 Different Errors From Attempting to Open L2 netCDFs in SeaDAS
-
- Posts: 4
- Joined: Sat Sep 28, 2024 5:48 am America/New_York
2 Different Errors From Attempting to Open L2 netCDFs in SeaDAS
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.
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.
Filters:
-
- Subject Matter Expert
- Posts: 452
- Joined: Fri Feb 05, 2021 9:17 am America/New_York
- Been thanked: 7 times
Re: 2 Different Errors From Attempting to Open L2 netCDFs in SeaDAS
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
Tommy
-
- Subject Matter Expert
- Posts: 712
- Joined: Tue Feb 09, 2021 5:42 pm America/New_York
- Been thanked: 9 times
Re: 2 Different Errors From Attempting to Open L2 netCDFs in SeaDAS
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.
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.
-
- Posts: 4
- Joined: Sat Sep 28, 2024 5:48 am America/New_York
Re: 2 Different Errors From Attempting to Open L2 netCDFs in SeaDAS
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.
-
- Subject Matter Expert
- Posts: 712
- Joined: Tue Feb 09, 2021 5:42 pm America/New_York
- Been thanked: 9 times
Re: 2 Different Errors From Attempting to Open L2 netCDFs in SeaDAS
Glad that you have figured it out! Thanks for reporting back