grads-1.9b4 & gds-1.3
Thomas LOUBRIEU
Thomas.Loubrieu at IFREMER.FR
Thu Jun 9 08:21:13 EDT 2005
Hi Jennifer,
Thanks for your quick reply.
Doing what you asked for, I've seen that there is a netcdf index query
failure, but I do not understand where.
The elements are :
1) For the failing request :
GrADS session :
ga-> /export/home/logiciels/gds/scripts/subset.gs /export/home/logiciels/jakarta-tomcat-4.1.30/temp/gds/grads/dods/subset/coriolis-atlantic-temperature-weekly-oa_v3_rt.temperature59646.subset /home/tloubrie/dods/dodsG/OA_V302/coriolis-atlantic-temperature-weekly-oa_v3_rt.ctl temperature 152 267 260 426 7 7 242 242
output = /export/home/logiciels/jakarta-tomcat-4.1.30/temp/gds/grads/dods/subset/coriolis-atlantic-temperature-weekly-oa_v3_rt.temperature59646.subset
dataset = /home/tloubrie/dods/dodsG/OA_V302/coriolis-atlantic-temperature-weekly-oa_v3_rt.ctl
varname = temperature
152 -> 267 Varying
260 -> 426 Varying
7 -> 7
242 -> 242
2 Varying dimensions
Xsize = 421 Ysize = 597 Zsize = 59 Tsize = 255
varname=temperature
Output from q dims:
Default file number is: 1
X is varying Lon = -100 to 40 X = 1 to 421
Y is varying Lat = -69.9662 to 69.9662 Y = 1 to 597
Z is fixed Lev = 5 Z = 1
T is fixed Time = 00Z05JAN2000 T = 1
Output from q fwrite:
FWrite file is closed
FWrite file name is: /export/home/logiciels/jakarta-tomcat-4.1.30/temp/gds/grads/dods/subset/coriolis-atlantic-temperature-weekly-oa_v3_rt.temperature59646.subset
FWrite byte order is big_endian ; machine byte order is little_endian
NetCDF Error (nc_get_vara_float): Index exceeds dimension bound
Data Request Error: Error for variable 'temperature'
Error ocurred at column 1
DISPLAY error: Invalid expression
Expression = temperature
NetCDF Error (nc_get_vara_float): Index exceeds dimension bound
Data Request Error: Error for variable 'temperature'
Error ocurred at column 1
DISPLAY error: Invalid expression
Expression = temperature
No hardcopy metafile open
GX package terminated
no output file is created.
2) For a succesfull resquest :
GraDS session :
ga-> /export/home/logiciels/gds/scripts/subset.gs /export/home/logiciels/jakarta-tomcat-4.1.30/temp/gds/grads/dods/subset/coriolis-atlantic-temperature-weekly-oa_v3_rt.temperature59648.subset /home/tloubrie/dods/dodsG/OA_V302/coriolis-atlantic-temperature-weekly-oa_v3_rt.ctl temperature 101 301 260 401 7 7 242 242
output = /export/home/logiciels/jakarta-tomcat-4.1.30/temp/gds/grads/dods/subset/coriolis-atlantic-temperature-weekly-oa_v3_rt.temperature59648.subset
dataset = /home/tloubrie/dods/dodsG/OA_V302/coriolis-atlantic-temperature-weekly-oa_v3_rt.ctl
varname = temperature
101 -> 301 Varying
260 -> 401 Varying
7 -> 7
242 -> 242
2 Varying dimensions
Xsize = 421 Ysize = 597 Zsize = 59 Tsize = 255
varname=temperature
Output from q dims:
Default file number is: 1
X is varying Lon = -100 to 40 X = 1 to 421
Y is varying Lat = -69.9662 to 69.9662 Y = 1 to 597
Z is fixed Lev = 5 Z = 1
T is fixed Time = 00Z05JAN2000 T = 1
Output from q fwrite:
FWrite file is closed
FWrite file name is: /export/home/logiciels/jakarta-tomcat-4.1.30/temp/gds/grads/dods/subset/coriolis-atlantic-temperature-weekly-oa_v3_rt.temperature59648.subset
FWrite byte order is big_endian ; machine byte order is little_endian
Wrote 28542 of 28542 elements to /export/home/logiciels/jakarta-tomcat-4.1.30/temp/gds/grads/dods/subset/coriolis-atlantic-temperature-weekly-oa_v3_rt.temperature59648.subset as Stream Big_Endian
No hardcopy metafile open
GX package terminated
The size of the output file is : 114168 octets
Thanks for your help,
Thomas
Jennifer Adams wrote:
> Hi, Thomas --
> Thanks for providing so much helpful information. At the moment,
> everything you've done looks right. The "ran out of input while
> spooling..." message means that the size of the subset that got
> written out did not match the requested grid. To find out what
> happened, you have to put your server in debug mode <log level=debug>
> and then make the request. You'll see in the log file a long command
> (with "nice" in front of it) that invokes GrADS, runs the subset.gs
> script and outputs to a file under the $GDSHOME/temp directory. If
> you could please run this command manually, outside the GDS, and send
> along the complete text of the GrADS session as well as the size of
> the output file it created. Please do the same with the request that
> works too.
> Jennifer
>
>
> On Jun 9, 2005, at 4:25 AM, Thomas LOUBRIEU wrote:
>
>> Hello,
>>
>> I am now testing the new version of gds and grads with my netcdf files
>> and I have some problems.
>>
>> I got various errors depending on my dods request :
>> I cannot really find out why some request fail and other work.
>> The gds.log shows :
>>
>> Jun 09 09:11:07 error: [ http8080-Processor4 br144-162 GET
>> /coriolis-atlantic-temperature-weekly-oa_v3_rt.dods?temperature
>> [241:1:241][6:1:6][259:1:425][150:1:267]
>> ] io error during data send: class java.io.IOException: ran out of
>> input while spooling 78824 bytes
>>
>> or
>>
>> Jun 09 10:02:00 error: [ http8080-Processor3 br144-162 GET
>> /coriolis-atlantic-temperature-weekly-oa_v3_rt.asc?temperature
>> [241:1:241][6:1:6][259:1:425][151:1:267]
>> ] io error during data send: class java.io.EOFException: null
>>
>> while, this one works :
>>
>> Jun 09 09:59:49 [ http8080-Processor2 br144-162 GET
>> /coriolis-atlantic-temperature-weekly-oa_v3_rt.dods?temperature
>> [241:1:241][6:1:6][259:1:400][100:1:300]
>> ] FINISHED (success in 114ms)
>>
>> Unfortunatly, my test server is not public.
>>
>> I uses :
>> grads-1.9b4
>> gds-1.3
>> java version "1.4.2"
>> Tomcat/4.1.30
>> on linux red hat 9
>>
>> The gds.xml file contains :
>>
>> <dataset name = "coriolis-atlantic-temperature-weekly-oa_v3_rt"
>>
>> file="/home/tloubrie/dods/dodsG/OA_V302/coriolis-atlantic-
>> temperature-weekly-oa_v3_rt.ctl"
>>
>> format="nc">
>>
>> </dataset>
>>
>>
>> I have configured my dataset that way (ctl file) :
>>
>> DSET /home/coriolis_exp/spool/co04/co0401/co040102/oa/field/TEMP/
>> OA_%y4%m2%d2.nc
>>
>> DTYPE netcdf
>>
>> TITLE CORIOLIS Analysed temperature
>>
>> UNDEF 32767
>>
>> UNPACK scale_factor add_offset
>>
>> OPTIONS template
>>
>> XDEF 421 LEVELS
>>
>> -100 -99.66666 -99.33334 -99 -98.66666 -98.33334 -98
>>
>> -97.66666 -97.33334 -97 -96.66666 -96.33334 -96 -95.66666
>>
>> -95.33334 -95 -94.66666 -94.33334 -94 -93.66666 -93.33334 -93
>>
>> -92.66666 -92.33334 -92 -91.66666 -91.33334 -91 -90.66666
>>
>> -90.33334 -90 -89.66666 -89.33334 -89 -88.66666 -88.33334 -88
>>
>> ....
>>
>> 36.33333 36.66667 37 37.33333 37.66667 38 38.33333 38.66667 39
>>
>> 39.33333 39.66667 40
>>
>> YDEF 597 LEVELS
>>
>> -69.96624 -69.85174 -69.7366 -69.62084 -69.50445 -69.38742
>>
>> -69.26975 -69.15144 -69.03249 -68.91288 -68.79263 -68.67171
>>
>> ...
>>
>> 68.42793 68.55015 68.67171 68.79263 68.91288 69.03249 69.15144
>>
>> 69.26975 69.38742 69.50445 69.62084 69.7366 69.85174 69.96624
>>
>> ZDEF 59 LEVELS
>>
>> 5 10 20 30 40 50 60 80 100 120 140 160 180 200 220
>>
>> 240 260 280 300 320 360 400 440 480 520 560 600 640 680
>>
>> 720 760 800 840 880 920 960 1000 1040 1080 1120 1160 1200
>>
>> 1240 1280 1320 1360 1400 1440 1480 1520 1560 1600 1650 1700
>>
>> 1750 1800 1850 1900 1950
>>
>> TDEF 255 LINEAR 05jan2000 7dy
>>
>> VARS 2
>>
>> temperature 59 t,z,x,y sea temperature
>>
>> pct_variance 59 t,z,x,y variance a priori
>>
>> ENDVARS
>>
>>
>>
>>
>> And the ncdump -h output for one of my netcdf file is :
>>
>> netcdf OA_20040317 {
>>
>> dimensions:
>>
>> time = 1 ;
>>
>> depth = 59 ;
>>
>> latitude = 597 ;
>>
>> longitude = 421 ;
>>
>> variables:
>>
>> float time(time) ;
>>
>> time:units = "days since 1950-01-01 00:00:00" ;
>>
>> float latitude(latitude) ;
>>
>> latitude:units = "degree_north" ;
>>
>> latitude:valid_min = -90.f ;
>>
>> latitude:valid_max = 90.f ;
>>
>> float longitude(longitude) ;
>>
>> longitude:units = "degree_east" ;
>>
>> longitude:valid_min = -180.f ;
>>
>> longitude:valid_max = 180.f ;
>>
>> short depth(depth) ;
>>
>> depth:units = "m" ;
>>
>> depth:positive = "down" ;
>>
>> depth:valid_min = 0s ;
>>
>> depth:valid_max = 2000s ;
>>
>> short temperature(time, depth, latitude, longitude) ;
>>
>> temperature:long_name = "Temperature" ;
>>
>> temperature:missing_value = 32767s ;
>>
>> temperature:_FillValue = 32767s ;
>>
>> temperature:units = "degree_Celsius" ;
>>
>> temperature:valid_min = -3s ;
>>
>> temperature:valid_max = 40s ;
>>
>> temperature:add_offset = 20. ;
>>
>> temperature:scale_factor = 0.001 ;
>>
>> temperature:comment = "Temperature estimate (by
>> objective analysis)" ;
>>
>> short pct_variance(time, depth, latitude, longitude) ;
>>
>> pct_variance:long_name = "Estimate variance / a
>> priori variance (percent)" ;
>>
>> pct_variance:missing_value = 32767s ;
>>
>> pct_variance:_FillValue = 32767s ;
>>
>> pct_variance:units = "percent" ;
>>
>> pct_variance:valid_min = 0s ;
>>
>> pct_variance:valid_max = 100s ;
>>
>> pct_variance:scale_factor = 0.01 ;
>>
>>
>>
>> // global attributes:
>>
>> :CONVENTIONS = "COARDS" ;
>>
>> :producer_agengy = "IFREMER" ;
>>
>> :project_name = "CORIOLIS" ;
>>
>> :creation_time = "14-Jan-2005 19:19:52" ;
>>
>> :software_version = "OA_V3.02" ;
>>
>> :product_version = "OA3_02" ;
>>
>> :data_set = "STD3_02" ;
>>
>> :data_manager = "Emmanuelle Autret, Thomas Loubrieu" ;
>>
>> :estimate_date = "17-Mar-2004" ;
>>
>> :south_latitude = "-70" ;
>>
>> :north_latitude = "70" ;
>>
>> :west_longitude = "-100" ;
>>
>> :east_longitude = "40" ;
>>
>> }
>>
>>
>>
>> Does anyone knows what happens ?
>>
>> Thanks,
>>
>> Thomas
>>
>>
More information about the gradsusr
mailing list