Skip to content
Snippets Groups Projects
  1. Sep 27, 2017
    • gmantele's avatar
      [TAP,UWS] Add a protocol version number for UWS and TAP: · 70dc3a14
      gmantele authored
        - uws.service.UWS.VERSION  (static final)
        - tap.resource.TAP.VERSION (static final)
      
      Dealing with several protocol versions in the same time is quite difficult and
      may significantly alter the libraries API in an unstable way. That's why, for
      the TAP and UWS libraries, only one version is implemented (i.e. the last one).
      To use a older version of the protocol, one must use an older version of the
      corresponding library.
      
      About the versioning of the ADQL standard, there is no need to set any version
      number somewhere because a different ADQL version implies a different grammar.
      It means that a different parser is required for each ADQL version. For the
      moment, there is only one version, so no need to change anything to the ADQL
      library about ADQL version. Later, ADQLParser should become an interface and
      a factory will have to be used in order to get the parser corresponding to the
      desired ADQL version.
      70dc3a14
  2. Sep 15, 2017
  3. Sep 11, 2017
  4. Jun 19, 2017
  5. Mar 09, 2017
    • gmantele's avatar
      [UWS,TAP] Synchronize access to ISO8601Format. · fa206848
      gmantele authored
      This class is using static attributes of type DecimalFormat.
      Unfortunately this type of objects can NOT be accessed by multiple
      threads simultaneously: it is not thread-safe. Parsing errors,
      mostly during TAP uploads, have been experienced for this reason.
      
      To solve quickly this issue, the main static public functions of
      ISO8601Format have been synchronized.
      fa206848
  6. Sep 14, 2016
    • gmantele's avatar
      [UWS,TAP] Follow up to the following commit about executionDuration: · 2463d5fe
      gmantele authored
      47d36bfb
      In the UWS and TAP configuration files the executionDuration has to be
      provided into milliseconds. But the UWS parameter MUST be in seconds.
      So now, UWS is still keeping this duration in seconds (in its
      ExecutionDurationController) but TAP keeps it in milliseconds (in order
      to avoid unexpected silent modification of the API) and converts it into
      seconds for its controller (i.e. TAPExecutionDurationController), for the
      default home page and for the Capabilities page.
      2463d5fe
  7. Jul 01, 2016
  8. Jun 13, 2016
  9. Feb 10, 2016
  10. Jan 13, 2016
  11. Jan 12, 2016
  12. Dec 11, 2015
  13. Nov 13, 2015
    • gmantele's avatar
      [TAP & UWS] 2 MAJOR BUGS FIXED (these bugs were affecting performances). · d9041712
      gmantele authored
      1) [TAP & UWS] ]MAJOR BUG FIX: The abortion of an SQL query is now correctly
      implemented. Before this fix, 2 mistakes prevented this clean abortion:
        a/ The thread was not cancelled because the SQL query execution was
      blocking the thread. Then the thread could not treat the interruption though
      it was flagged as interrupted.
        b/ The function UWSJob.isStopped() considered the job as stopped because
      the interrupted flag was set, even though the thread was still processing
      (and the database too). Because of that it returned true and the job phase
      was ABORTED though the thread was still running.
        NOW:
        a/ TAPJob calls the function Statement.cancel() (if supported) in order
      to cancel the SQL query execution properly inside the database.
        b/ The function UWSJob.isStopped() does not test any more the interrupted flag
      and returns true only if the thread is really stopped.
        IN BRIEF: It is now sure that a job in the phase ABORTED is really stopped
      (that's to say: thread stopped AND DB query execution stopped).
      
      2) [TAP] BUG FIX: When the writing of a result is abnormaly interrupted for any
      reason, the file which was being written is deleted.
      d9041712
  14. Jul 31, 2015
    • gmantele's avatar
      [UWS,TAP] Fix parameters parsing in UWS (or Async in TAP): · 1234f1a1
      gmantele authored
      when the content-type was not exactly 'application/x-www-form-urlencoded'
      for normal POST requests, no parameter was read by the UWS/TAP library.
      This content-type test has now been modified from a strict equality to a
      startsWith test.
      (Note: This bug only concerned the form encoded requests,
      not the multipart ones)
      1234f1a1
  15. Jul 08, 2015
  16. Jun 08, 2015
  17. May 06, 2015
  18. Apr 22, 2015
  19. Apr 13, 2015
  20. Apr 08, 2015
  21. Apr 02, 2015
    • gmantele's avatar
    • gmantele's avatar
      [UWS,TAP] Errors and log management improvements. Particularly, now TAP and... · 998d11f5
      gmantele authored
      [UWS,TAP] Errors and log management improvements. Particularly, now TAP and UWS are able to manage correctly HTTP request abortions (i.e. when the user stop the request before the response has been fully sent, or when there is a connection problem or a time-out). Such abortions are considered by UWS and TAP merely as job abortion/cancel. No error is logged any more. In addition of this correction, log entries concerning the execution of a TAP sync/async job have been modified so that having more coherents messages. And stack traces of exception that occurred when executing a job (sync or async, tap or uws) are displayed just once: at the JOB END log entry, and not by the HTTP RESPONSE_SENT entry. And finally, output flush and interruption detection are made more often when writing a query result (the flush is particularly important when combining with fetch-size > 0 in synchronous mode....the sync response is then a streaming output).
      998d11f5
  22. Feb 27, 2015
  23. Feb 19, 2015
  24. Feb 18, 2015
  25. Feb 17, 2015
  26. Jan 23, 2015
  27. Dec 17, 2014
  28. Dec 15, 2014
    • gmantele's avatar
      [UWS,TAP] Add clean release of all resources (e.g. Threads, Timers, DB... · eaf27c6c
      gmantele authored
      [UWS,TAP] Add clean release of all resources (e.g. Threads, Timers, DB connections) allocated in a UWS and a TAP service. Small changes of the UWS API...but only if ExecutionManager, DestructionManager and UWS have been implemented by library users rather than using the default implementation.
      eaf27c6c
  29. Dec 12, 2014
  30. Dec 09, 2014
    • gmantele's avatar
      [TAP,UWS] Addition to the last commit: the TAP resource /sync did not yet use... · 9b8fe1c9
      gmantele authored
      [TAP,UWS] Addition to the last commit: the TAP resource /sync did not yet use the RequestParser to get its parameters, and so it did not worked as before the last commit.
      9b8fe1c9
    • gmantele's avatar
      [UWS,TAP] 3 MAJOR DEPENDENT FIX: improve significantly the parameters... · 96b3b851
      gmantele authored
      [UWS,TAP] 3 MAJOR DEPENDENT FIX: improve significantly the parameters extraction from HTTP request in UWS (1) AND move the file-upload ability into the UWS library (2) AND the modification of parameters in UWS is now conform with the standard (3). (1) Only application/x-form-urlencoded content-type was supported. However a UWS must accept a request body containing only an XML document as a single byReference parameter. It is now done when the content-type is not known. (2) Besides multipart/form-data is now fully supported in UWS and so is still possible in TAP. (3) In the UWS standard, parameters can not be added after creation: they can just be modified. This rule is now respected in the UWS library.
      96b3b851
  31. Nov 13, 2014
    • gmantele's avatar
      [UWS,TAP] Review the standard parameters checking. Particularly, because... · 2a1e5786
      gmantele authored
      [UWS,TAP] Review the standard parameters checking. Particularly, because before, the default value was never used while no value was specified by the user.
      2a1e5786
    • gmantele's avatar
      [UWS] Cancel last commit. The UWSException was thrown intentionnaly: if an... · 425d77e9
      gmantele authored
      [UWS] Cancel last commit. The UWSException was thrown intentionnaly: if an error occurs while just creating the thread, this error should not impact the job ; it is an internal server error, not an error due to the job execution or of a wrong parameter. This error MUST be thrown AND the job MUST stay PENDING (so that it can be restarted later when the server bug will be fixed). Job parameters checks MUST be done either in the job execution (JobThread.jobWork()) or at the job creation (using an InputParamController).
      425d77e9
  32. Nov 12, 2014
  33. Oct 28, 2014
    • gmantele's avatar
      [ADQL,TAP] Add STC-S and UDFs support in the ADQL parser. Now, it is possible... · 496e769c
      gmantele authored
      [ADQL,TAP] Add STC-S and UDFs support in the ADQL parser. Now, it is possible to provide a list of allowed UDFs, regions and coordinate systems. The ServiceConnection of TAP is now able to provide these lists and to propagate them to the ADQLExecutor. UDFs and allowed regions are now listed automatically in the /capabilities resource of TAP. The type 'geometry' is now fully supported in ADQL. That's why the new function 'isGeometry()' has been added to all ADQLOperand extensions. Now the DBChecker is also able to check roughly types of columns and UDFs (unknown when parsing syntactically a query). The syntax of STC-S regions (expressed in the REGION function) are now checked by DBChecker. However, for the moment, geometries are not serialized in STC-S in the output....but it should be possible in some way in the next commit(s).
      496e769c
Loading