Skip to content
  1. Jul 14, 2016
  2. Jul 13, 2016
  3. Jun 16, 2016
  4. Jun 13, 2016
  5. Apr 19, 2016
    • gmantele's avatar
      [TAP] Finish fixing the transaction management bug. · 5ac8f1fb
      gmantele authored
      See the commit bd621842,
      for the first part of the fix (which actually did not really
      fixed the problem: connections "idle in transaction" were
      still in the database ; the connection being inside an opened transaction,
      it generates lock issues in the database in addition of probably taking
      some memory resources).
      5ac8f1fb
  6. Apr 12, 2016
    • gmantele's avatar
      [TAP] New fix for the transaction management. · bd621842
      gmantele authored
      The transaction and Statement were closed too early before.
        - Fetching the row was not possible once the first bunch of fetched
      rows was over.
        - The problem of "statement is aborted" preventing the re-use of
      a same DB connection was apparently still there, but occurred less often.
      
        Now, any transaction potentially started in a DB connection is always
      closed after one of the public functions of JDBCConnection is called ;
      except executeQuery(ADQLQuery) whose the call MUST be wrapped inside a
      try...catch block in which DBConnection.cancel(true) MUST be called
      in case of error (in order to effectively end any started transaction).
      bd621842
  7. Feb 08, 2016
  8. Jan 29, 2016
  9. Jan 13, 2016
  10. Dec 04, 2015
  11. Nov 19, 2015
    • gmantele's avatar
      [TAP] New feature: Examples endpoint. · f4f05986
      gmantele authored
      Can be enabled just by providing a file URI in the TAP configuration file using
      the property "examples". It is also possible to add manually a TAP resource
      whose the returned name must be "examples" like the new TAP resource is doing:
      tap.resource.Examples. This latter take a file URI as the TAP configuration
      file does. The referenced file must respect the DALI 1.0 or TAP Notes 1.0
      syntax. No check of the file is performed by the library ; it is up to the
      author of the referenced file (a XHTML/RDFa file) to write a correct "examples"
      endpoint content. Check out the examples provided on the GitHub repository in
      the directory examples/tap/examples_endpoint.
      f4f05986
  12. 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
  13. Oct 22, 2015
  14. Oct 16, 2015
  15. Sep 10, 2015
  16. Sep 01, 2015
    • gmantele's avatar
      [ADQL,TAP] Fix bug (reported by G. Landais) in the understanding of UNKNOWN · 271e03cc
      gmantele authored
      types. The notion of "unknown type" is different in function of the target
      object:
        - a DBType and a FunctionDef have an unknown type if their function
          isUnknown() returns true. In such case, the other functions such as
      	isNumeric/String/Geometry() will return false.
        - an ADQLOperand (e.g. ADQLColumn) does NOT have a isUnknown() function.
          But if the type of the operand is unknown, its functions isNumeric(),
      	isString() and isGeometry() must ALL return true. Otherwise, just one of
      	these functions can return true.
      271e03cc
  17. Jul 20, 2015
  18. Jul 08, 2015
  19. Jun 18, 2015
  20. Jun 16, 2015
  21. Jun 08, 2015
  22. Jun 03, 2015
  23. Jun 02, 2015
  24. Apr 22, 2015
  25. Apr 13, 2015
  26. Apr 09, 2015
  27. Apr 08, 2015
  28. Apr 02, 2015