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

[THREDDS #VLL-101822]: WCS GetCoverage Http 400 Bad Request with timeless datasets



Hi Jonathan,

I'm not sure why it would be failing. The log messages aren't giving much of a 
clue. Are there any messages in the catalina.out or localhost-*.log log files 
under ${TOMCAT_HOME}/logs/ (if you are running Tomcat)?

Can you grab the response body that is being sent back? There might be some 
useful information in there.

If none of that looks promising, could you send me your test files so I can try 
them out in the debugger.

Thanks,

Ethan

> This is related to the entry having LWJ-749499 ticket id, "THREDDS WCS
> GetCoverage Http 400 Bad Request".
> 
> I'm experiencing the same behavior (http 400) using thredds
> 4.2.20100607.1833
> 
> In my case, it seems to be due to the use of dataset lacking the time
> dimension
> 
> Below are the sample ok/ko resquests
> 
> 
> Test file with 24 time
> ======================
> 
> ncdump
> ------
> 
> netcdf test {
> dimensions:
>      latitude = 48 ;
>      longitude = 44 ;
>      time = 72 ;
> variables:
>      float latitude(latitude) ;
>          latitude:units = "degree_north" ;
>          latitude:standard_name = "latitude" ;
>          latitude:long_name = "latitude" ;
>      float longitude(longitude) ;
>          longitude:units = "degree_east" ;
>          longitude:standard_name = "longitude" ;
>          longitude:long_name = "longitude" ;
>      double time(time) ;
>          time:units = "seconds since 1900-01-1 00:00:0.0" ;
>          time:standard_name = "time" ;
>          time:long_name = "time" ;
>      float sst(time, latitude, longitude) ;
> (...)
> }
> 
> request
> -------
> 
> https://localhost:8443/thredds/wcs/test/test.nc?request=GetCoverage&version=1.0.0&service=WCS&format=NetCDF3&coverage=sst&bbox=-7,46,-2,50&time=2009-01-01T00:00:00Z
> 
> => OK, file received
> 
> 
> Test file with 1 time
> =====================
> 
> ncdump
> ------
> 
> netcdf testonetime {
> dimensions:
>      latitude = 48 ;
>      longitude = 44 ;
>      time = 1 ;
> variables:
>      float latitude(latitude) ;
>          latitude:units = "degree_north" ;
>          latitude:standard_name = "latitude" ;
>          latitude:long_name = "latitude" ;
>      float longitude(longitude) ;
>          longitude:units = "degree_east" ;
>          longitude:standard_name = "longitude" ;
>          longitude:long_name = "longitude" ;
>      float sst(time, latitude, longitude) ;
>          sst:long_name = "Sea surface temperature" ;
>          sst:standard_name = "sea_surface_temperature" ;
>          sst:units = "K" ;
>          sst:_FillValue = 9.96921e+36f ;
>          sst:missing_value = 9.96921e+36f ;
>          sst:valid_min = -9.96921e+36f ;
>          sst:valid_max = 9.96921e+36f ;
>      float sst(time, latitude, longitude) ;
> (...)
> }
> 
> request
> -----------
> 
> https://localhost:8443/thredds/wcs/test/testonetime.nc?request=GetCoverage&version=1.0.0&service=WCS&format=NetCDF3&coverage=sst&bbox=-7,46,-2,50&time=2009-01-01T00:00:00Z
> 
> => OK, file received
> 
> 
> Test without time
> =================
> 
> ncdump
> ------
> 
> netcdf testnotime {
> dimensions:
>      latitude = 48 ;
>      longitude = 44 ;
> variables:
>      double latitude(latitude) ;
>      double longitude(longitude) ;
>      float sst(latitude, longitude) ;
>          sst:name = "variable_1" ;
>          sst:standard_name = "sea_surface_temperature" ;
>          sst:long_name = "Sea surface temperature" ;
>          sst:valid_min = -9.96921e+36f ;
>          sst:units = "K" ;
>          sst:valid_max = 9.96921e+36f ;
>          sst:missing_value = 9.96921e+36f ;
>      float v10m(latitude, longitude) ;
> (...)
> }
> 
> request
> -------
> 
> https://localhost:8443/thredds/wcs/test/testnotime.nc?request=GetCoverage&version=1.0.0&service=WCS&format=NetCDF3&coverage=sst&bbox=-7,46,-2,50&time=2009-01-01T00:00:00Z
> 
> => KO, http 400
> 
> https://localhost:8443/thredds/wcs/test/testnotime.nc?request=GetCoverage&version=1.0.0&service=WCS&format=NetCDF3&coverage=sst&bbox=-7,46,-2,50
> 
> => KO, http 400
> 
> Both of these last two requests fails on a dataset without time var/dim
> 
> Here are the log corresponding to this failling request:
> 
> 2010-06-29T14:29:11.689 +0200 [      9091][      10] INFO  -
> thredds.server.wcs.WCSServlet - Remote host: 127.0.0.1 - Request: "GET
> /thredds/wcs/test/testnotime.nc?request=GetCoverage&version=1.0.0&service=WCS&format=NetCDF3&coverage=sst&bbox=-7,46,-2,50
> HTTP/1.0"
> 2010-06-29T14:29:11.697 +0200 [      9099][      10] DEBUG -
> thredds.servlet.DatasetHandler - DatasetHandler wants /test/testnotime.nc
> 2010-06-29T14:29:11.697 +0200 [      9099][      10] DEBUG -
> thredds.catalog.InvDatasetScan - translatePathToLocation(): url dsPath=
> test/testnotime.nc to dataset dsPath=
> XXX/apache-tomcat-6.0.18/content/thredds/testnotime.nc
> 2010-06-29T14:29:11.709 +0200 [      9111][      10] DEBUG -
> ucar.nc2.NetcdfFile - Using IOSP ucar.nc2.iosp.netcdf3.N3raf
> 2010-06-29T14:29:11.844 +0200 [      9246][      10] INFO  -
> thredds.server.wcs.v1_0_0_1.WcsHandler - Request Completed - 400 - -1 - 155
> 
> 
> 
> Hope this help,
> 
> 
> Jonathan Wilkins
> Actimar, France


Ticket Details
===================
Ticket ID: VLL-101822
Department: Support THREDDS
Priority: Normal
Status: Closed