[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[IDV #PYA-561331]: error reading SRTM data from catalog chooser

This archive contains answers to questions sent to Unidata support through mid-2025. Note that the archive is no longer being updated. We provide the archive for reference; many of the answers presented here remain technically correct, even if somewhat outdated. For the most up-to-date information on the use of NSF Unidata software and data services, please consult the Software Documentation first.


  • Subject: [IDV #PYA-561331]: error reading SRTM data from catalog chooser
  • Date: Fri, 21 Nov 2008 07:56:40 -0700

Hi Marion-

> Full Name: Marion Schroedter-Homscheidt
> Email Address: address@hidden
> Organization: DLR
> Package Version: 2.5 build date:2008-05-08 07:05 UTC
> Operating System: Windows XP
> Hardware: Java: home: D:\schroe_m\software\idv\IDV_2.5\jre version: 1.5.0_11 
> j3d:1.3.2 fcs (build12)
> Description of problem: getFlatField read got IOException
> Inconsistent array length read: 1165128303 != 1914731274
> 
> Well, I tried to read the SRTM dataset with the following steps:
> Data Chooser -> Catalog -> IDV catalog -> topography/bathymetry -> 
> SRTM30+Version4.0 (30 arc second Worldwide)
> Field selector -> Contour Plan view -> Create Display
> 
> results in a series of approx 10-15 such error message windows.
> 
> I hope to contribute to the IDV development with this note.

The problem is that the grid is 43200x21600 (933120000 pts) which
ends up being beyond the limits of the integer indexes being used
to retrieve the data.  I'll transfer this request over to the
netCDF-Java group for their consideration.

However, this would result in a ~4 Gb download of data even if you could
do it and the IDV would not be able to handle it.  You need to subset
the data  through the data source properties first.  You can do this 
following the instructions at:

http://www.unidata.ucar.edu/software/IDV/docs/userguide/data/DataSourceProperties.html

under the Spatial Subsetting section.

Don Murray

> ******************
> Stack trace:
> java.io.IOException: Inconsistent array length read: 1165128303 != 1914731274
> at ucar.nc2.dt.grid.GeoGrid.readDataSlice(GeoGrid.java:479)
> at ucar.nc2.dt.grid.GeoGrid.readDataSlice(GeoGrid.java:385)
> at ucar.nc2.dt.grid.GeoGrid.readVolumeData(GeoGrid.java:308)
> at ucar.visad.data.GeoGridFlatField.readData(GeoGridFlatField.java:220)
> at ucar.visad.data.CachedFlatField.getMyValues(CachedFlatField.java:460)
> at ucar.visad.data.CachedFlatField.unpackFloats(CachedFlatField.java:595)
> at 
> ucar.unidata.data.grid.GeoGridAdapter.getFlatField(GeoGridAdapter.java:1204)
> at 
> ucar.unidata.data.grid.GeoGridAdapter.makeSequence(GeoGridAdapter.java:1280)
> at ucar.unidata.data.grid.GeoGridAdapter.getSequence(GeoGridAdapter.java:1047)
> at 
> ucar.unidata.data.grid.GeoGridDataSource.makeFieldImpl(GeoGridDataSource.java:1431)
> at 
> ucar.unidata.data.grid.GeoGridDataSource.getDataInner(GeoGridDataSource.java:1144)
> at ucar.unidata.data.DataSourceImpl.getData(DataSourceImpl.java:2063)
> at ucar.unidata.data.DirectDataChoice.getData(DirectDataChoice.java:333)
> at ucar.unidata.data.DataChoice.getData(DataChoice.java:620)
> at ucar.unidata.data.DataInstance.getData(DataInstance.java:239)
> at ucar.unidata.data.DataInstance.getData(DataInstance.java:203)
> at ucar.unidata.data.grid.GridDataInstance.init(GridDataInstance.java:204)
> at ucar.unidata.data.grid.GridDataInstance.<init>(GridDataInstance.java:161)
> at ucar.unidata.data.grid.GridDataInstance.<init>(GridDataInstance.java:142)
> at 
> ucar.unidata.idv.control.PlanViewControl.doMakeDataInstance(PlanViewControl.java:1172)
> at 
> ucar.unidata.idv.control.DisplayControlImpl.initializeDataInstance(DisplayControlImpl.java:2903)
> at 
> ucar.unidata.idv.control.DisplayControlImpl.setData(DisplayControlImpl.java:2885)
> at ucar.unidata.idv.control.PlanViewControl.setData(PlanViewControl.java:489)
> at 
> ucar.unidata.idv.control.ContourPlanViewControl.setData(ContourPlanViewControl.java:115)
> at ucar.unidata.idv.control.PlanViewControl.init(PlanViewControl.java:398)
> at 
> ucar.unidata.idv.control.DisplayControlImpl.init(DisplayControlImpl.java:1257)
> at 
> ucar.unidata.idv.control.DisplayControlImpl.init(DisplayControlImpl.java:968)
> at ucar.unidata.idv.ControlDescriptor.initControl(ControlDescriptor.java:951)
> at ucar.unidata.idv.ControlDescriptor$1.run(ControlDescriptor.java:876)
> at ucar.unidata.util.Misc$3.run(Misc.java:1018)
> 
> 
> 


Ticket Details
===================
Ticket ID: PYA-561331
Department: Support netCDF Java
Priority: Normal
Status: Open