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

Fix "database or disk is full" SQLite error

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: NoFixVersionApplicable
    • Fix Version/s: 5.2.1
    • Component/s: Framework
    • Release Notes Summary:
      Database Management
    • Release Notes Description:
      Hide

      Our Sentry usage showed lots of errors about "database or disk is full". After deep investigations, we hope the situation will now be better: temporary databases are now handled in memory (RAM) instead of a temporary folder. The later was the source of all reported problems were it may be limited in disk space and blocking our database actions while there are still enough disk space at the current location of those databases.

      Show
      Our Sentry usage showed lots of errors about "database or disk is full". After deep investigations, we hope the situation will now be better: temporary databases are now handled in memory (RAM) instead of a temporary folder. The later was the source of all reported problems were it may be limited in disk space and blocking our database actions while there are still enough disk space at the current location of those databases.
    • Epic Link:
    • Sprint:
      nxDrive 11.2.20
    • Story Points:
      1

      Description

      Situation

      Sentry Issue: NUXEO-DRIVE-37V

      OperationalError: database or disk is full
        File "nxdrive/engine/watcher/remote_watcher.py", line 646, in _handle_changes
        File "nxdrive/engine/activity.py", line 262, in func_wrapper
        File "nxdrive/engine/watcher/remote_watcher.py", line 745, in _update_remote_states
        File "nxdrive/engine/watcher/remote_watcher.py", line 715, in _get_changes
        File "nxdrive/engine/dao/sqlite.py", line 410, in store_int
        File "nxdrive/engine/dao/sqlite.py", line 391, in update_config
        File "nxdrive/engine/dao/sqlite.py", line 162, in execute
        File "nxdrive/engine/dao/sqlite.py", line 155, in execute
      
      Unexpected error
      

      Analysis

      Looking around, I found those links 1 and 2. It happens when the temporary folder containg temporary databases is full.

      Solution

      Move the temporary databases into memory using the temp_store PRAGMA.

        Attachments

          Issue Links

            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 - 30 minutes
                  30m