Opened 4 years ago

Closed 4 years ago

#337 closed defect (worksforme)

Petascope - Malformed status line with ExceptionReport xml file

Reported by: damiano Owned by: abeccati
Priority: major Milestone: 8.4.1
Component: petascope Version: 8.4
Keywords: Cc: mantovani@…
Complexity: Medium

Description

with a wcs2.0 getCoverage request, when something went wrong, petascope return a malformed http response
Firefox and chrome are anyway able to open the xml file, python and wget not!

Example: subset out of coverage bounds

  • with firefox i obtain the attached xml file.
  • with wget i obtain the following error:

--2013-03-20 17:57:40-- http://earthserverclimate-dar:8080/petascope/wcs2?service=WCS&Request=GetCoverage&version=2.0.0&subsetX=x(40.961914,40.961914)&subsetY=y(55.172852,55.172852)&subsetT=t,CRS:1(149020,150559)&CoverageId=MOD_LST_4326_001
Resolving earthserverclimate-dar (earthserverclimate-dar)... 192.168.0.151
Connecting to earthserverclimate-dar (earthserverclimate-dar)|192.168.0.151|:8080... connected.
HTTP request sent, awaiting response... -1
2013-03-20 17:57:40 ERROR -1: Malformed status line.
Retrying.

  • with python the error is:

Traceback (most recent call last):

File "/opt/mea/LIB-Library/WCS_utility.py", line 492, in execute

r = conn.getresponse()

File "/usr/lib/python2.7/httplib.py", line 1034, in getresponse

response.begin()

File "/usr/lib/python2.7/httplib.py", line 407, in begin

version, status, reason = self._read_status()

File "/usr/lib/python2.7/httplib.py", line 395, in _read_status

raise BadStatusLine?(line)

BadStatusLine?: HTTP/1.1 0

How to reproduce the issue:
request subset out of coverage bounds with wget utility

wget http://host:8080/petascope/petascope/wcs2?service=WCS&Request=GetCoverage&version=2.0.0&subsetX...............

The issue has been introduced recently, old petascope works

Tested with rasdaman-petascope-8.4.0-rc.2.2.el6.noarch

Ciao Damiano

Attachments (2)

wcs_uot_of_bounds.xml (1.4 KB) - added by damiano 4 years ago.
out.xml (1.4 KB) - added by ungarj 4 years ago.

Download all attachments as: .zip

Change History (15)

Changed 4 years ago by damiano

comment:1 Changed 4 years ago by abeccati

Thanks for the report Damiano, the first step in fixing this would be to add a failing WCS kvp systemtest based on some test dataset that we have available (such as eobstest).

RasdamanTestSuites

Consider adding it while we get to this bug to ensure no regression would be reintroduced on that.

Last edited 4 years ago by pcampalani (previous) (diff)

comment:2 Changed 4 years ago by abeccati

  • Milestone set to 8.4.1

comment:3 Changed 4 years ago by abeccati

  • Owner changed from abeccati to damiano
  • Status changed from new to assigned

Looks like I cannot reproduce it with the current release_8.4 branch, lets check again after the release to confirm this:

$ wget "http://localhost:8080/petascope/?service=WCS&Request=GetCoverage&version=2.0.0&subsetX=x(-240,-230)&subsetY=y(55,57)&subsetT=t,CRS:1(149020,150559)&CoverageId=eobstest"
--2013-03-21 00:59:22-- http://localhost:8080/petascope/?service=WCS&Request=GetCoverage&version=2.0.0&subsetX=x(-240,-230)&subsetY=y(55,57)&subsetT=t,CRS:1(149020,150559)&CoverageId=eobstest
Resolving localhost (localhost)... 127.0.0.1
Connecting to localhost (localhost)|127.0.0.1|:8080... connected.
HTTP request sent, awaiting response... 200 OK
Length: 1432 (1.4K) [text/xml]

comment:4 Changed 4 years ago by abeccati

This actually points out an interesting aspect of our wcs test framework however: we need a way to test also queries that are ment to FAIL as currently checked without that making the test itself fail. Food for our dev list discussion I guess.

comment:5 Changed 4 years ago by barboni@…

For sure the issue affects RC2 rpms

The following rpm contains a petascope affected by the problem:
rasdaman-petascope-8.4.0-rc.2.2.el6.noarch.rpm 21-Mar-2013 09:12 19977284
rasdaman-petascope-8.4.0-rc.2.3.el6.noarch.rpm 21-Mar-2013 09:12 19977344

petascope in RC1 rpm works:
rasdaman-petascope-8.4.0-rc.1.el6.noarch.rpm

Alan, if tests in rasdaman systemtests pass, the issue could be introduced during the build rpm phase.
Mine is just a guess.

Damiano

comment:6 Changed 4 years ago by barboni@…

Tested now with rasdaman 8.4.0

The problem remains

Damiano

# rpm -qa | grep rasdaman
rasdaman-petascope-8.4.0-1.el6.noarch
rasdaman-8.4.0-1.el6.x86_64

comment:7 Changed 4 years ago by abeccati

  • Owner changed from damiano to ungarj

Since I'm unable to reproduce it, I'd ask Joachim to try and confirm this issue.
Damiano, is it also reproducible on the obstest or other test datasets?

comment:8 Changed 4 years ago by ungarj

  • Owner changed from ungarj to abeccati

Unable to reproduce it either:

test request returns an XML complaining that the request is out of bounds.

wget test:

wget "http://earthserver.eox.at/petascope?service=WCS&version=2.0.0&request=GetCoverage&CoverageID=FSC_Scandinavia&subsetX=x(50,60)&subsetY=y(60,70)&subsetT=t(2012-03-18)&format=image/tiff" -O out.xml
--2013-03-28 14:11:05--  http://earthserver.eox.at/petascope?service=WCS&version=2.0.0&request=GetCoverage&CoverageID=FSC_Scandinavia&subsetX=x(50,60)&subsetY=y(60,70)&subsetT=t(2012-03-18)&format=image/tiff
Resolving earthserver.eox.at (earthserver.eox.at)... 176.9.131.45
Connecting to earthserver.eox.at (earthserver.eox.at)|176.9.131.45|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 1442 (1.4K) [text/xml]
Saving to: `out.xml'

No errors with wget, output XML is attached. Not sure though whether my WCS request is correct though and I tested both 8.4.0-rc2 _and_ 8.4.0-1.

Damiano, could you please provide Alan some more details? Thanks.

Changed 4 years ago by ungarj

comment:9 Changed 4 years ago by barboni@…

Joachim, i tied to reproduce the issue using EOX server but i encountered some problems.

the coverage BBOX is:
<lowerCorner>-0.93136303 56.84922847 150190.0</lowerCorner>
<upperCorner>33.27863697 71.57922847 150238.0</upperCorner>

but the following query return an error
http://earthserver.eox.at/petascope?service=WCS&version=2.0.0&request=GetCoverage&CoverageID=FSC_Scandinavia&subsetX=x(10.728765,18.105113)&subsetY=y(57.015389,60.238671)

<ows:ExceptionText>
Error converting WCPS query to rasql query: Error translating XML WCPS query to rasql - crsTransform expression not implemented.
</ows:ExceptionText>

comment:10 Changed 4 years ago by abeccati

Nice one Damiano, looks like a subsetting missing one dimension is interpreted as a request asking for a crsTransform (that is: its trying to give you a 2D coverage, without slicing). That looks like a new ticket to be filed!

However, the query returns an error without manifesting the issue at hand with this ticket (the error response with wget has valid status code 200)

HTTP request sent, awaiting response... 200 OK
Length: 1491 (1.5K) [text/xml]

comment:11 Changed 4 years ago by barboni@…

The problem for me is confirmed also for rasdaman 8.4 but it seems i'm the only one with this issue

# rpm -qa | grep rasda
rasdaman-petascope-8.4.0-1.el6.noarch
rasdaman-8.4.0-1.el6.x86_64

The Malformed status line for me is a trivial issue but in addition i noticed that a CRS:1 subset out of coverage bounds on the temporal axis is not managed correctly

Petascope return the exception:
Error executing rasql query: Error evaluating rasdaman query: 'select csv(c[7:7,-46:-46,150110:150113]) from MOD_OPTDEPLOMIN_4326_1 AS c

The expected exception is something similar to
<ows:ExceptionText>Requested subset "t(150110,150113)" is out of coverage bounds "150120,1501190".</ows:ExceptionText>

The executed query was [1] and subsetT is specified as CRS:1:

The rasdaman output executing the query 'select csv(c[7:7,-46:-46,150110:150113]) from MOD_OPTDEPLOMIN_4326_1 AS c' is correct because query is out of SDOM:
rasql: rasdaman query tool v1.0, rasdaman v8.4 -- generated on 20.03.2013 13:12:07.
opening database RASBASE at localhost:7001...ok
Executing retrieval query...rasdaman error 356: Execution error 356 in line 1, column 12, near token c: Specified domain does not intersect with spatial domain of MDD.
aborting transaction...ok
rasql done.

Ciao

Damiano

[1]
http://earthserverclimate-dar:8080/petascope/wcs2?service=WCS&Request=GetCoverage&version=2.0.0&subsetX=x(7.134016,7.134016)&subsetY=y(45.316960,45.316960)&subsetT=t,CRS:1(150110,150114)&CoverageId=MOD_OPTDEPLOMIN_4326_1

comment:12 Changed 4 years ago by barboni@…

Alan,
if you have to release 8.4.1 for me there are no problems

This is not a blocking issue and can be postponed

Ciao

Damiano

comment:13 Changed 4 years ago by abeccati

  • Resolution set to worksforme
  • Status changed from assigned to closed

Thanks Damiano, I've opened a new ticket #358 for your further discovery in comment 11 to avoid mixing issues. I'll close this one as worksforme until we find a way to reproduce it. If you find a solution meantime please post it or sumbit a patch reopening this ticket.

Note: See TracTickets for help on using tickets.