Task "Import from JEX" failed with error: QuotaExceededError

Operating system

Linux

Joplin version

3.7.0

Desktop version info

Joplin Mobile 3.7.0 (prod, web)

What issue do you have?

Attempting to import a 331.4 MB JEX file results in this error message:

Task "Import from JEX" failed with error: QuotaExceededError: Failed to execute 'write' on 'FileSystemSyncAccessHandle': No space available for this operation (Calling copy)

I'm attempting to import this using the web app version of Joplin & Joplin Cloud.

The specific Linux version I'm running is Google ChromeOS, Version 150.0.7871.185 (Official Build) (64-bit).

I turned on the AI features in Google Chrome dev tools and asked it to explain the error. Here's what it produced.

Understanding the problem

The error QuotaExceededError: Failed to execute 'write' on 'FileSystemSyncAccessHandle': No space available occurs because the application has exhausted the storage quota allocated by the browser for the Origin Private File System (OPFS).

When your code attempts to append logs via e.fsDriver().appendFile, the underlying FileSystemSyncAccessHandle.write() call fails because the browser refuses to allocate more disk space to your web origin. This is common in environments with strict storage limits or when log files grow indefinitely.

How to verify

  • Check Storage Usage: Open Chrome DevTools, go to the Application tab, select Storage in the left sidebar, and click Clear site data to see the "Usage" vs. "Quota" graph.
  • Inspect Files: Use the OPFS Explorer extension to check the size of the log file at i.path.
  • Manual Trigger: Try to manually write a large Blob to the file system in the console to see if it triggers the same error immediately.

Summary

  • Cause: The browser's storage limit for your site has been reached.
  • Trigger: An attempt to write/append to a file using the File System Access API.
  • Fix: Clear the existing log file, delete unnecessary data, or implement a log rotation mechanism to stay within the storage quota.

Followitg the Check Storage Usage instructions revealed the storage quota of ~315 MB was completely filled. Fortunately the same page has a "Simulate custom storage quota" option that allowed me to adjust it to a higher value. The JEX file successfully imported when the quota was expanded to a size to accomodate ~528 MB.

Unfortunately whenever I load Joplin it doesn't remember this larger quota, so I am unable to use many features... :confused:

While ChromeOS can run the Android app, version of Joplin, the typing experience is much worse because the Andoid app emulation on ChromeOS doesn't handle the integrated keyborad well and expects lots of touch interactions to do any real text editing.

Would you mind creating an issue about this on GitHub as this is a bug that would need to be tracked

Hi Laurent! Here is the issue on GitHub: Task "Import from JEX" failed with error: QuotaExceededError · Issue #16089 · laurent22/joplin · GitHub