gmantele / vollt

Java libraries implementing the IVOA protocol: ADQL, UWS and TAP
http://cdsportal.u-strasbg.fr/taptuto/
29 stars 28 forks source link

[UWS] execution phase not honored? #112

Closed vforchi closed 5 years ago

vforchi commented 5 years ago

I tried the following command: $ curl -X POST -d "PHASE=ABORT" "http://host:port/tap/async/job_id"

and I got the following error:

<?xml version="1.0" encoding="utf-8"?>
<VOTABLE version="1.3" xmlns="http://www.ivoa.net/xml/VOTable/v1.3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.ivoa.net/xml/VOTable/v1.3 http://www.ivoa.net/xml/VOTable/v1.3">
<RESOURCE type="results">
<INFO name="QUERY_STATUS" value="ERROR">Forbidden parameters modification: the job is not any more in the PENDING phase!</INFO>
<INFO name="PROVIDER" value="ESO">TAP service for the science archive</INFO>
<INFO  name="REQ_ID" value="1555059459103"/>
<INFO  name="ERROR_TYPE" value="fatal"/>
<INFO  name="USER" value="guest (guest)"/>
<INFO  name="ACTION" value="Set Job Parameter"/>
</RESOURCE>
</VOTABLE>

The job was in EXECUTING, so according to this an ABORT should be allowed, but uws.job.JobPhase#isJobUpdatable only checks if the job is PENDING.

gmantele commented 5 years ago

The modification of the phase must be done at the following URL :

.../JOB-ID/phase

In your case you queried directly the job instead of its phase parameter. So, what you actually tried was to set/create an additional input parameter, but the phase of a job is a special UWS parameter. Modifying input parameters is allowed only when a job is in the PENDING phase....hence the error message you got.

Le 12 avril 2019 11:07:46 GMT+02:00, "Vincenzo Forchì" notifications@github.com a écrit :

I tried the following command: $ curl -X POST -d "PHASE=ABORT" "http://host:port/tap/async/job_id"

and I got the following error:

<?xml version="1.0" encoding="utf-8"?>
<VOTABLE version="1.3" xmlns="http://www.ivoa.net/xml/VOTable/v1.3"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.ivoa.net/xml/VOTable/v1.3
http://www.ivoa.net/xml/VOTable/v1.3">
<RESOURCE type="results">
<INFO name="QUERY_STATUS" value="ERROR">Forbidden parameters
modification: the job is not any more in the PENDING phase!</INFO>
<INFO name="PROVIDER" value="ESO">TAP service for the science
archive</INFO>
<INFO  name="REQ_ID" value="1555059459103"/>
<INFO  name="ERROR_TYPE" value="fatal"/>
<INFO  name="USER" value="guest (guest)"/>
<INFO  name="ACTION" value="Set Job Parameter"/>
</RESOURCE>
</VOTABLE>

The job was in EXECUTING, so according to this an ABORT should be allowed, but uws.job.JobPhase#isJobUpdatable only checks if the job is PENDING.

-- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/gmantele/taplib/issues/112

vforchi commented 5 years ago

Thanks for the info, I was too rash.