Skip to main content

The documentation here is for an unreleased version of Recyclarr.

Visit the documentation site for the Current Version instead.

Errors & Warnings

This page documents warnings and errors you might see in your console output or logs. These are usually caused by configuration issues or something else within the user's control to fix.

Configuration​

Error: No instances are configured on the server

The Recyclarr server found no Sonarr or Radarr instances in its configuration. The server still starts without configuration files, but it refuses every sync. There are two ways to provide configuration data:

  1. Via the recyclarr.yml file.
  2. One or more YAML files in the configs directory.

To solve this error, use one of the above methods to provide your YAML configuration. A running server (for example, in Docker) loads it without a restart; see Configuration Changes. See the documentation about default YAML configuration for more information. There is also an example showing multiple configuration files and their structure.

Error: Incompatible value assigned/used at line 7: Invalid cast from 'System.String' to 'Recyclarr.TrashLib.Config.Services.QualityDefinitionConfig'

As of version 4.0.0, the syntax for quality_definitions changed. You must manually change to the new format. Refer to the v4.0 release notes for details.

Error: Cutoff must be an allowed quality or group

When syncing quality profiles, you may see this HTTP 400 error from Sonarr or Radarr:

Cutoff must be an allowed quality or group

This occurs when your quality profile uses a qualities list but doesn't specify until_quality. Recent versions of Sonarr (4.0+) and Radarr (5.26+) require this field, and it must reference a quality that exists in your qualities list.

Add until_quality to your quality profile configuration:

quality_profiles:
- name: My Profile
until_quality: Bluray-1080p
qualities:
- name: Bluray-1080p
- name: WEB 1080p

See the until_quality reference for more details.

Error: Cannot lock ... Another Recyclarr server may be using it.

Each Recyclarr server needs its own data and state directories, and a second server that points at the same ones refuses to start. This usually happens when you run a CLI command without server.base_url in cli.yml while a persistent server is already running: the CLI starts its own temporary server, which collides with the running one. Set server.base_url to the running server's address, or stop that server.

To run two servers on purpose, give each one its own RECYCLARR_DATA_DIR and RECYCLARR_STATE_DIR.

Custom Formats​

Tip: Unexpected custom formats or changes appearing

If you notice custom formats in Sonarr/Radarr that aren't in your Recyclarr configuration, or settings changing unexpectedly, check if you're running multiple sync tools on the same service.

Tools like Notifiarr, Buildarr, or manual API scripts can conflict with Recyclarr. Pick one sync tool and disable the others. Running multiple tools that modify the same Sonarr/Radarr instance will cause unpredictable behavior.

Error: Custom Format name 'HDR10+' is used by multiple trash IDs

Two or more custom formats in your configuration have different trash IDs but the same name (ignoring case). Sonarr and Radarr require each custom format name to be unique, so Recyclarr syncs none of the custom formats that share the name. Quality profiles for that instance are skipped too, because their scores depend on the custom formats. Recyclarr also does not delete these custom formats from the service when delete_old_custom_formats is enabled.

This usually happens when a local resource provider contains a copy of a guide custom format with a new trash ID. The error lists the trash IDs that share the name. To fix it, remove all but one of them from your configuration, or rename the custom format in your copy.

Warning: Custom format with trash ID e23edd2482476e595fb990b12e7c609c is duplicated in quality profile SD with conflicting scores: 1000 vs 500

This situation is caused by specifying a custom format more than once under the same Quality Profile. The conflicting scores are shown in the warning message to assist you with debugging the problem.

The below YAML is an example of what will cause this warning.

custom_formats:
- trash_ids:
- e7718d7a3ce595f289bfee26adc178f5 # Repack/Proper
- e23edd2482476e595fb990b12e7c609c # DV HDR10
assign_scores_to:
- name: SD
score: 1000
- trash_ids:
- e23edd2482476e595fb990b12e7c609c # DV HDR10
assign_scores_to:
- name: SD
score: 500

Above, you can see that "DV HDR10" (Trash ID e23edd2482476e595fb990b12e7c609c) is specified twice for the same quality profile named SD. The solution to this warning is to remove one of the two custom formats. In this case, to demonstrate the solution, I'll remove the copy that is assigned a score of 1000:

custom_formats:
- trash_ids:
- e7718d7a3ce595f289bfee26adc178f5 # Repack/Proper
assign_scores_to:
- name: SD
score: 1000
- trash_ids:
- e23edd2482476e595fb990b12e7c609c # DV HDR10
assign_scores_to:
- name: SD
score: 500

API & Connection​

Error: Response could not be deserialized to JSON

When communicating with Radarr or Sonarr, you may see an error like this:

Response could not be deserialized to JSON: GET http://hostname:7878/api/v3/customformat

This typically means your Base URL is missing from the URL you specified in the YAML. For example, if you access Radarr at http://hostname:7878/radarr, your configuration should include the /radarr path:

radarr:
my-instance:
base_url: http://hostname:7878/radarr
api_key: your_api_key

See issue #42 for more details.

Error: The service redirected the request (3xx)

Recyclarr does not follow redirects from Sonarr or Radarr. A redirect usually means base_url is missing a path (such as /radarr), or a reverse proxy in front of the service sends API calls to its login page. Fix base_url, or configure the proxy to pass /api requests through to the service. Sonarr and Radarr still require the API key on those requests.

Docker​

A series of troubleshooting steps for docker-specific issues.

Permission Issues​

The /config volume is very sensitive to user changes in the container. For example, if you first run the container using user: 1000:1000 and then run a second time using user: 1500:1500, you are likely to get errors. This is because files that Recyclarr creates are owned by the user & group you specify. Not all files can be used by multiple users.

If you change your user and/or group IDs, it is your responsibility to update the ownership of files in the /config volume so that they match the UID and GID you are specifying. This can be done through the chown command and may require root permissions on your host system.

Non-Docker​

The troubleshooting steps documented here are for the non-docker version of Recyclarr (running it directly on a host machine). The Docker page has troubleshooting steps as well.

Error: Failed to create CoreCLR, HRESULT: 0x8007000E

This means "Out of Memory". Ensure you have enough memory on your system. If you do, try setting the DOTNET_GCHeapHardLimit environment variable to 10000000 and try again.

Error: Attempted to read or write protected memory (macOS Apple Silicon)

On macOS with Apple Silicon (M1/M2/M3/M4), you may see intermittent crashes with this error:

System.AccessViolationException: Attempted to read or write protected memory.
This is often an indication that other memory is corrupt.

This is a known .NET runtime bug affecting ARM64 Macs, not a Recyclarr issue (#454). The crash is intermittent and timing-dependent.

Workarounds:

  • Retry the command - Users report approximately 70% success rate on v7.5+. Simply run the command again until it succeeds.
  • Use Docker - Docker runs on Linux and is unaffected by this macOS-specific bug.

The bug is tracked for fix in .NET 11.

Error: Failed to map file / A fatal error occurred while processing application bundle

On Mac or Linux OS, you may see the following error when you run recyclarr:

Failed to map file. open(/Users/foo/Downloads/recyclarr) failed with error 13
Failure processing application bundle.
Couldn't memory map the bundle file for reading.
A fatal error occurred while processing application bundle

This cryptic message is actually a permissions error, likely because your executable does not have read permissions set. Simply run chmod u+rx recyclarr to add read + execute permissions on the recyclarr executable.