Opened 9 years ago
Closed 8 years ago
#974 closed defect (fixed)
WCPS 2_induced aggregation in WCPS doesn't preserve axis names
Reported by: | Dimitar Misev | Owned by: | Bang Pham Huu |
---|---|---|---|
Priority: | major | Milestone: | 9.4 |
Component: | petascope | Version: | development |
Keywords: | Cc: | Vlad Merticariu | |
Complexity: | Medium |
Description
.. so scale over an induced aggregated coverage doesn't work, e.g. this fails
for c in (AGDC_NAT) return encode( scale(( condense min over $ts t( imageCrsDomain(c[ansi:"CRS:1"(0:6)], ansi) ) using (c.red)[Long(148.8:149.4), Lat(-35.6:-35.0), ansi($ts)] ) / 6, { Long:"CRS:1"(0:255), Lat:"CRS:1"(0:255) }) , "png")
with
WCPS Error: Coverage 'scalarExpr' is not served by this server
Change History (6)
comment:1 by , 9 years ago
Milestone: | 9.1.x → 10.0 |
---|---|
Summary: | induced aggregation in WCPS doesn't preserve axis names → WCPS1.5_induced aggregation in WCPS doesn't preserve axis names |
comment:2 by , 8 years ago
Resolution: | → invalid |
---|---|
Status: | new → closed |
Summary: | WCPS1.5_induced aggregation in WCPS doesn't preserve axis names → WCPS 2_induced aggregation in WCPS doesn't preserve axis names |
This ticket could not be fixed with the current WCPS 1.5 as the coverage for (condense min ….) is only 1D and it does not have the axes name (Lat, Long) to scale in scale(condense …, {Lat, Long}).
Even if this can be handled in WCPS, the output in Rasql will have error, as it cannot scale a sclar value in intervals.
rasql -q 'SELECT encode(SCALE(6, [25:30,0:20]), "csv" ) FROM eobstest AS c' rasql: rasdaman query tool v1.0, rasdaman v9.2.1-g86fa176 -- generated on 28.06.2016 15:57:29. opening database RASBASE at localhost:7001...ok Executing retrieval query...rasdaman error 416: Execution error 416 in line 1, column 15, near token SCALE: First operand of scale function must be of type MDD. aborting transaction...ok rasql done.
I will close as invalid until Dimitar has other idea.
comment:3 by , 8 years ago
Resolution: | invalid |
---|---|
Status: | closed → reopened |
This is the induced condenser, out of a 3D coverage it produces a 2D coverage. So the axes should be fixed. The rasql query you have given above is not a correct translation of the WCPS query I gave in the ticket description.
comment:5 by , 8 years ago
Owner: | changed from | to
---|---|
Status: | reopened → assigned |
comment:6 by , 8 years ago
Milestone: | 10.0 → 9.4 |
---|---|
Resolution: | → fixed |
Status: | assigned → closed |
thanks to Dimitar which show the wrong rasql, this problem was fixed in recent WCPS 1.5.
This ticket needs to be fixed in WCPS1.5. However, the current code of WCPS1.5 has a bug with
in CrsComputer/getPixelIndices [1]
this will only correct if coverage is an existing coverage, i.e with coverage variable name 'c'
then without this variable name, [1] will return NULL due to coverageInfo is NULL. This will need to discuss how to handle this later (as I think some WCPS syntaxes are not consistent).
For example, in this case, suppose http://rasdaman.org/ticket/1258 is accepted, then in {intervals} can use directly geo-referenced axis Long, Lat, instead of grid-axis Long:"CRS:1", Lat:"CRS:1".
here is the query in WCPS test example will return the same error as Dimitar's in WCPS 1.0
if I modify this query to query from another coverage like mean_summer_airtemp (2D geo-referenced) with different resolution with eobstest,
i.e: eobstest:Lat(0:20) → (60:70) in grid axis whilst mean_summer_airtemp:Lat(0:20) → (100:160) in grid axis.
then I will have the query
then in [2], there is ambiguous to know which Long axis belonged to eobstest or mean_summer_airtemp should be used to scale.