nextcloud / android

📱 Nextcloud Android app
https://play.google.com/store/apps/details?id=com.nextcloud.client
GNU General Public License v2.0
4.15k stars 1.75k forks source link

Crash when trying to upload many files #1695

Open muellert opened 6 years ago

muellert commented 6 years ago

Actual behaviour

I navigate to the target folder on the server, then press the upload buttons. Then, I select a folder to upload (my camera's images, actually). I choose "Select all", as I can't select the folder as a whole to begin with. Then I press "Upload". Then, the application crashes.

Expected behaviour

The application should upload all the selected files.

Steps to reproduce

  1. Have a folder with many files (in my case, ~5000?)
  2. Select them for upload
  3. Press "Upload"

Environment data

Android version:

5.0

Device model:

LG3

Stock or customized system:

Stock

Nextcloud app version:

Nextcloud dev v20170930 (but it happens with the non-dev version from Play as well)

Nextcloud server version:

12.0.3, fresh install

Logs

Web server error log

There are no errors in the webserver's error log.

Nextcloud log (data/nextcloud.log)

There seem to be no relevant entries in the server's log (a few entries about wrong file sizes and file formats, but that's it).

NOTE: Be super sure to remove sensitive data like passwords, note that everybody can look here! You can use the Issue Template application to prefill some of the required information: https://apps.nextcloud.com/apps/issuetemplate

xXSTrikeXx commented 6 years ago

Can you post the logoutput: https://github.com/nextcloud/android#getting-debug-info-via-logcat

muellert commented 6 years ago

Hi xXSTrikeXx! That will take a while. :(

tobiasKaminsky commented 6 years ago

I tried it with 5000 dummy images files (each 29kb). The app did not crashed, but also did not upload the files.

10-26 14:05:31.288 16483-16483/com.nextcloud.client D/UploadFilesActivity: onPause() ending
10-26 14:05:31.327 1615-2294/system_process E/JavaBinder: !!! FAILED BINDER TRANSACTION !!!  (parcel size = 636544)
10-26 14:05:31.328 1615-2294/system_process E/JavaBinder: *** Uncaught remote exception!  (Exceptions are not yet supported across processes.)
                                                          java.lang.RuntimeException: android.os.TransactionTooLargeException: data parcel size 636544 bytes
                                                              at android.os.Parcel.writeException(Parcel.java:1580)
                                                              at android.os.Binder.execTransact(Binder.java:578)
                                                           Caused by: android.os.TransactionTooLargeException: data parcel size 636544 bytes
                                                              at android.os.BinderProxy.transactNative(Native Method)
                                                              at android.os.BinderProxy.transact(Binder.java:615)
                                                              at android.app.ApplicationThreadProxy.scheduleServiceArgs(ApplicationThreadNative.java:1033)
                                                              at com.android.server.am.ActiveServices.sendServiceArgsLocked(ActiveServices.java:1899)
                                                              at com.android.server.am.ActiveServices.bringUpServiceLocked(ActiveServices.java:1641)
                                                              at com.android.server.am.ActiveServices.startServiceInnerLocked(ActiveServices.java:509)
                                                              at com.android.server.am.ActiveServices.startServiceLocked(ActiveServices.java:452)
                                                              at com.android.server.am.ActivityManagerService.startService(ActivityManagerService.java:16999)
                                                              at android.app.ActivityManagerNative.onTransact(ActivityManagerNative.java:1077)
                                                              at com.android.server.am.ActivityManagerService.onTransact(ActivityManagerService.java:2757)
                                                              at android.os.Binder.execTransact(Binder.java:565)
10-26 14:05:31.331 16483-16483/com.nextcloud.client V/BaseActivity: onRestart() start

It seems as if this big amount of data is just not allowed. Two possible solutions

rufftruffles commented 4 years ago

@tobiasKaminsky Same exact bug on the latest android version: 3.11.0 / Samsung Galaxy S10+

jayjay73 commented 3 months ago

Wow! I can't believe this bug is open since 2017. I just got hit by it.

And as it seems there is no easy way to get around 8000 images off my phone. At least not with Nextcloud since the Autoupload function seems to not work properly either.

Is someone working on these bugs? Reading this at all?