Ticket #516 (closed Defect: fixed)

Opened 16 months ago

Last modified 15 months ago

Interpolate Aviso Products at Points tools fail with RuntimeError: Failed to retrieve the data slice ... due to ServerError: 'Server error 3: "Invalid Parameter Exception: DArrayDimension.setProjection: Bad Projection Request: stop < start"'

Reported by: jjr8 Owned by: jjr8
Priority: Medium Milestone: 0.8
Component: Tools - Data Products - Aviso Version:
Keywords: Cc:

Description

Full output from ArcGIS looks like this:

Executing (Interpolate Aviso SSH Product at Points): AvisoGriddedSSHInterpolateAtArcGISPoints aviso-users grid2010 "Global DT-Upd Merged MSLA SSH" Weekly J:\Mahi_Project\NorthernExtent\Tooldata\Rec_1.shp MSLA_H Point_Date Nearest # # 60 120 # # 128 16 16 3
Start Time: Thu Jan 19 12:48:09 2012
Running script AvisoGriddedSSHInterpolateAtArcGISPoints...
Interpolating values for 8691 points of ArcGIS ShapeFile "J:\Mahi_Project\NorthernExtent\Tooldata\Rec_1.shp".
Update in progress: 0:01:00 elapsed, 1597 points updated, 0 deleted, 0 unchanged, 0:00:00.037591 per point, 7094 remaining, estimated completion time: 12:53:38 PM.
Failed to retrieve data slice Grid_0001[642:645,965:915,560:576] of OPeNDAP URL http://opendap.aviso.oceanobs.com/thredds/dodsC/dataset-duacs-dt-upd-global-merged-msla-h due to ServerError: 'Server error 3: "Invalid Parameter Exception: DArrayDimension.setProjection: Bad Projection Request: stop < start"'. Retrying...
Update stopped before all points were processed: 0:03:52 elapsed, 3071 points updated, 0 deleted, 0 unchanged, 0:00:00.075671 per point, 5620 points not processed.
RuntimeError: Failed to retrieve the data slice [642:645,965:915,560:576] of Aviso Global DT-Upd Merged MSLA SSH due to ServerError: 'Server error 3: "Invalid Parameter Exception: DArrayDimension.setProjection: Bad Projection Request: stop < start"'. The request was retried for 120 seconds without success. Check that the OPeNDAP server is operating properly and that your computer can connect to it. If necessary, contact the server's operator for assistance. If the server and network are operating properly, this problem could be a programming error in this tool. If you suspect one, contact the author of this tool for assistance. Error details: ServerError: 'Server error 3: "Invalid Parameter Exception: DArrayDimension.setProjection: Bad Projection Request: stop < start"'
<type 'exceptions.RuntimeError'>: Failed to retrieve the data slice [642:645,965:915,560:576] of Aviso Global DT-Upd Merged MSLA SSH due to ServerError: 'Server error 3: "Invalid Parameter Exception: DArrayDimension.setProjection: Bad Projection Request: stop < start"'. The request was retried for 120 seconds without success. Check that the OPeNDAP server is operating properly and that your computer can connect to it. If necessary, contact the server's operator for assistance. If the server and network are operating properly, this problem could be a programming error in this tool. If you suspect one, contact the author of this tool for assistance. Error details: ServerError: 'Server error 3: "Invalid Parameter Exception: DArrayDimension.setProjection: Bad Projection Request: stop < start"'
Failed to execute (Interpolate Aviso SSH Product at Points).
Failed at Thu Jan 19 12:52:03 2012 (Elapsed Time: 3 minutes 54 seconds)

The problem is that when MemoryCachedGrid needs to fill the cache with a slice of uncached data, it calculates the slice indices to request using the shape of the underlying Grid without accounting for the situation where PhysicalDimensions are a different order than the canonical Dimensions. Aviso data are physically ordered txy which differs from the canonical order tyx, so they hit this problem.

There are two mitigating factors that decrease the impact of this bug:

  • The bug simply affects the decision about which slice to request to fill the cache. It does not affect the values ultimately computed by the tool. Consequently, the tool does not return the wrong values (e.g. by improperly permuting the indices).
  • It only crops up for coordinates that approach the right-most edge of the Aviso grid. Aviso uses a 0 to 360 system, so these are coordinates that approach 360; coordinates in the Atlantic that are west of the Prime Meridian.

The solution is to calculate the indices to request by taking the PhysicalDimensions into account.

Change History

Changed 15 months ago by jjr8

  • status changed from new to closed
  • resolution changed from null to fixed

Fixed in r903, released in MGET 0.8a33.

Note: See TracTickets for help on using tickets.