Uploaded image for project: 'Nuxeo Drive '
  1. Nuxeo Drive
  2. NXDRIVE-1531

Fix QThread exception on exit

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 4.0.4
    • Fix Version/s: 4.1.0
    • Component/s: Threading

      Description

      Issue

      2019-01-17 10:27:16 31262 139800695668864 WARNING  nxdrive.engine.engine Thread is not responding - terminate it
      Qt has caught an exception thrown from an event handler. Throwing 
      exceptions from an event handler is not supported in Qt.
      You must not let any exception whatsoever propagate through Qt code.
      If that is not possible, in Qt 5 you must at least reimplement
      QCoreApplication::notify() and catch all exceptions there.
      

      This is generating a lot of events in Sentry.

      Cause

      When the function called by a signal raises any exception. Qt does not allow that.

      Fix

      Catch exception in QApplication.notify() and (try to) gracefully join QThreads.

        Attachments

          Activity

            People

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

              Dates

              • Created:
                Updated:
                Resolved:

                Time Tracking

                Estimated:
                Original Estimate - Not Specified
                Not Specified
                Remaining:
                Remaining Estimate - 0 minutes
                0m
                Logged:
                Time Spent - 1 hour, 30 minutes
                1h 30m