Uploaded image for project: 'Nuxeo Platform'
  1. Nuxeo Platform
  2. NXP-16764

Always return an error on transaction timeout

    XMLWordPrintable

    Details

      Description

      When using an HTTP API (WebEngine, WebDAV, others) for a transactional Nuxeo call (the usual case), a transaction timeout (or other exception at commit/rollback time) could be suppressed if the call returns a non-empty response, because we don't explicitly detect the exception and leave it to the servlet container to catch the exception and send a http status 500, however the servlet container cannot do this if we already set the status and wrote some content (response.isCommitted() returns true).

      The solution is to properly catch such exceptions when we try to commit, and if they occur to set the http status 500 immediately.

        Attachments

          Activity

            People

            • Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: