Roland, At least the Exception changed to the
following after using time_format of YYYYMMdd: … 2009-11-02 22:48:44,555 DEBUG
axis.client.Call - Exit: Call::invoke(RPCElement) 2009-11-02 22:48:44,555 DEBUG
axis.client.Call - Exit: Call::invoke(ns, meth, args) 2009-11-02 22:48:44,555 DEBUG
apache.axis.TIME - axis.Call.invoke: 4383 {LASBackend}getProduct 2009-11-02 22:48:44,563 ERROR
product.server.LASAction - Unable to make intermediate netCDF file. 2009-11-02 22:48:44,563 ERROR
product.server.LASAction - java.lang.Exception: Could not create intermediate
netCDF file stub with result set: ucar.ma2.InvalidRangeException: Bad section
rank gov.noaa.pmel.tmap.las.service.database.DatabaseTool.makeNetCDF(DatabaseTool.java:304) … Obviously IntermediateNetcdfFile succeeded
but netcdf.create(rset,lasBackendRequest) failed at line: 209. Efren
A. Serra (Contractor) From: Roland Schweitzer [mailto:Roland.Schweitzer@xxxxxxxx] Efren, FYI, I did CREATE TABLE profiles_bak SELECT *
profiles; ALTER TABLE MODIFY COLUMN t double unsigned; Then, used profiles_bak in my
database_access element and still get the Unable to make intermediate netCDF
file. I’m looking at IntermediateNetcdfFIle.java line 97 and this throws an exception if
time_format isn’t set or empty which is how I have it. What time
format should I choose with a time_type of double? Thanks. I think it should probably not throw an exception when
the time is a numeric type that does need to be converted. I suspect if
you put any valid time format in that spot it would work just fine with your
new profiles_bak table.
From: Roland Schweitzer [mailto:Roland.Schweitzer@xxxxxxxx]
Hi, The actual data type from the MySQL
describe command is: +----------------------+------------------+------+-----+---------+-------+ |
Field
| Type
| Null | Key | Default | Extra | +----------------------+------------------+------+-----+---------+-------+ … |
t
| int(10) unsigned | | MUL |
0 | | … +----------------------+------------------+------+-----+---------+-------+ I thought about this after sending you the
last email. Efren
A. Serra (Contractor) From: Roland Schweitzer [mailto:Roland.Schweitzer@xxxxxxxx]
Efren, I think you’re absolutely correct.
We’re storing Argo profile/salinity data in a mysql RDBMS.
The logic that handles the profile data is actually storing hours since
the UNIX epoch. Here’s a typical SELECT statement: SELECT pres,y,x,t,temp FROM profiles WHERE
(temp<99999.0 OR temp>99999.0) AND ((x>=-180.0) AND (x<=179.0)) AND
((y>=-90) AND (y<=89)) AND ((pres>=0) AND (pres<=5000)) AND
((t>=349069.0) AND (t<=349069.0)) Multiplying 349069 by 3600 and using date
+”%Y%m%d” -d “UTC 1970-01-01 1256648400 secs ” gives
Tue Oct 27 13:00:00 UTC 2009 which is what I’m selecting on the UI.
The database_access element is configured as: <time>t</time>
<time_type>double</time_type>
<time_sample>346536</time_sample>
<time_format></time_format> <time_units>hours
since 1970-01-01 00:00:00</time_units>
<hours_1970></hours_1970> I thought this what I was supposed to do
from the documentation at http://ferret.pmel.noaa.gov/Ferret/LAS/home/documentation/installer-documentation/adding-scattered-data/using-a-database/creating-the-dataset-configuration-file/.
What time_units should I have used? Thank you very much for the
reply. Efren A. Serra (Contractor) From: Roland Schweitzer [mailto:Roland.Schweitzer@xxxxxxxx]
Efren, I'm having the following issue with mysql profile data: 2009-10-29
21:16:57,192 DEBUG service.database.DatabaseTool - Created sqlFile 2009-10-29
21:16:57,192 DEBUG service.database.DatabaseTool - preparing to read sql file 2009-10-29
21:16:57,192 DEBUG service.database.DatabaseTool - Statement ready:
SELECT pres,y,x,t,temp FROM profiles WHERE (temp<99999.0 OR temp>99999.0)
AND ((x>=-180.0) AND (x<=179.0)) AND ((y>=-90) AND (y<=89)) AND
((pres>=0) AND (pres<=5000)) AND ((t>=349045.0) AND (t<=349069.0)) 2009-10-29
21:16:57,192 DEBUG service.database.DatabaseTool - Connecting to datbase:
jdbc:mysql://localhost:3306/argo2?autoReconnect=true 2009-10-29
21:16:57,204 DEBUG service.database.DatabaseTool - executeQuery: SELECT
pres,y,x,t,temp FROM profiles WHERE (temp<99999.0 OR temp>99999.0) AND
((x>=-180.0) AND (x<=179.0)) AND ((y>=-90) AND (y<=89)) AND
((pres>=0) AND (pres<=5000)) AND ((t>=349045.0) AND (t<=349069.0)) 2009-10-29
21:16:57,210 DEBUG service.database.DatabaseTool - Done with query. 2009-10-29
21:16:57,211 DEBUG service.database.DatabaseTool - Got netcdf filename:
/godae/apache-tomcat-6.0.18/webapps/las/output/C83F6589068DB3AD77FEFD2C83BC1B9A_netcdf.nc 2009-10-29
21:16:57,211 DEBUG service.database.IntermediateNetcdfFile - Create new empty
netCDF file. 2009-10-29
21:16:57,211 INFO service.database.DatabaseBackendService - Database
backend request failed: Unable to make intermediate netCDF file. The database query returns 245 records. Any help
would be greatly appreciated. Thank you. Efren A. Serra (Contractor) DeVine Consulting, Inc. Naval Research Laboratory Marine Meteorology Division Code 7542 Office: 831-656-4650 |