Skip to content

Upload of files >5GB to WebDAV fails #601

@byyue

Description

@byyue

Please agree to the following

Summary

When I try to upload a >5GB file to a WebDAV vault, it fails.

System Setup

- Android: x
- Cryptomator: 1.11.1

Cloud Type

WebDAV

Steps to Reproduce

  1. Create a file with around 5120MB
  2. Upload this file to any WebDAV based vault

Expected Behavior

File gets uploaded

Actual Behavior

Error is thrown during upload

Reproducibility

Always

Relevant Log Output

V	20250914134053.070	Progress	org.cryptomator.domain.usecases.cloud.UploadState@e9507eb: 27%
V	20250914134053.070	Progress	UPLOAD 27%
V	20250914134053.070	Progress	org.cryptomator.domain.usecases.cloud.UploadState@8a02948: 27%
V	20250914134053.070	Progress	UPLOAD 27%
V	20250914134053.070	Progress	UPLOAD 27%
V	20250914134053.070	Progress	UPLOAD 27%
V	20250914134053.070	Progress	org.cryptomator.domain.usecases.cloud.UploadState@e75b3e1: 27%
V	20250914134053.070	Progress	UPLOAD 27%
V	20250914134053.070	Progress	UPLOAD 27%
V	20250914134053.070	Progress	UPLOAD 27%
V	20250914134053.071	Progress	UPLOAD 27%
V	20250914134053.071	Progress	UPLOAD 27%
D	20250914134053.071	OkHttp	<-- HTTP FAILED: java.net.ProtocolException: expected 1573245728 bytes but received 1573249024
V	20250914134053.071	Progress	UPLOAD 27%
V	20250914134053.071	Progress	UPLOAD 27%
V	20250914134053.071	Progress	UPLOAD 27%
V	20250914134053.071	Progress	UPLOAD 27%
V	20250914134053.071	Progress	UPLOAD 27%
V	20250914134053.071	Progress	UPLOAD 27%
V	20250914134053.071	Progress	UPLOAD 27%
V	20250914134053.071	Progress	UPLOAD 27%
V	20250914134053.072	Progress	UPLOAD 27%
V	20250914134053.072	Progress	UPLOAD 27%
V	20250914134053.072	Progress	UPLOAD 27%
V	20250914134053.072	Progress	UPLOAD 27%
V	20250914134053.072	Progress	UPLOAD 27%
V	20250914134053.072	Progress	UPLOAD 27%
V	20250914134053.072	Progress	UPLOAD 27%
V	20250914134053.072	Progress	UPLOAD 27%
V	20250914134053.072	Progress	UPLOAD 27%
V	20250914134053.072	Progress	UPLOAD 27%
V	20250914134053.073	Progress	UPLOAD 27%
V	20250914134053.073	Progress	UPLOAD 27%
V	20250914134053.073	Progress	UPLOAD 27%
V	20250914134053.073	Progress	UPLOAD 27%
V	20250914134053.073	Progress	UPLOAD 27%
V	20250914134053.073	Progress	UPLOAD 27%
V	20250914134053.073	Progress	UPLOAD 27%
V	20250914134053.073	Progress	UPLOAD 27%
V	20250914134053.073	Progress	UPLOAD 27%
V	20250914134053.073	Progress	UPLOAD 27%
D	20250914134053.769	UploadFilesUseCase	failed 466ee831
D	20250914134053.838	ExceptionHandler	Unexpected error
org.cryptomator.domain.exception.FatalBackendException: java.net.ProtocolException: expected 1573245728 bytes but received 1573249024
	at org.cryptomator.data.cloud.webdav.network.WebDavClient.writeFile(WebDavClient.kt:172)
	at org.cryptomator.data.cloud.webdav.network.ConnectionHandlerHandlerImpl.writeFile(ConnectionHandlerHandlerImpl.kt:32)
	at org.cryptomator.data.cloud.webdav.WebDavImpl.write(WebDavImpl.kt:137)
	at org.cryptomator.data.cloud.webdav.WebDavCloudContentRepository$Intercepted.write(WebDavCloudContentRepository.kt:165)
	at org.cryptomator.data.cloud.webdav.WebDavCloudContentRepository$Intercepted.write(WebDavCloudContentRepository.kt:95)
	at org.cryptomator.data.cloud.InterceptingCloudContentRepository.write(InterceptingCloudContentRepository.kt:155)
	at org.cryptomator.data.repository.DispatchingCloudContentRepository.write(DispatchingCloudContentRepository.kt:149)
	at org.cryptomator.data.cloud.crypto.CryptoImplDecorator.writeFromTmpFile(CryptoImplDecorator.kt:262)
	at org.cryptomator.data.cloud.crypto.CryptoImplDecorator.writeShortNameFile(CryptoImplDecorator.kt:454)
	at org.cryptomator.data.cloud.crypto.CryptoImplVaultFormat7.write(CryptoImplVaultFormat7.kt:460)
	at org.cryptomator.data.cloud.crypto.CryptoCloudContentRepository.write(CryptoCloudContentRepository.kt:90)
	at org.cryptomator.data.cloud.crypto.CryptoCloudContentRepository.write(CryptoCloudContentRepository.kt:21)
	at org.cryptomator.data.repository.DispatchingCloudContentRepository.write(DispatchingCloudContentRepository.kt:149)
	at org.cryptomator.domain.usecases.cloud.UploadFiles.writeCloudFile(UploadFiles.java:118)
	at org.cryptomator.domain.usecases.cloud.UploadFiles.upload(UploadFiles.java:94)
	at org.cryptomator.domain.usecases.cloud.UploadFiles.upload(UploadFiles.java:82)
	at org.cryptomator.domain.usecases.cloud.UploadFiles.upload(UploadFiles.java:74)
	at org.cryptomator.domain.usecases.cloud.UploadFiles.execute(UploadFiles.java:61)
	at org.cryptomator.domain.usecases.cloud.UploadFilesUseCase$Launcher$2.subscribe(UploadFilesUseCase.java:119)
	at io.reactivex.internal.operators.flowable.FlowableFromPublisher.subscribeActual(FlowableFromPublisher.java:29)
	at io.reactivex.Flowable.subscribe(Flowable.java:14935)
	at io.reactivex.Flowable.subscribe(Flowable.java:14882)
	at io.reactivex.internal.operators.flowable.FlowableSubscribeOn$SubscribeOnSubscriber.run(FlowableSubscribeOn.java:82)
	at io.reactivex.internal.schedulers.ExecutorScheduler$ExecutorWorker$BooleanRunnable.run(ExecutorScheduler.java:288)
	at io.reactivex.internal.schedulers.ExecutorScheduler$ExecutorWorker.run(ExecutorScheduler.java:253)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1251)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:668)
	at java.lang.Thread.run(Thread.java:1012)
Caused by: java.net.ProtocolException: expected 1573245728 bytes but received 1573249024
	at okhttp3.internal.connection.Exchange$RequestBodySink.write(Exchange.kt:219)
	at okio.RealBufferedSink.emitCompleteSegments(RealBufferedSink.kt:256)
	at okio.RealBufferedSink.writeAll(RealBufferedSink.kt:195)
	at org.cryptomator.data.cloud.webdav.network.InputStreamSourceBasedRequestBody.writeTo(InputStreamSourceBasedRequestBody.kt:36)
	at okhttp3.internal.http.CallServerInterceptor.intercept(CallServerInterceptor.kt:62)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
	at org.cryptomator.data.cloud.webdav.network.WebDavCompatibleHttpClient$Companion.provideCacheInterceptor$lambda$1(WebDavCompatibleHttpClient.kt:97)
	at org.cryptomator.data.cloud.webdav.network.WebDavCompatibleHttpClient$Companion.$r8$lambda$RtV6JPBnCF2TKZ70_Qx9pmrdZiw(Unknown Source:0)
	at org.cryptomator.data.cloud.webdav.network.WebDavCompatibleHttpClient$Companion$$ExternalSyntheticLambda1.intercept(D8$$SyntheticClass:0)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
	at okhttp3.internal.connection.ConnectInterceptor.intercept(ConnectInterceptor.kt:34)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
	at okhttp3.internal.cache.CacheInterceptor.intercept(CacheInterceptor.kt:95)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
	at okhttp3.internal.http.BridgeInterceptor.intercept(BridgeInterceptor.kt:83)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
	at okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.kt:76)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
	at org.cryptomator.data.cloud.webdav.network.WebDavCompatibleHttpClient$Companion.provideOfflineCacheInterceptor$lambda$0(WebDavCompatibleHttpClient.kt:91)
	at org.cryptomator.data.cloud.webdav.network.WebDavCompatibleHttpClient$Companion.$r8$lambda$Kn3lCzeV3qs4J26h1e3KW_aN1CY(Unknown Source:0)
	at org.cryptomator.data.cloud.webdav.network.WebDavCompatibleHttpClient$Companion$$ExternalSyntheticLambda0.intercept(D8$$SyntheticClass:0)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
	at org.cryptomator.data.cloud.webdav.network.WebDavCompatibleHttpClient$UserAgentInterceptor.intercept(WebDavCompatibleHttpClient.kt:153)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
	at com.burgstaller.okhttp.AuthenticationCacheInterceptor.intercept(AuthenticationCacheInterceptor.java:49)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
	at org.cryptomator.data.cloud.okhttplogging.HttpLoggingInterceptor.getResponseLoggingExceptions(HttpLoggingInterceptor.kt:51)
	at org.cryptomator.data.cloud.okhttplogging.HttpLoggingInterceptor.getAndLogResponse(HttpLoggingInterceptor.kt:42)
	at org.cryptomator.data.cloud.okhttplogging.HttpLoggingInterceptor.proceedWithLogging(HttpLoggingInterceptor.kt:28)
	at org.cryptomator.data.cloud.okhttplogging.HttpLoggingInterceptor.intercept(HttpLoggingInterceptor.kt:18)
	at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
	at okhttp3.internal.connection.RealCall.getResponseWithInterceptorChain$okhttp(RealCall.kt:201)
	at okhttp3.internal.connection.RealCall.execute(RealCall.kt:154)
	at org.cryptomator.data.cloud.webdav.network.WebDavRedirectHandler.executeFollowingRedirects(WebDavRedirectHandler.kt:21)
	at org.cryptomator.data.cloud.webdav.network.WebDavCompatibleHttpClient.execute(WebDavCompatibleHttpClient.kt:44)
	at org.cryptomator.data.cloud.webdav.network.WebDavCompatibleHttpClient.execute(WebDavCompatibleHttpClient.kt:39)
	at org.cryptomator.data.cloud.webdav.network.WebDavClient.writeFile(WebDavClient.kt:160)
	... 27 more

ErrorCode: 611A:FMA5

Anything else?

Perhaps this is still related to #531.

Metadata

Metadata

Assignees

No one assigned

    Labels

    type:bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions