Opened 8 years ago

Closed 8 years ago

#1340 closed defect (fixed)

Source MDD domain is not within target update MDD domain.

Reported by: Bang Pham Huu Owned by: Bang Pham Huu
Priority: major Milestone: 9.3
Component: rasql Version: development
Keywords: Cc: Dimitar Misev, Alex Dumitru, Vlad Merticariu, Peter Baumann
Complexity: Medium

Description

This problem happens when using WCST_Import 2 or more coverage with different extends. It looks like there is a bug in Petascope to open the extend for containing both of these imported coverages, but it makes Rasql has error.
Run the recipe in the attachment file to reproduce the error

Running
Progress: [###############---------------] 1/2 50.00% 
Exception thrown when trying to insert slice: 
{Axis Subset: Lat(-39.66,-34.54) Long(147.2,152.32) 
Data Provider: file:///home/rasdaman/error_update/test2x.tif}
Retrying, you can safely ignore the warning for now. Tried 1 times.

Progress: [###############---------------] 1/2 50.00% 
Failed to insert slice. Attempted 1 times.
Service Call: http://localhost:8080/rasdaman/ows?service=WCS&version=2.0.1&request=UpdateCoverage&coverageId=test1111&subset1=Lat(-39.665,-34.535)&inputCoverageRef=file:///tmp/d31f15f7_2849_4584_bd6f_918e39e99464.gml&subset2=Long(147.205,152.315)
Error Code: RasdamanError
Error Text: <?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<ows:ExceptionReport version="2.0.0"
    xsd:schemaLocation="http://www.opengis.net/ows/2.0 http://schemas.opengis.net/ows/2.0/owsExceptionReport.xsd"
    xmlns:ows="http://www.opengis.net/ows/2.0" xmlns:xsd="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink">
    <ows:Exception exceptionCode="RasdamanError">
        <ows:ExceptionText>rasdaman error 967: Update error 967 in line 1, column 1, near token UPDATE: Source MDD domain is not within target update MDD domain.
</ows:ExceptionText>
    </ows:Exception>

</ows:ExceptionReport>


Here is what happened in Rasql from Petascope log,is anything wrong?

Executing query CREATE COLLECTION test1113 GreySet

INSERT INTO test1113 VALUES <[0:0,0:0] 0c> TILING ALIGNED [0:500, 0:500]

/home/rasdaman/install/bin/rasql --user rasadmin --passwd rasadmin -q '
UPDATE test1113 SET test1113[0:885,0:710] 
ASSIGN shift(decode($1), [0,0]) WHERE oid(test1113) = 166913' 
--file '/home/rasdaman/error_update/test2.tif'

/home/rasdaman/install/bin/rasql --user rasadmin --passwd rasadmin -q '
UPDATE test1113 SET test1113[704:806,512:612] 
ASSIGN shift(decode($1), [704,512]) 
WHERE oid(test1113) = 166913'
 --file '/home/rasdaman/error_update/test2x.tif'

 PetascopeInterface@516: Error stack trace:
RasdamanError: rasdaman error 967: 
Update error 967 in line 1, column 1, near token UPDATE: 
Source MDD domain is not within target update MDD domain.

Attachments (1)

error_update.zip (572.6 KB ) - added by Bang Pham Huu 8 years ago.

Download all attachments as: .zip

Change History (8)

by Bang Pham Huu, 8 years ago

Attachment: error_update.zip added

comment:1 by Bang Pham Huu, 8 years ago

Resolution: wontfix
Status: newclosed

actually, my error_recipe here is not correct because they have different resolutions (1 is 0.05x0.05 and 1 is 0.01x0.01) then it will have the wrong calculation.

it is the same problem with Mario in this thread https://groups.google.com/forum/#!topic/rasdaman-users/OFuT_hkk_Iw when his sample coverages are different resolution (pixel size).

File 1:

Size is '''10098, 6134'''
Coordinate System is:
GEOGCS["WGS 84",
    DATUM["WGS_1984",
        SPHEROID["WGS 84",6378137,298.257223563,
            AUTHORITY["EPSG","7030"]],
        AUTHORITY["EPSG","6326"]],
    PRIMEM["Greenwich",0],
    UNIT["degree",0.0174532925199433],
    AUTHORITY["EPSG","4326"]]
Origin = (16.163371686385794,54.237604720050214)
Pixel Size = ('''0.000375671981114,-0.000375671981114''')

File 2:

Size is '''9830, 6193'''
Coordinate System is:
GEOGCS["WGS 84",
    DATUM["WGS_1984",
        SPHEROID["WGS 84",6378137,298.257223563,
            AUTHORITY["EPSG","7030"]],
        AUTHORITY["EPSG","6326"]],
    PRIMEM["Greenwich",0],
    UNIT["degree",0.0174532925199433],
    AUTHORITY["EPSG","4326"]]
Origin = (15.752266195061656,52.775737176349708)
Pixel Size = ('''0.000354628735358,-0.000354628735358''')

So the requirement for extend coverage http://www.rasdaman.org/wiki/PartialUpdates is all the coverages must have same resolution (pixel size).

comment:2 by Vlad Merticariu, 8 years ago

Great work Bang! Please let Mario know as well. A solution for him could be to either get data with the same resolution, or use separate coverages for the scenes.

comment:3 by Dimitar Misev, 8 years ago

Can we detect that the resolution is different and throw a more appropriate error?

Version 0, edited 8 years ago by Dimitar Misev (next)

in reply to:  3 comment:4 by Bang Pham Huu, 8 years ago

Resolution: wontfix
Status: closedreopened

Replying to dmisev:

Can we detect that the resolution is different and throw a more appropriate error?

I think when Update Coverage in WCST we can do it by comparing with the update GML.

comment:5 by Dimitar Misev, 8 years ago

Owner: set to Bang Pham Huu
Status: reopenedassigned

Give it a try, would be great if that error can be properly captured.

comment:6 by Vlad Merticariu, 8 years ago

This should be done in UpdateCoverageValidator, right now we check that the coverages have the same crses, range types, axes and domains (in case of complete replacement). A similar method that checks that the offset vectors are the same could be added.

comment:7 by Bang Pham Huu, 8 years ago

Resolution: fixed
Status: assignedclosed

close as patch was accepted.

Note: See TracTickets for help on using tickets.