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