OPENDAP / libdap4

A new version of libdap that contains both DAP2 and DAP4 support
GNU Lesser General Public License v2.1
13 stars 14 forks source link

DataDDS: std::bad_alloc #263

Open ndp-opendap opened 3 weeks ago

ndp-opendap commented 3 weeks ago

When I tried to get a DAP2 Data Response:

http://test.opendap.org:8080/opendap/ghrsst/20210102090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.h5.dods?/analysed_sst[0][0:17998][0:29827]

(Unencoded URL for readability)

I see the following error:

Dataset {
    Int16 /analysed_sst[1][17999][29828];
} 20210102090000-JPL-L4_GHRSST-SSTfnd-MUR-GLOB-v02.0-fv04.1.h5;
Data:
Error { 
    code = 500;
    message = "std::exception caught transmitting DataDDS: std::bad_alloc (caught in BESDapTransmit).";
}

The variable size is about 1/2 of the 2GB limit, but it may be the case that since the data are Int16 that they are getting "padded" in XDR and more than a In32 can hop:

Int16

Int16 padded to Int32 by XDR?