mirror of
https://github.com/Radarr/Radarr.git
synced 2026-03-02 22:57:34 -05:00
Fallback to regular io for sqlite3 when mmap fails #8676
Labels
No labels
Area: API
Area: Database
Area: Db-migration
Area: Download Clients
Area: Extras
Area: Import Lists
Area: Indexer
Area: Metadata API
Area: Notifications
Area: Organizer
Area: Parser
Area: Scanning
Area: Tooling
Area: UI
Area: Unit Tests
On Hold: MetadataAPI Blocking
On Hold: MetadataAPI Blocking
Priority: High
Priority: Low
Priority: Medium
Status: Accepted
Status: Cannot Reproduce
Status: Confirmed
Status: Help Wanted
Status: In Progress
Status: Indexer - need invite
Status: Info Needed
Status: Investigating
Status: Logs Needed
Status: Maybe One Day
Status: Needs Triage
Status: On Hold
Status: Ready for Review
Status: Unlikely
Status: Waiting for OP
Status: Won't Fix
Type: Bug
Type: Documentation
Type: Duplicate
Type: Enhancement
Type: External Bug
Type: Feature Request
Type: Regression
Type: Support
Type: Support.
conflict
lidarr-pull
no-conflict
not-pulled
readarr-pull
readarr-pull
sonarr upstream
sonarr-pull
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/Radarr#8676
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @trapexit on GitHub (Aug 17, 2024).
Originally assigned to: @Qstick on GitHub.
Is there an existing issue for this?
Is your feature request related to a problem? Please describe
Author of mergerfs here. I noticed in the docs "If you are using mergerFS you need to remove direct_io as SQLite uses mmap which isn’t supported by direct_io as explained in the mergerFS docs here"
My question is... why does radarr require mmap mode in sqlite3? Would it not be better to catch the error and fall back to regular io mode (which is the default mode in sqlite3 afaiu.)
Describe the solution you'd like
Better error handling with sqlite3 usage with fallback to regular io mode when mmap fails.
Describe alternatives you've considered
Leave it as is and allow users to have broken setups.
Anything else?
Given the default mode of sqlite3 is regular read/write IO it means that requiring mmap is unnecessary and causes unnecessary complications for users.
@bakerboy448 commented on GitHub (Aug 17, 2024):
cc @markus101 for upstream