MD5 inconsistencies with crypt remote and Jottacloud (whitelabel) – please help me debug

This is a long one, thanks for reading.

I am experiencing an issue where rclone copy randomly re-uploads hundreds of gigabytes of data that already exists on the remote. Even after a 100% completion, running the command again results in massive re-uploads. It feels like rclone "loses track" of existing files on the remote.

I suspect this might be related to: Jottacloud constantly breaking because of unfixable duplicate files

Any help on how to debug this further would be appreciated!

Setup

  • Source: NFS share -> rar2fs (or ratarmount) extraction layer -> Symlinks with renamed titles (-L flag used).
  • Remote: Telia Sky (Whitelabel Jottacloud) -> crypt (standard filename encryption, base32768 encoding).
  • Environment: Rclone v1.72.1, Ubuntu 25.10.

Inconsistent MD5 Reporting

I initially suspected my rar2fs mount was unstable. I saw shifting MD5s in the rclone logs:

Log 1: 2026/01/05 08:30:22 DEBUG : path/to/samefile.ext: md5 = cf8a224ca2d00b26b291c37eb9ca6a24 OK
Log 2: 2026/01/04 20:29:28 DEBUG : path/to/samefile.ext: md5 = ea47f50d8a71d881bb73f9389ee7c873 OK
Log 2: 2026/01/04 22:06:44 DEBUG : path/to/samefile.ext: md5 = 7974db816de096dbfae7efcaceebb7f6 OK
Log 2: 2026/01/04 23:51:29 DEBUG : path/to/samefile.ext: md5 = 0d9c7fd5a6fa03421dc502a4ce08a283 OK

Note: I tested both rar2fs and ratarmount and ran a script to hash the source files 15 times (5 passes x 3 reads). The source hashes remained 100% consistent on both the rar2fs and ratarmount mount. This suggests the MD5 discrepancy is happening at the crypt/jotta layer or during the upload stream.


Backend Consistency Errors

I am seeing errors that suggest the Jottacloud API is returning inconsistent results during different commands

2026/01/05 20:52:32 DEBUG : rclone: Version "v1.72.1" starting with parameters ["rclone" "purge" "jotta-crypt:path/to/dir with spaces" "--jottacloud-hard-delete" "--log-file" "crypt_delete.log" "--log-level" "debug"]
2026/01/05 20:52:32 DEBUG : Creating backend with remote "jotta-crypt:path/to/dir with spaces"
2026/01/05 20:52:32 DEBUG : Using config file from "/path/to/rclone.conf"
2026/01/05 20:52:33 DEBUG : Creating backend with remote "jotta:詀棆榢艧囬窛鏊惕浟/让蓨蟩欜侶䈽態梒㼿/碣鯱僚څ羌Ꞗ䕳蔇駅鼢錢荏龢噄份咇敞劋厑㿜䶅肎䡈斄䓳赟"
2026/01/05 20:52:33 DEBUG : jotta: detected overridden config - adding "{jlU5h}" suffix to name
2026/01/05 20:52:33 DEBUG : fs cache: renaming cache item "jotta:詀棆榢艧囬窛鏊惕浟/让蓨蟩欜侶䈽態梒㼿/碣鯱僚څ羌Ꞗ䕳蔇駅鼢錢荏龢噄份咇敞劋厑㿜䶅肎䡈斄䓳赟" to be canonical "jotta{jlU5h}:詀棆榢艧囬窛鏊惕浟/让蓨蟩欜侶䈽態梒㼿/碣鯱僚څ羌Ꞗ䕳蔇駅鼢錢荏龢噄份咇敞劋厑㿜䶅肎䡈斄䓳赟"
2026/01/05 20:52:33 DEBUG : fs cache: switching user supplied name "jotta:詀棆榢艧囬窛鏊惕浟/让蓨蟩欜侶䈽態梒㼿/碣鯱僚څ羌Ꞗ䕳蔇駅鼢錢荏龢噄份咇敞劋厑㿜䶅肎䡈斄䓳赟" for canonical name "jotta{jlU5h}:詀棆榢艧囬窛鏊惕浟/让蓨蟩欜侶䈽態梒㼿/碣鯱僚څ羌Ꞗ䕳蔇駅鼢錢荏龢噄份咇敞劋厑㿜䶅肎䡈斄䓳赟"
2026/01/05 20:52:33 ERROR : Attempt 1/3 failed with 1 errors and: directory not found
2026/01/05 20:52:33 ERROR : Attempt 2/3 failed with 1 errors and: directory not found
2026/01/05 20:52:33 ERROR : Attempt 3/3 failed with 1 errors and: directory not found
2026/01/05 20:52:33 DEBUG : 9 go routines active
2026/01/05 20:52:33 NOTICE: Failed to purge: directory not found

Trying to ls the directory also fails with directory not found:

2026/01/05 20:55:41 DEBUG : rclone: Version "v1.72.1" starting with parameters ["rclone" "ls" "jotta-crypt:path/to/dir with spaces" "--jottacloud-hard-delete" "--log-file" "crypt_mca_list.log" "--log-level" "debug"]
2026/01/05 20:55:41 DEBUG : Creating backend with remote "jotta-crypt:path/to/dir with spaces"
2026/01/05 20:52:32 DEBUG : Using config file from "/path/to/rclone.conf"
2026/01/05 20:55:41 DEBUG : Creating backend with remote "jotta:詀棆榢艧囬窛鏊惕浟/让蓨蟩欜侶䈽態梒㼿/碣鯱僚څ羌Ꞗ䕳蔇駅鼢錢荏龢噄份咇敞劋厑㿜䶅肎䡈斄䓳赟"
2026/01/05 20:55:41 DEBUG : jotta: detected overridden config - adding "{jlU5h}" suffix to name
2026/01/05 20:55:41 DEBUG : fs cache: renaming cache item "jotta:詀棆榢艧囬窛鏊惕浟/让蓨蟩欜侶䈽態梒㼿/碣鯱僚څ羌Ꞗ䕳蔇駅鼢錢荏龢噄份咇敞劋厑㿜䶅肎䡈斄䓳赟" to be canonical "jotta{jlU5h}:詀棆榢艧囬窛鏊惕浟/让蓨蟩欜侶䈽態梒㼿/碣鯱僚څ羌Ꞗ䕳蔇駅鼢錢荏龢噄份咇敞劋厑㿜䶅肎䡈斄䓳赟"
2026/01/05 20:55:41 DEBUG : fs cache: switching user supplied name "jotta:詀棆榢艧囬窛鏊惕浟/让蓨蟩欜侶䈽態梒㼿/碣鯱僚څ羌Ꞗ䕳蔇駅鼢錢荏龢噄份咇敞劋厑㿜䶅肎䡈斄䓳赟" for canonical name "jotta{jlU5h}:詀棆榢艧囬窛鏊惕浟/让蓨蟩欜侶䈽態梒㼿/碣鯱僚څ羌Ꞗ䕳蔇駅鼢錢荏龢噄份咇敞劋厑㿜䶅肎䡈斄䓳赟"
2026/01/05 20:55:41 DEBUG : 9 go routines active
2026/01/05 20:55:41 NOTICE: Failed to ls: directory not found

When listing a known subpath of the dir above:

2026/01/05 20:57:00 DEBUG : rclone: Version "v1.72.1" starting with parameters ["rclone" "ls" "jotta-crypt:path/to/dir with spaces/subdir with spaces" "--jottacloud-hard-delete" "--log-file" "crypt_mca_list_subdir.log" "--log-level" "debug"]
2026/01/05 20:57:00 DEBUG : Creating backend with remote "jotta-crypt:path/to/dir with spaces/subdir with spaces"
2026/01/05 20:52:32 DEBUG : Using config file from "/path/to/rclone.conf"
2026/01/05 20:57:00 DEBUG : Creating backend with remote "jotta:詀棆榢艧囬窛鏊惕浟/让蓨蟩欜侶䈽態梒㼿/碣鯱僚څ羌Ꞗ䕳蔇駅鼢錢荏龢噄份咇敞劋厑㿜䶅肎䡈斄䓳赟/帪彻ݻ壥緖痓猉㺔㮿"
2026/01/05 20:57:00 DEBUG : jotta: detected overridden config - adding "{jlU5h}" suffix to name
2026/01/05 20:57:00 DEBUG : fs cache: renaming cache item "jotta:詀棆榢艧囬窛鏊惕浟/让蓨蟩欜侶䈽態梒㼿/碣鯱僚څ羌Ꞗ䕳蔇駅鼢錢荏龢噄份咇敞劋厑㿜䶅肎䡈斄䓳赟/帪彻ݻ壥緖痓猉㺔㮿" to be canonical "jotta{jlU5h}:詀棆榢艧囬窛鏊惕浟/让蓨蟩欜侶䈽態梒㼿/碣鯱僚څ羌Ꞗ䕳蔇駅鼢錢荏龢噄份咇敞劋厑㿜䶅肎䡈斄䓳赟/帪彻ݻ壥緖痓猉㺔㮿"
2026/01/05 20:57:00 DEBUG : fs cache: switching user supplied name "jotta:詀棆榢艧囬窛鏊惕浟/让蓨蟩欜侶䈽態梒㼿/碣鯱僚څ羌Ꞗ䕳蔇駅鼢錢荏龢噄份咇敞劋厑㿜䶅肎䡈斄䓳赟/帪彻ݻ壥緖痓猉㺔㮿" for canonical name "jotta{jlU5h}:詀棆榢艧囬窛鏊惕浟/让蓨蟩欜侶䈽態梒㼿/碣鯱僚څ羌Ꞗ䕳蔇駅鼢錢荏龢噄份咇敞劋厑㿜䶅肎䡈斄䓳赟/帪彻ݻ>
2026/01/05 20:57:04 DEBUG : 9 go routines active
2026/01/05 20:57:04 NOTICE: Failed to ls: couldn't list files: invalid result from listStream: expected[jottacloud.stats{Folders:223, Files:548}] != actual[jottacloud.stats{Folders:163, Files:548}]

I get a strange behavior: While the --log-file reports the failed to ls error above, the console output actually lists the files (more than 50):

(…)
1767038527 filename with spaces1.ext
2392982738 filename with spaces2.ext
3047423406 filename with spaces3.ext
      667 .subdir/path/dir with spaces/file1.ext
       52 .subdir/path/dir with spaces/file2.ext
      678 .subdir/path/dir with spaces/file3.ext
(…)

rclone copy Log Excerpts

Here is the behavior during a copy run. It skips some files correctly, but then decides others are missing and re-uploads them.

2026/01/03 20:23:46 DEBUG : rclone: Version "v1.72.1" starting with parameters ["rclone" "copy" "-L" "/mnt/rar2fs/path/to/dir" "jotta-crypt:path/to/dir" "--log-file" "rclone.log" "--log-level" "debug"]
2026/01/03 20:23:46 DEBUG : Creating backend with remote "/mnt/rar2fs/path/to/dir"
2026/01/03 20:23:46 DEBUG : Using config file from "/path/to/rclone.conf"
2026/01/03 20:23:46 DEBUG : local: detected overridden config - adding "{12rtk}" suffix to name
2026/01/03 20:23:46 DEBUG : fs cache: renaming cache item "/mnt/rar2fs/path/to/dir" to be canonical "local{12rtk}:/mnt/rar2fs/path/to/dir"
2026/01/03 20:23:46 DEBUG : Creating backend with remote "jotta-crypt:path/to/dir"
2026/01/03 20:23:46 DEBUG : Creating backend with remote "jotta:詀棆榢艧囬窛鏊惕浟/詀棆榢囬窛鏊惕浟/让蓨蟩欜侶䈽態梒㼿"
2026/01/03 20:23:46 DEBUG : jotta: Loaded invalid token from config file - ignoring
2026/01/03 20:23:46 DEBUG : Saving config "token" in section "jotta" of the config file
2026/01/03 20:23:46 DEBUG : Keeping previous permissions for config file: -rw-rw-r--
2026/01/03 20:23:46 DEBUG : jotta: Saved new token in config file

(…)

2026/01/03 20:23:47 NOTICE: Dir name 1: Duplicate directory found in destination - ignoring
2026/01/03 20:23:47 NOTICE: Dir name 2: Duplicate directory found in destination - ignoring
2026/01/03 20:23:47 NOTICE: Dir name 3: Duplicate directory found in destination - ignoring

(…)

2026/01/03 20:23:56 DEBUG : dir with spaces/dir with spaces/dir with spaces/filename with spaces 1.ext: Size and modification time the same (differ by -272.135969ms, within tolerance 1s)
2026/01/03 20:23:56 DEBUG : dir with spaces/dir with spaces/dir with spaces/filename with spaces 1.ext: Unchanged skipping
2026/01/03 20:23:56 DEBUG : dir with spaces/dir with spaces/dir with spaces/filename with spaces 2.ext: Size and modification time the same (differ by -456.156098ms, within tolerance 1s)
2026/01/03 20:23:56 DEBUG : dir with spaces/dir with spaces/dir with spaces/filename with spaces 2.ext: Unchanged skipping

(…) then I see:

2026/01/03 20:24:05 DEBUG : dir with spaces/dir with spaces/dir with spaces/filename with spaces 3.ext: Need to transfer - File not found at Destination
2026/01/03 20:24:08 DEBUG : dir with spaces/dir with spaces/dir with spaces/filename with spaces 3.ext: md5 = a4b77249912c7d99bda6cb7ec167166b OK
2026/01/03 20:24:08 INFO  : dir with spaces/dir with spaces/dir with spaces/filename with spaces 3.ext: Copied (new)

(…) before finally:

2026/01/04 02:16:23 ERROR : Attempt 3/3 failed with 1 errors and: Post "https://<redacted>-up-e.jotta.cloud/files/v1/upload/<redacted long string>": net/http: HTTP/1.x transport connection broken: http: ContentLength=7004741211 with Body length 2153593048
2026/01/04 02:16:23 INFO  :
Transferred:        1.085 TiB / 1.085 TiB, 100%, 58.259 MiB/s, ETA 0s
Errors:                 1 (retrying may help)
Checks:             43032 / 43032, 100%, Listed 139596
Transferred:         1941 / 1941, 100%
Elapsed time:   5h52m36.3s

2026/01/04 02:16:23 DEBUG : 16 go routines active
2026/01/04 02:16:23 NOTICE: Failed to copy: Post "https://<redacted>-up-e.jotta.cloud/files/v1/upload/<redacted long string>": net/http: HTTP/1.x transport connection broken: http: ContentLength=7004741211 with Body length 2153593048

Note: Path length doesn't seem to correlate with the failure (shorter paths fail while longer ones succeed).


Versions, Command and Config

rclone --version

rclone v1.72.1
- os/version: ubuntu 25.10 (64 bit)
- os/kernel: 6.17.0-7-generic (x86_64)
- os/type: linux
- os/arch: amd64
- go/version: go1.25.5
- go/linking: static
- go/tags: none

Command:

rclone copy -L "/mnt/rar2fs/path/to/dir" "jotta-crypt:path/to/dir

Config

[jotta]
type = jottacloud
hard_delete = true
tokenURL = https://sky-auth.telia.no/auth/realms/get/protocol/openid-connect/token
token = XXX
mountpoint =
configVersion = 1
device =
client_id = XXX
client_secret =

[jotta-crypt]
type = crypt
remote = jotta:
filename_encryption = standard
directory_name_encryption = true
filename_encoding = base32768
password = XXX
password2 = XXX

Anyone? No one with a great idea? :slight_smile:

No great idea.. :worried: Best chance would be to find a (simple) reproducible case, then I could debug it..

It feels a bit random and hard to pinpoint (ie. set up a dataset), but I could privately share complete debug logs if that would help? Or any other trace logs or what it is called.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.