If i try to upload a file bigger than 2 GB the process stops with the following error:
Android-Version 1.10
The vault is mounted with WebDAV on a Hetzner Storagebox.
W 20231202084502.194 Message Ein Fehler ist aufgetreten
D 20231202084502.216 AssertUnlockedUseCase started 2949ccd4
D 20231202084502.217 AssertUnlockedUseCase finished 2949ccd4
D 20231202084533.714 AssertUnlockedUseCase started 2949ccd5
D 20231202084533.714 AssertUnlockedUseCase finished 2949ccd5
D 20231202084534.168 ActivityLifecycle finish org.cryptomator.presentation.ui.activity.BrowseFilesActivity@45ad89
V 20231202084534.178 FragmentLifecycle onPause BrowseFilesFragment{11867bb} (77d89917-e5e8-49b4-b7db-36b3e4797e21 id=0x7f0a0120)
D 20231202084534.179 ActivityLifecycle onPause org.cryptomator.presentation.ui.activity.BrowseFilesActivity@45ad89
D 20231202084534.179 PresenterLifecycle pause org.cryptomator.presentation.presenter.BrowseFilesPresenter@fe5552f
D 20231202084534.189 ActivityLifecycle onRestart org.cryptomator.presentation.ui.activity.VaultListActivity@a32e837
V 20231202084534.190 FragmentLifecycle onStart VaultListFragment{cfd89be} (3b317558-7b4b-41e0-9580-b460f7f2afd6 id=0x7f0a0120)
D 20231202084534.191 ActivityLifecycle onStart org.cryptomator.presentation.ui.activity.VaultListActivity@a32e837
I 20231202084534.193 ActivityLifecycle onResume org.cryptomator.presentation.ui.activity.VaultListActivity@a32e837
V 20231202084534.193 FragmentLifecycle onResume VaultListFragment{cfd89be} (3b317558-7b4b-41e0-9580-b460f7f2afd6 id=0x7f0a0120)
D 20231202084534.193 ActivityLifecycle onResumeFragments org.cryptomator.presentation.ui.activity.VaultListActivity@a32e837
D 20231202084534.193 PresenterLifecycle resume org.cryptomator.presentation.presenter.VaultListPresenter@d484c48
D 20231202084534.193 GetVaultListUseCase started 294633f7
D 20231202084534.194 GetVaultListUseCase finished 294633f7
D 20231202084534.244 GetVaultListUseCase started 294633f8
D 20231202084534.245 GetVaultListUseCase finished 294633f8
V 20231202084534.660 FragmentLifecycle onStop BrowseFilesFragment{11867bb} (77d89917-e5e8-49b4-b7db-36b3e4797e21 id=0x7f0a0120)
D 20231202084534.661 ActivityLifecycle onStop org.cryptomator.presentation.ui.activity.BrowseFilesActivity@45ad89
V 20231202084534.661 FragmentLifecycle onDestroyView BrowseFilesFragment{11867bb} (77d89917-e5e8-49b4-b7db-36b3e4797e21 id=0x7f0a0120)
V 20231202084534.662 FragmentLifecycle onDestroy BrowseFilesFragment{11867bb} (77d89917-e5e8-49b4-b7db-36b3e4797e21 id=0x7f0a0120)
D 20231202084534.662 ActivityLifecycle onDestroy org.cryptomator.presentation.ui.activity.BrowseFilesActivity@45ad89
D 20231202084534.662 PresenterLifecycle destroy org.cryptomator.presentation.presenter.BrowseFilesPresenter@fe5552f
V 20231202084536.699 FragmentLifecycle onPause VaultListFragment{cfd89be} (3b317558-7b4b-41e0-9580-b460f7f2afd6 id=0x7f0a0120)
D 20231202084536.699 ActivityLifecycle onPause org.cryptomator.presentation.ui.activity.VaultListActivity@a32e837
D 20231202084536.699 PresenterLifecycle pause org.cryptomator.presentation.presenter.VaultListPresenter@d484c48
D 20231202084536.707 ActivityLifecycle onCreate org.cryptomator.presentation.ui.activity.SettingsActivity@c12505e
D 20231202084536.716 ActivityLifecycle onStart org.cryptomator.presentation.ui.activity.SettingsActivity@c12505e
I 20231202084536.718 ActivityLifecycle onResume org.cryptomator.presentation.ui.activity.SettingsActivity@c12505e
D 20231202084536.718 ActivityLifecycle onResumeFragments org.cryptomator.presentation.ui.activity.SettingsActivity@c12505e
D 20231202084536.718 PresenterLifecycle resume org.cryptomator.presentation.presenter.SettingsPresenter@540299c
V 20231202084537.183 FragmentLifecycle onStop VaultListFragment{cfd89be} (3b317558-7b4b-41e0-9580-b460f7f2afd6 id=0x7f0a0120)
D 20231202084537.183 ActivityLifecycle onStop org.cryptomator.presentation.ui.activity.VaultListActivity@a32e837
D 20231202084537.183 ActivityLifecycle onSaveInstanceState org.cryptomator.presentation.ui.activity.VaultListActivity@a32e837
V 20231202084541.464 Progress UNKNOWN_MIMETYPE -1%
I can reproduce it with a 2.62GB file, but not with a 1GB file. There seems to be a problem with our WebDAV implementation and large files.
Content-Length: 0 is the problem, will have a look why the content length is set to 0 but trying to upload the first 8 byte chunk
D OkHttp --> PUT https://foo/bar.c9r http/1.1 (0-byte body)
D OkHttp Content-Type: application/octet-stream
D OkHttp Content-Length: 0
D OkHttp --> END PUT
V Progress org.cryptomator.domain.usecases.cloud.UploadState@ae8a5ec: 0%
D OkHttp <-- HTTP FAILED: java.net.ProtocolException: expected 0 bytes but received 8192
D UploadFilesUseCase failed 36e83133
D ExceptionHandler Unexpected error
org.cryptomator.domain.exception.FatalBackendException: java.net.ProtocolException: expected 0 bytes but received 8192
at org.cryptomator.data.cloud.webdav.network.WebDavClient.writeFile(WebDavClient.kt:170)
at org.cryptomator.data.cloud.webdav.network.ConnectionHandlerHandlerImpl.writeFile(ConnectionHandlerHandlerImpl.kt:31)
at org.cryptomator.data.cloud.webdav.WebDavImpl.write(WebDavImpl.kt:136)
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:453)
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:117)
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:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:644)
at java.lang.Thread.run(Thread.java:1012)
Caused by: java.net.ProtocolException: expected 0 bytes but received 8192
at okhttp3.internal.connection.Exchange$RequestBodySink.write(Exchange.kt:214)
at okio.RealBufferedSink.emitCompleteSegments(RealBufferedSink.kt:255)
at okio.RealBufferedSink.writeAll(RealBufferedSink.kt:194)
at org.cryptomator.data.cloud.webdav.network.InputStreamSourceBasedRequestBody.writeTo(InputStreamSourceBasedRequestBody.kt:26)
at okhttp3.internal.http.CallServerInterceptor.intercept(CallServerInterceptor.kt:59)
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$FEXxZ7SrPDCRzX39O94E81VyuVA(Unknown Source:0)
at org.cryptomator.data.cloud.webdav.network.WebDavCompatibleHttpClient$Companion$$ExternalSyntheticLambda1.intercept(Unknown Source: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$mK1oDRmeIibu1Q57fFrYEwIb5dg(Unknown Source:0)
at org.cryptomator.data.cloud.webdav.network.WebDavCompatibleHttpClient$Companion$$ExternalSyntheticLambda0.intercept(Unknown Source: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:158)
... 27 more
ErrorCode: 611A:JB59