apps-android-commons icon indicating copy to clipboard operation
apps-android-commons copied to clipboard

[Bug]: Uploads added in limited connection mode did not start when entering normal mode

Open addshore opened this issue 3 years ago • 3 comments

Summary

I added 10 images today in the limited connection mode. These images didn't immediately upload as expected, but appeared in the list. The upload bar was animating though, rather than displaying the text "queued" anywhere.

When setting to normal connection mode nothing happened, no images started uploading.

Instead I had to hit pause on each of the uploads, and then hit the play button again, where it would then either upload or show as queued.

Steps to reproduce

Set limited connection mode Add images Set normal connection mode

Expected behaviour

Images added in limited connection mode would start uploading

Actual behaviour

No images started uploading

Device name

Motorola G9 plus

Android version

Android 11

Commons app version

4.0.3~23c474b06

Device logs

No response

Screen-shots

No response

Would you like to work on the issue?

No response

addshore avatar Aug 23 '22 14:08 addshore

I can confirm that with Commons app 4.0.3~cf35307d9 (latest f-droid) on Android 10 (EMUI 12, Huawei P30 Pro). Here is a video example:

https://github.com/commons-app/apps-android-commons/assets/156656/3361bc1b-7ea1-4f7d-bc75-9734ef590d64

and a log (click to expand...)
2023-06-08 19:43:38,026     [DEBUG] [file-logging-thread-1] [CategoriesModel] : Previous year: 2022
2023-06-08 19:43:38,026     [DEBUG] [file-logging-thread-1] [CategoriesModel] : Previous year: 2022
2023-06-08 19:43:38,027     [DEBUG] [file-logging-thread-1] [CategoriesModel] : Previous year: 2022
2023-06-08 19:43:38,056     [DEBUG] [file-logging-thread-1] [CustomOkHttpNetworkFetcher] : Skipping loading of image as limited connection mode is enabled
2023-06-08 19:43:38,057     [DEBUG] [file-logging-thread-1] [CustomOkHttpNetworkFetcher] : Skipping loading of image as limited connection mode is enabled
2023-06-08 19:43:38,058     [DEBUG] [file-logging-thread-1] [CustomOkHttpNetworkFetcher] : Skipping loading of image as limited connection mode is enabled
2023-06-08 19:43:38,060     [DEBUG] [file-logging-thread-1] [CustomOkHttpNetworkFetcher] : Skipping loading of image as limited connection mode is enabled
2023-06-08 19:43:38,061     [DEBUG] [file-logging-thread-1] [CustomOkHttpNetworkFetcher] : Skipping loading of image as limited connection mode is enabled
2023-06-08 19:43:40,308     [DEBUG] [file-logging-thread-1] [CategoriesModel] : Previous year: 2022
2023-06-08 19:43:40,346     [DEBUG] [file-logging-thread-1] [CustomOkHttpNetworkFetcher] : Skipping loading of image as limited connection mode is enabled
2023-06-08 19:43:40,346     [DEBUG] [file-logging-thread-1] [CustomOkHttpNetworkFetcher] : Skipping loading of image as limited connection mode is enabled
2023-06-08 19:43:40,346     [DEBUG] [file-logging-thread-1] [CustomOkHttpNetworkFetcher] : Skipping loading of image as limited connection mode is enabled
2023-06-08 19:43:43,564     [INFO ] [file-logging-thread-1] [FileUtils] : File SHA1: 9db768ed8033856d9a336be4e3f535d90a67d37c
2023-06-08 19:43:43,565     [DEBUG] [file-logging-thread-1] [UploadModel] : Created timestamp while building contribution is 1680867606459, Fri Apr 07 13:40:06 GMT+02:00 2023
2023-06-08 19:43:43,566     [DEBUG] [file-logging-thread-1] [UploadController] : UploadController/doInBackground, contribution.getLocalUri():/data/user/0/fr.free.nrw.commons/cache/CommonsContributions/60c9c6de-2143-4f1d-aefa-50b9f3592bc4.jpg
2023-06-08 19:43:43,630     [ERROR] [file-logging-thread-1] [UploadWorker$doWork] : Queued Contributions: 1
2023-06-08 19:44:41,067     [DEBUG] [file-logging-thread-1] [MediaDetailFragment] : Media license is: CC BY 4.0
2023-06-08 19:44:41,070     [DEBUG] [file-logging-thread-1] [MediaDetailFragment] : Media license is: CC BY 4.0
2023-06-08 19:44:41,309     [ERROR] [file-logging-thread-1] [OkHttpConnectionFactory$UnsuccessfulResponseInterceptor] : java.io.IOException: {"error":{"code":"badinteger","info":"Invalid value \"M9ed4c8fc-fe9b-4948-969f-f0f49a0290d9\" for integer parameter \"pageids\".","docref":"See https://commons.wikimedia.org/w/api.php for API usage. Subscribe to the mediawiki-api-announce mailing list at <https://lists.wikimedia.org/postorius/lists/mediawiki-api-announce.lists.wikimedia.org/> for notice of API deprecations and breaking changes."},"servedby":"mw1356"}
        at fr.free.nrw.commons.OkHttpConnectionFactory$UnsuccessfulResponseInterceptor.intercept(OkHttpConnectionFactory.java:90)
        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
        at okhttp3.logging.HttpLoggingInterceptor.intercept(HttpLoggingInterceptor.kt:221)
        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 retrofit2.OkHttpCall.execute(OkHttpCall.java:190)
        at retrofit2.adapter.rxjava2.CallExecuteObservable.subscribeActual(CallExecuteObservable.java:42)
        at io.reactivex.Observable.subscribe(Observable.java:12267)
        at retrofit2.adapter.rxjava2.BodyObservable.subscribeActual(BodyObservable.java:34)
        at io.reactivex.Observable.subscribe(Observable.java:12267)
        at io.reactivex.internal.operators.observable.ObservableSingleSingle.subscribeActual(ObservableSingleSingle.java:35)
        at io.reactivex.Single.subscribe(Single.java:3603)
        at io.reactivex.internal.operators.single.SingleMap.subscribeActual(SingleMap.java:34)
        at io.reactivex.Single.subscribe(Single.java:3603)
        at io.reactivex.internal.operators.single.SingleFlatMap.subscribeActual(SingleFlatMap.java:36)
        at io.reactivex.Single.subscribe(Single.java:3603)
        at io.reactivex.internal.operators.single.SingleMap.subscribeActual(SingleMap.java:34)
        at io.reactivex.Single.subscribe(Single.java:3603)
        at io.reactivex.internal.operators.single.SingleResumeNext.subscribeActual(SingleResumeNext.java:39)
        at io.reactivex.Single.subscribe(Single.java:3603)
        at io.reactivex.internal.operators.single.SingleAmb.subscribeActual(SingleAmb.java:84)
        at io.reactivex.Single.subscribe(Single.java:3603)
        at io.reactivex.internal.operators.single.SingleSubscribeOn$SubscribeOnObserver.run(SingleSubscribeOn.java:89)
        at io.reactivex.Scheduler$DisposeTask.run(Scheduler.java:578)
        at io.reactivex.internal.schedulers.ScheduledRunnable.run(ScheduledRunnable.java:66)
        at io.reactivex.internal.schedulers.ScheduledRunnable.call(ScheduledRunnable.java:57)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:301)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
        at java.lang.Thread.run(Thread.java:929)

2023-06-08 19:44:41,334     [ERROR] [file-logging-thread-1] [OkHttpConnectionFactory$UnsuccessfulResponseInterceptor] : java.io.IOException: {"error":{"code":"badinteger","info":"Invalid value \"Me16fe1ab-e2ff-4e81-9ed6-f26112849873\" for integer parameter \"pageids\".","docref":"See https://commons.wikimedia.org/w/api.php for API usage. Subscribe to the mediawiki-api-announce mailing list at <https://lists.wikimedia.org/postorius/lists/mediawiki-api-announce.lists.wikimedia.org/> for notice of API deprecations and breaking changes."},"servedby":"mw1388"}
        at fr.free.nrw.commons.OkHttpConnectionFactory$UnsuccessfulResponseInterceptor.intercept(OkHttpConnectionFactory.java:90)
        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
        at okhttp3.logging.HttpLoggingInterceptor.intercept(HttpLoggingInterceptor.kt:221)
        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 retrofit2.OkHttpCall.execute(OkHttpCall.java:190)
        at retrofit2.adapter.rxjava2.CallExecuteObservable.subscribeActual(CallExecuteObservable.java:42)
        at io.reactivex.Observable.subscribe(Observable.java:12267)
        at retrofit2.adapter.rxjava2.BodyObservable.subscribeActual(BodyObservable.java:34)
        at io.reactivex.Observable.subscribe(Observable.java:12267)
        at io.reactivex.internal.operators.observable.ObservableSingleSingle.subscribeActual(ObservableSingleSingle.java:35)
        at io.reactivex.Single.subscribe(Single.java:3603)
        at io.reactivex.internal.operators.single.SingleMap.subscribeActual(SingleMap.java:34)
        at io.reactivex.Single.subscribe(Single.java:3603)
        at io.reactivex.internal.operators.single.SingleFlatMap.subscribeActual(SingleFlatMap.java:36)
        at io.reactivex.Single.subscribe(Single.java:3603)
        at io.reactivex.internal.operators.single.SingleMap.subscribeActual(SingleMap.java:34)
        at io.reactivex.Single.subscribe(Single.java:3603)
        at io.reactivex.internal.operators.single.SingleResumeNext.subscribeActual(SingleResumeNext.java:39)
        at io.reactivex.Single.subscribe(Single.java:3603)
        at io.reactivex.internal.operators.single.SingleAmb.subscribeActual(SingleAmb.java:84)
        at io.reactivex.Single.subscribe(Single.java:3603)
        at io.reactivex.internal.operators.single.SingleSubscribeOn$SubscribeOnObserver.run(SingleSubscribeOn.java:89)
        at io.reactivex.Scheduler$DisposeTask.run(Scheduler.java:578)
        at io.reactivex.internal.schedulers.ScheduledRunnable.run(ScheduledRunnable.java:66)
        at io.reactivex.internal.schedulers.ScheduledRunnable.call(ScheduledRunnable.java:57)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:301)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
        at java.lang.Thread.run(Thread.java:929)
2023-06-08 19:44:41,343     [ERROR] [file-logging-thread-1] [OkHttpConnectionFactory$UnsuccessfulResponseInterceptor] : java.io.IOException: {"error":{"code":"missingtitle","info":"The page you specified doesn't exist.","*":"See https://commons.wikimedia.org/w/api.php for API usage. Subscribe to the mediawiki-api-announce mailing list at <https://lists.wikimedia.org/postorius/lists/mediawiki-api-announce.lists.wikimedia.org/> for notice of API deprecations and breaking changes."},"servedby":"mw1427"}
        at fr.free.nrw.commons.OkHttpConnectionFactory$UnsuccessfulResponseInterceptor.intercept(OkHttpConnectionFactory.java:90)
        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
        at okhttp3.logging.HttpLoggingInterceptor.intercept(HttpLoggingInterceptor.kt:221)
        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 retrofit2.OkHttpCall.execute(OkHttpCall.java:190)
        at retrofit2.adapter.rxjava2.CallExecuteObservable.subscribeActual(CallExecuteObservable.java:42)
        at io.reactivex.Observable.subscribe(Observable.java:12267)
        at retrofit2.adapter.rxjava2.BodyObservable.subscribeActual(BodyObservable.java:34)
        at io.reactivex.Observable.subscribe(Observable.java:12267)
        at io.reactivex.internal.operators.observable.ObservableSingleSingle.subscribeActual(ObservableSingleSingle.java:35)
        at io.reactivex.Single.subscribe(Single.java:3603)
        at io.reactivex.internal.operators.single.SingleMap.subscribeActual(SingleMap.java:34)
        at io.reactivex.Single.subscribe(Single.java:3603)
        at io.reactivex.internal.operators.single.SingleMap.subscribeActual(SingleMap.java:34)
        at io.reactivex.Single.subscribe(Single.java:3603)
        at io.reactivex.internal.operators.single.SingleOnErrorReturn.subscribeActual(SingleOnErrorReturn.java:38)
        at io.reactivex.Single.subscribe(Single.java:3603)
        at io.reactivex.internal.operators.single.SingleSubscribeOn$SubscribeOnObserver.run(SingleSubscribeOn.java:89)
        at io.reactivex.Scheduler$DisposeTask.run(Scheduler.java:578)
        at io.reactivex.internal.schedulers.ScheduledRunnable.run(ScheduledRunnable.java:66)
        at io.reactivex.internal.schedulers.ScheduledRunnable.call(ScheduledRunnable.java:57)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:301)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
        at java.lang.Thread.run(Thread.java:929)

2023-06-08 19:44:41,343     [DEBUG] [file-logging-thread-1] [MediaDataExtractor] : Error occurred while fetching discussion
2023-06-08 19:44:41,344     [ERROR] [file-logging-thread-1] [OkHttpConnectionFactory$UnsuccessfulResponseInterceptor] : java.io.IOException: {"error":{"code":"missingtitle","info":"The page you specified doesn't exist.","*":"See https://commons.wikimedia.org/w/api.php for API usage. Subscribe to the mediawiki-api-announce mailing list at <https://lists.wikimedia.org/postorius/lists/mediawiki-api-announce.lists.wikimedia.org/> for notice of API deprecations and breaking changes."},"servedby":"mw1404"}
        at fr.free.nrw.commons.OkHttpConnectionFactory$UnsuccessfulResponseInterceptor.intercept(OkHttpConnectionFactory.java:90)
        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
        at okhttp3.logging.HttpLoggingInterceptor.intercept(HttpLoggingInterceptor.kt:221)
        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 retrofit2.OkHttpCall.execute(OkHttpCall.java:190)
        at retrofit2.adapter.rxjava2.CallExecuteObservable.subscribeActual(CallExecuteObservable.java:42)
        at io.reactivex.Observable.subscribe(Observable.java:12267)
        at retrofit2.adapter.rxjava2.BodyObservable.subscribeActual(BodyObservable.java:34)
        at io.reactivex.Observable.subscribe(Observable.java:12267)
        at io.reactivex.internal.operators.observable.ObservableSingleSingle.subscribeActual(ObservableSingleSingle.java:35)
        at io.reactivex.Single.subscribe(Single.java:3603)
        at io.reactivex.internal.operators.single.SingleMap.subscribeActual(SingleMap.java:34)
        at io.reactivex.Single.subscribe(Single.java:3603)
        at io.reactivex.internal.operators.single.SingleMap.subscribeActual(SingleMap.java:34)
        at io.reactivex.Single.subscribe(Single.java:3603)
        at io.reactivex.internal.operators.single.SingleOnErrorReturn.subscribeActual(SingleOnErrorReturn.java:38)
        at io.reactivex.Single.subscribe(Single.java:3603)
        at io.reactivex.internal.operators.single.SingleSubscribeOn$SubscribeOnObserver.run(SingleSubscribeOn.java:89)
        at io.reactivex.Scheduler$DisposeTask.run(Scheduler.java:578)
        at io.reactivex.internal.schedulers.ScheduledRunnable.run(ScheduledRunnable.java:66)
        at io.reactivex.internal.schedulers.ScheduledRunnable.call(ScheduledRunnable.java:57)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:301)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
        at java.lang.Thread.run(Thread.java:929)

2023-06-08 19:44:41,345     [DEBUG] [file-logging-thread-1] [MediaDataExtractor] : Error occurred while fetching discussion
2023-06-08 19:44:41,358     [ERROR] [file-logging-thread-1] [-$$Lambda$mvgeVM6S-0Wc8Z2hreSxmgnMF1Y] : java.lang.NullPointerException: The mapper function returned a null value.
        at io.reactivex.internal.functions.ObjectHelper.requireNonNull(ObjectHelper.java:39)
        at io.reactivex.internal.operators.single.SingleMap$MapSingleObserver.onSuccess(SingleMap.java:57)
        at io.reactivex.internal.operators.observable.ObservableSingleSingle$SingleElementObserver.onComplete(ObservableSingleSingle.java:109)
        at retrofit2.adapter.rxjava2.BodyObservable$BodyObserver.onComplete(BodyObservable.java:66)
        at retrofit2.adapter.rxjava2.CallExecuteObservable.subscribeActual(CallExecuteObservable.java:48)
        at io.reactivex.Observable.subscribe(Observable.java:12267)
        at retrofit2.adapter.rxjava2.BodyObservable.subscribeActual(BodyObservable.java:34)
        at io.reactivex.Observable.subscribe(Observable.java:12267)
        at io.reactivex.internal.operators.observable.ObservableSingleSingle.subscribeActual(ObservableSingleSingle.java:35)
        at io.reactivex.Single.subscribe(Single.java:3603)
        at io.reactivex.internal.operators.single.SingleMap.subscribeActual(SingleMap.java:34)
        at io.reactivex.Single.subscribe(Single.java:3603)
        at io.reactivex.internal.operators.single.SingleSubscribeOn$SubscribeOnObserver.run(SingleSubscribeOn.java:89)
        at io.reactivex.Scheduler$DisposeTask.run(Scheduler.java:578)
        at io.reactivex.internal.schedulers.ScheduledRunnable.run(ScheduledRunnable.java:66)
        at io.reactivex.internal.schedulers.ScheduledRunnable.call(ScheduledRunnable.java:57)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:301)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
        at java.lang.Thread.run(Thread.java:929)
        at io.reactivex.internal.functions.ObjectHelper.requireNonNull(ObjectHelper.java:39)
        at io.reactivex.internal.operators.single.SingleMap$MapSingleObserver.onSuccess(SingleMap.java:57)
        at io.reactivex.internal.operators.observable.ObservableSingleSingle$SingleElementObserver.onComplete(ObservableSingleSingle.java:109)
        at retrofit2.adapter.rxjava2.BodyObservable$BodyObserver.onComplete(BodyObservable.java:66)
        at retrofit2.adapter.rxjava2.CallExecuteObservable.subscribeActual(CallExecuteObservable.java:48)
        at io.reactivex.Observable.subscribe(Observable.java:12267)
        at retrofit2.adapter.rxjava2.BodyObservable.subscribeActual(BodyObservable.java:34)
        at io.reactivex.Observable.subscribe(Observable.java:12267)
        at io.reactivex.internal.operators.observable.ObservableSingleSingle.subscribeActual(ObservableSingleSingle.java:35)
        at io.reactivex.Single.subscribe(Single.java:3603)
        at io.reactivex.internal.operators.single.SingleMap.subscribeActual(SingleMap.java:34)
        at io.reactivex.Single.subscribe(Single.java:3603)
        at io.reactivex.internal.operators.single.SingleSubscribeOn$SubscribeOnObserver.run(SingleSubscribeOn.java:89)
        at io.reactivex.Scheduler$DisposeTask.run(Scheduler.java:578)
        at io.reactivex.internal.schedulers.ScheduledRunnable.run(ScheduledRunnable.java:66)
        at io.reactivex.internal.schedulers.ScheduledRunnable.call(ScheduledRunnable.java:57)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:301)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
        at java.lang.Thread.run(Thread.java:929)

2023-06-08 19:44:41,784     [ERROR] [file-logging-thread-1] [OkHttpConnectionFactory$UnsuccessfulResponseInterceptor] : java.io.IOException: {"error":{"code":"no-such-entity","info":"Could not find an entity with the ID \"M0\".","id":"M0","messages":[{"name":"wikibase-api-no-such-entity","parameters":["M0"],"html":{"*":"Could not find an entity with the ID \"M0\"."}}],"*":"See https://commons.wikimedia.org/w/api.php for API usage. Subscribe to the mediawiki-api-announce mailing list at <https://lists.wikimedia.org/postorius/lists/mediawiki-api-announce.lists.wikimedia.org/> for notice of API deprecations and breaking changes."},"servedby":"mw1444"}
        at fr.free.nrw.commons.OkHttpConnectionFactory$UnsuccessfulResponseInterceptor.intercept(OkHttpConnectionFactory.java:90)
        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
        at okhttp3.logging.HttpLoggingInterceptor.intercept(HttpLoggingInterceptor.kt:221)
        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 retrofit2.OkHttpCall.execute(OkHttpCall.java:190)
        at retrofit2.adapter.rxjava2.CallExecuteObservable.subscribeActual(CallExecuteObservable.java:42)
        at io.reactivex.Observable.subscribe(Observable.java:12267)
        at retrofit2.adapter.rxjava2.BodyObservable.subscribeActual(BodyObservable.java:34)
        at io.reactivex.Observable.subscribe(Observable.java:12267)
        at io.reactivex.internal.operators.observable.ObservableSingleSingle.subscribeActual(ObservableSingleSingle.java:35)
        at io.reactivex.Single.subscribe(Single.java:3603)
        at io.reactivex.internal.operators.single.SingleMap.subscribeActual(SingleMap.java:34)
        at io.reactivex.Single.subscribe(Single.java:3603)
        at io.reactivex.internal.operators.single.SingleFlatMap$SingleFlatMapCallback.onSuccess(SingleFlatMap.java:84)
        at io.reactivex.internal.operators.single.SingleMap$MapSingleObserver.onSuccess(SingleMap.java:64)
        at io.reactivex.internal.operators.observable.ObservableSingleSingle$SingleElementObserver.onComplete(ObservableSingleSingle.java:109)
        at retrofit2.adapter.rxjava2.BodyObservable$BodyObserver.onComplete(BodyObservable.java:66)
        at retrofit2.adapter.rxjava2.CallExecuteObservable.subscribeActual(CallExecuteObservable.java:48)
        at io.reactivex.Observable.subscribe(Observable.java:12267)
        at retrofit2.adapter.rxjava2.BodyObservable.subscribeActual(BodyObservable.java:34)
        at io.reactivex.Observable.subscribe(Observable.java:12267)
        at io.reactivex.internal.operators.observable.ObservableSingleSingle.subscribeActual(ObservableSingleSingle.java:35)
        at io.reactivex.Single.subscribe(Single.java:3603)
        at io.reactivex.internal.operators.single.SingleMap.subscribeActual(SingleMap.java:34)
        at io.reactivex.Single.subscribe(Single.java:3603)
        at io.reactivex.internal.operators.single.SingleFlatMap.subscribeActual(SingleFlatMap.java:36)
        at io.reactivex.Single.subscribe(Single.java:3603)
        at io.reactivex.internal.operators.single.SingleFlatMap.subscribeActual(SingleFlatMap.java:36)
        at io.reactivex.Single.subscribe(Single.java:3603)
        at io.reactivex.internal.operators.single.SingleMap.subscribeActual(SingleMap.java:34)
        at io.reactivex.Single.subscribe(Single.java:3603)
        at io.reactivex.internal.operators.single.SingleResumeNext.subscribeActual(SingleResumeNext.java:39)
        at io.reactivex.Single.subscribe(Single.java:3603)
        at io.reactivex.internal.operators.single.SingleAmb.subscribeActual(SingleAmb.java:84)
        at io.reactivex.Single.subscribe(Single.java:3603)
        at io.reactivex.internal.operators.single.SingleSubscribeOn$SubscribeOnObserver.run(SingleSubscribeOn.java:89)
        at io.reactivex.Scheduler$DisposeTask.run(Scheduler.java:578)
        at io.reactivex.internal.schedulers.ScheduledRunnable.run(ScheduledRunnable.java:66)
        at io.reactivex.internal.schedulers.ScheduledRunnable.call(ScheduledRunnable.java:57)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:301)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
        at java.lang.Thread.run(Thread.java:929)

2023-06-08 19:44:41,959     [ERROR] [file-logging-thread-1] [OkHttpConnectionFactory$UnsuccessfulResponseInterceptor] : java.io.IOException: {"error":{"code":"no-such-entity","info":"Could not find an entity with the ID \"M0\".","id":"M0","messages":[{"name":"wikibase-api-no-such-entity","parameters":["M0"],"html":{"*":"Could not find an entity with the ID \"M0\"."}}],"*":"See https://commons.wikimedia.org/w/api.php for API usage. Subscribe to the mediawiki-api-announce mailing list at <https://lists.wikimedia.org/postorius/lists/mediawiki-api-announce.lists.wikimedia.org/> for notice of API deprecations and breaking changes."},"servedby":"mw1484"}
        at fr.free.nrw.commons.OkHttpConnectionFactory$UnsuccessfulResponseInterceptor.intercept(OkHttpConnectionFactory.java:90)
        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
        at okhttp3.logging.HttpLoggingInterceptor.intercept(HttpLoggingInterceptor.kt:221)
        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 retrofit2.OkHttpCall.execute(OkHttpCall.java:190)
        at retrofit2.adapter.rxjava2.CallExecuteObservable.subscribeActual(CallExecuteObservable.java:42)
        at io.reactivex.Observable.subscribe(Observable.java:12267)
        at retrofit2.adapter.rxjava2.BodyObservable.subscribeActual(BodyObservable.java:34)
        at io.reactivex.Observable.subscribe(Observable.java:12267)
        at io.reactivex.internal.operators.observable.ObservableSingleSingle.subscribeActual(ObservableSingleSingle.java:35)
        at io.reactivex.Single.subscribe(Single.java:3603)
        at io.reactivex.internal.operators.single.SingleMap.subscribeActual(SingleMap.java:34)
        at io.reactivex.Single.subscribe(Single.java:3603)
        at io.reactivex.internal.operators.single.SingleFlatMap$SingleFlatMapCallback.onSuccess(SingleFlatMap.java:84)
        at io.reactivex.internal.operators.single.SingleMap$MapSingleObserver.onSuccess(SingleMap.java:64)
        at io.reactivex.internal.operators.observable.ObservableSingleSingle$SingleElementObserver.onComplete(ObservableSingleSingle.java:109)
        at retrofit2.adapter.rxjava2.BodyObservable$BodyObserver.onComplete(BodyObservable.java:66)
        at retrofit2.adapter.rxjava2.CallExecuteObservable.subscribeActual(CallExecuteObservable.java:48)
        at io.reactivex.Observable.subscribe(Observable.java:12267)
        at retrofit2.adapter.rxjava2.BodyObservable.subscribeActual(BodyObservable.java:34)
        at io.reactivex.Observable.subscribe(Observable.java:12267)
        at io.reactivex.internal.operators.observable.ObservableSingleSingle.subscribeActual(ObservableSingleSingle.java:35)
        at io.reactivex.Single.subscribe(Single.java:3603)
        at io.reactivex.internal.operators.single.SingleMap.subscribeActual(SingleMap.java:34)
        at io.reactivex.Single.subscribe(Single.java:3603)
        at io.reactivex.internal.operators.single.SingleFlatMap.subscribeActual(SingleFlatMap.java:36)
        at io.reactivex.Single.subscribe(Single.java:3603)
        at io.reactivex.internal.operators.single.SingleMap.subscribeActual(SingleMap.java:34)
        at io.reactivex.Single.subscribe(Single.java:3603)
        at io.reactivex.internal.operators.single.SingleResumeNext.subscribeActual(SingleResumeNext.java:39)
        at io.reactivex.Single.subscribe(Single.java:3603)
        at io.reactivex.internal.operators.single.SingleAmb.subscribeActual(SingleAmb.java:84)
        at io.reactivex.Single.subscribe(Single.java:3603)
        at io.reactivex.internal.operators.single.SingleSubscribeOn$SubscribeOnObserver.run(SingleSubscribeOn.java:89)
        at io.reactivex.Scheduler$DisposeTask.run(Scheduler.java:578)
        at io.reactivex.internal.schedulers.ScheduledRunnable.run(ScheduledRunnable.java:66)
        at io.reactivex.internal.schedulers.ScheduledRunnable.call(ScheduledRunnable.java:57)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:301)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
        at java.lang.Thread.run(Thread.java:929)

2023-06-08 19:44:45,220     [ERROR] [file-logging-thread-1] [UploadWorker$doWork] : Queued Contributions: 0
2023-06-08 19:45:41,076     [ERROR] [file-logging-thread-1] [UploadWorker$doWork] : Queued Contributions: 0
2023-06-08 19:45:57,055     [ERROR] [file-logging-thread-1] [UploadWorker$doWork] : Queued Contributions: 0
2023-06-08 19:45:58,935     [DEBUG] [file-logging-thread-1] [ContributionsFragment] : Restarting for Contribution(media=fr.free.nrw.commons.Media@b024cca, pageId=e16fe1ab-e2ff-4e81-9ed6-f26112849873, state=2, transferred=0, decimalCoords=45.28825378416666|16.824901580555554, dateCreatedSource=exif, wikidataPlace=null, chunkInfo=null, depictedItems=[DepictedItem(name=wooden house, description=house made mostly of wood, imageUrl=https://upload.wikimedia.org/wikipedia/commons/thumb/b/b4/Surovikino_2019.jpg/70px-Surovikino_2019.jpg, instanceOfs=[], commonsCategories=[CategoryItem: 'Wooden houses'], isSelected=false, id=Q279118)], mimeType=null, localUri=/data/user/0/fr.free.nrw.commons/cache/CommonsContributions/2b7182f2-a989-483d-8e51-23fc650ef407.jpg, dataLength=3287934, dateCreated=Fri Apr 07 19:06:15 GMT+02:00 2023, dateCreatedString=2023-04-07, dateModified=Thu Jun 08 19:45:58 GMT+02:00 2023, hasInvalidLocation=0, contentUri=content://media/external/images/media/104586, countryCode=null, imageSHA1=67ee7fcf550477b1ef2339564a1e5e181e1acb87)
2023-06-08 19:45:58,981     [ERROR] [file-logging-thread-1] [UploadWorker$doWork] : Queued Contributions: 1
2023-06-08 19:45:59,021     [DEBUG] [file-logging-thread-1] [UploadClient] : Chunk: Sending Chunk number: 1, offset: 0
2023-06-08 19:46:01,560     [DEBUG] [file-logging-thread-1] [UploadClient] : Chunk: Received Chunk number: 1, offset: 524288
2023-06-08 19:46:01,564     [DEBUG] [file-logging-thread-1] [UploadClient] : Chunk: Sending Chunk number: 2, offset: 524288
2023-06-08 19:46:03,354     [DEBUG] [file-logging-thread-1] [UploadClient] : Chunk: Received Chunk number: 2, offset: 1048576
2023-06-08 19:46:03,357     [DEBUG] [file-logging-thread-1] [UploadClient] : Chunk: Sending Chunk number: 3, offset: 1048576
2023-06-08 19:46:05,134     [DEBUG] [file-logging-thread-1] [UploadClient] : Chunk: Received Chunk number: 3, offset: 1572864
2023-06-08 19:46:05,135     [DEBUG] [file-logging-thread-1] [UploadClient] : Chunk: Sending Chunk number: 4, offset: 1572864
2023-06-08 19:46:07,007     [DEBUG] [file-logging-thread-1] [UploadClient] : Chunk: Received Chunk number: 4, offset: 2097152
2023-06-08 19:46:07,011     [DEBUG] [file-logging-thread-1] [UploadClient] : Chunk: Sending Chunk number: 5, offset: 2097152
2023-06-08 19:46:08,872     [DEBUG] [file-logging-thread-1] [UploadClient] : Chunk: Received Chunk number: 5, offset: 2621440
2023-06-08 19:46:08,876     [DEBUG] [file-logging-thread-1] [UploadClient] : Chunk: Sending Chunk number: 6, offset: 2621440
2023-06-08 19:46:10,795     [DEBUG] [file-logging-thread-1] [UploadClient] : Chunk: Received Chunk number: 6, offset: 3145728
2023-06-08 19:46:10,798     [DEBUG] [file-logging-thread-1] [UploadClient] : Chunk: Sending Chunk number: 7, offset: 3145728
2023-06-08 19:46:13,093     [DEBUG] [file-logging-thread-1] [UploadClient] : Chunk: Received Chunk number: 7, offset: 0
2023-06-08 19:46:13,096     [DEBUG] [file-logging-thread-1] [UploadClient] : Upload stash success e16fe1ab-e2ff-4e81-9ed6-f26112849873
2023-06-08 19:46:13,097     [DEBUG] [file-logging-thread-1] [UploadWorker] : Upload to stash success for fileName: disused old wooden house, Krapje.jpg
2023-06-08 19:46:13,097     [DEBUG] [file-logging-thread-1] [UploadWorker] : Ensure uniqueness of filename
2023-06-08 19:46:13,576     [DEBUG] [file-logging-thread-1] [PageContentsCreator] : Template: == {{int:filedesc}} ==
{{Information
|description=

|source={{own}}
|author=[[User:Mnalis|Mnalis]]
|date={{According to Exif data|2023-04-07}}
}}
{{Location|45.28825378416666|16.824901580555554}}
== {{int:license-header}} ==
{{self|cc-by-4.0}}

{{Uploaded from Mobile|platform=Android|version=4.0.3~cf35307d9}}

[[Category:Krapje, Jasenovac]]
[[Category:Wooden houses]]
2023-06-08 19:46:16,238     [DEBUG] [file-logging-thread-1] [UploadWorker] : Stash Upload success..proceeding to make wikidata edit
2023-06-08 19:46:16,486     [DEBUG] [file-logging-thread-1] [WikidataEditService] : EntityId for image was received successfully: 132804590
2023-06-08 19:46:17,312     [DEBUG] [file-logging-thread-1] [WikidataEditService] : DEPICTS property was set successfully for 132804590
2023-06-08 19:46:18,137     [DEBUG] [file-logging-thread-1] [WikidataEditService] : Caption successfully set, revision id = org.wikipedia.dataclient.mwapi.MwPostResponse@48fd535[success=1,errors=<null>]
2023-06-08 19:46:18,138     [DEBUG] [file-logging-thread-1] [UploadWorker] : WikiDataEdit not required, upload success
2023-06-08 19:46:18,663     [INFO ] [file-logging-thread-1] [FileUtils] : File SHA1: 241d49c3d6f0bba75279a92d222789192b5a004a
2023-06-08 19:46:30,966     [ERROR] [file-logging-thread-1] [UploadWorker$doWork] : Queued Contributions: 0
2023-06-08 19:46:32,189     [DEBUG] [file-logging-thread-1] [ContributionsFragment] : Restarting for Contribution(media=fr.free.nrw.commons.Media@f156f86, pageId=7161de9d-8e02-42d5-ac31-8fb4824d6fa6, state=2, transferred=0, decimalCoords=45.26711654638889|16.833518981666664, dateCreatedSource=exif, wikidataPlace=null, chunkInfo=null, depictedItems=[DepictedItem(name=horse, description=domesticated four-footed mammal from the equine family, imageUrl=https://upload.wikimedia.org/wikipedia/commons/thumb/a/a2/Biandintz_eta_zaldiak_-_modified2.jpg/70px-Biandintz_eta_zaldiak_-_modified2.jpg, instanceOfs=[Q55983715], commonsCategories=[CategoryItem: 'Horses'], isSelected=false, id=Q726)], mimeType=null, localUri=/data/user/0/fr.free.nrw.commons/cache/CommonsContributions/60e0d4b3-65b4-4340-874c-ac517316f023.jpg, dataLength=2318460, dateCreated=Tue Apr 11 12:17:17 GMT+02:00 2023, dateCreatedString=2023-04-11, dateModified=Thu Jun 08 19:46:32 GMT+02:00 2023, hasInvalidLocation=0, contentUri=content://media/external/images/media/104626, countryCode=null, imageSHA1=b8adf926a5ad61942fbf20ac0d3b2a6b90ea7676)
2023-06-08 19:46:32,236     [ERROR] [file-logging-thread-1] [UploadWorker$doWork] : Queued Contributions: 1
2023-06-08 19:46:32,258     [DEBUG] [file-logging-thread-1] [UploadClient] : Chunk: Sending Chunk number: 1, offset: 0
2023-06-08 19:46:34,434     [DEBUG] [file-logging-thread-1] [UploadClient] : Chunk: Received Chunk number: 1, offset: 524288
2023-06-08 19:46:34,438     [DEBUG] [file-logging-thread-1] [UploadClient] : Chunk: Sending Chunk number: 2, offset: 524288
2023-06-08 19:46:36,267     [DEBUG] [file-logging-thread-1] [UploadClient] : Chunk: Received Chunk number: 2, offset: 1048576
2023-06-08 19:46:36,270     [DEBUG] [file-logging-thread-1] [UploadClient] : Chunk: Sending Chunk number: 3, offset: 1048576
2023-06-08 19:46:38,044     [DEBUG] [file-logging-thread-1] [UploadClient] : Chunk: Received Chunk number: 3, offset: 1572864
2023-06-08 19:46:38,048     [DEBUG] [file-logging-thread-1] [UploadClient] : Chunk: Sending Chunk number: 4, offset: 1572864
2023-06-08 19:46:39,831     [DEBUG] [file-logging-thread-1] [UploadClient] : Chunk: Received Chunk number: 4, offset: 2097152
2023-06-08 19:46:39,834     [DEBUG] [file-logging-thread-1] [UploadClient] : Chunk: Sending Chunk number: 5, offset: 2097152
2023-06-08 19:46:42,172     [DEBUG] [file-logging-thread-1] [UploadClient] : Chunk: Received Chunk number: 5, offset: 0
2023-06-08 19:46:42,175     [DEBUG] [file-logging-thread-1] [UploadClient] : Upload stash success 7161de9d-8e02-42d5-ac31-8fb4824d6fa6
2023-06-08 19:46:42,176     [DEBUG] [file-logging-thread-1] [UploadWorker] : Upload to stash success for fileName: Konji, Drenov bok.jpg
2023-06-08 19:46:42,176     [DEBUG] [file-logging-thread-1] [UploadWorker] : Ensure uniqueness of filename
2023-06-08 19:46:42,668     [DEBUG] [file-logging-thread-1] [PageContentsCreator] : Template: == {{int:filedesc}} ==
{{Information
|description=

|source={{own}}
|author=[[User:Mnalis|Mnalis]]
|date={{According to Exif data|2023-04-11}}
}}
{{Location|45.26711654638889|16.833518981666664}}
== {{int:license-header}} ==
{{self|cc-by-sa-4.0}}

{{Uploaded from Mobile|platform=Android|version=4.0.3~cf35307d9}}

[[Category:Horses]]
2023-06-08 19:46:45,022     [DEBUG] [file-logging-thread-1] [UploadWorker] : Stash Upload success..proceeding to make wikidata edit
2023-06-08 19:46:45,268     [DEBUG] [file-logging-thread-1] [WikidataEditService] : EntityId for image was received successfully: 132804604
2023-06-08 19:46:46,052     [DEBUG] [file-logging-thread-1] [WikidataEditService] : DEPICTS property was set successfully for 132804604
2023-06-08 19:46:46,957     [DEBUG] [file-logging-thread-1] [WikidataEditService] : Caption successfully set, revision id = org.wikipedia.dataclient.mwapi.MwPostResponse@4e1d2ff[success=1,errors=<null>]
2023-06-08 19:46:46,958     [DEBUG] [file-logging-thread-1] [UploadWorker] : WikiDataEdit not required, upload success
2023-06-08 19:46:47,457     [INFO ] [file-logging-thread-1] [FileUtils] : File SHA1: 40b246cfe6f56f7e376bbc1ab5d3e7e7f90b2f90
2023-06-08 19:47:03,947     [DEBUG] [file-logging-thread-1] [ContributionsFragment] : Skipping re-upload for non-failed Contribution(media=fr.free.nrw.commons.Media@7a216bf, pageId=9a68f138-a695-4ab6-92b1-2d4552b5445d, state=3, transferred=0, decimalCoords=45.26698684666667|16.831977844166666, dateCreatedSource=exif, wikidataPlace=null, chunkInfo=null, depictedItems=[DepictedItem(name=horse, description=domesticated four-footed mammal from the equine family, imageUrl=https://upload.wikimedia.org/wikipedia/commons/thumb/a/a2/Biandintz_eta_zaldiak_-_modified2.jpg/70px-Biandintz_eta_zaldiak_-_modified2.jpg, instanceOfs=[Q55983715], commonsCategories=[CategoryItem: 'Horses'], isSelected=false, id=Q726)], mimeType=null, localUri=/data/user/0/fr.free.nrw.commons/cache/CommonsContributions/fca693dc-21c2-4df1-9803-f56e0064fa63.jpg, dataLength=3750989, dateCreated=Tue Apr 11 12:20:21 GMT+02:00 2023, dateCreatedString=2023-04-11, dateModified=Thu Jun 08 19:39:59 GMT+02:00 2023, hasInvalidLocation=0, contentUri=content://media/external/images/media/104634, countryCode=null, imageSHA1=b5a621337ff1c569413c4098c6ff25a40674ab08)
2023-06-08 19:47:18,912     [ERROR] [file-logging-thread-1] [UploadWorker$doWork] : Queued Contributions: 0
2023-06-08 19:47:19,802     [DEBUG] [file-logging-thread-1] [ContributionsFragment] : Restarting for Contribution(media=fr.free.nrw.commons.Media@5555637, pageId=9a68f138-a695-4ab6-92b1-2d4552b5445d, state=2, transferred=0, decimalCoords=45.26698684666667|16.831977844166666, dateCreatedSource=exif, wikidataPlace=null, chunkInfo=null, depictedItems=[DepictedItem(name=horse, description=domesticated four-footed mammal from the equine family, imageUrl=https://upload.wikimedia.org/wikipedia/commons/thumb/a/a2/Biandintz_eta_zaldiak_-_modified2.jpg/70px-Biandintz_eta_zaldiak_-_modified2.jpg, instanceOfs=[Q55983715], commonsCategories=[CategoryItem: 'Horses'], isSelected=false, id=Q726)], mimeType=null, localUri=/data/user/0/fr.free.nrw.commons/cache/CommonsContributions/fca693dc-21c2-4df1-9803-f56e0064fa63.jpg, dataLength=3750989, dateCreated=Tue Apr 11 12:20:21 GMT+02:00 2023, dateCreatedString=2023-04-11, dateModified=Thu Jun 08 19:47:19 GMT+02:00 2023, hasInvalidLocation=0, contentUri=content://media/external/images/media/104634, countryCode=null, imageSHA1=b5a621337ff1c569413c4098c6ff25a40674ab08)
2023-06-08 19:47:19,845     [ERROR] [file-logging-thread-1] [UploadWorker$doWork] : Queued Contributions: 1
2023-06-08 19:47:19,875     [DEBUG] [file-logging-thread-1] [UploadClient] : Chunk: Sending Chunk number: 1, offset: 0
2023-06-08 19:47:22,157     [DEBUG] [file-logging-thread-1] [UploadClient] : Chunk: Received Chunk number: 1, offset: 524288
2023-06-08 19:47:22,160     [DEBUG] [file-logging-thread-1] [UploadClient] : Chunk: Sending Chunk number: 2, offset: 524288
2023-06-08 19:47:24,099     [DEBUG] [file-logging-thread-1] [UploadClient] : Chunk: Received Chunk number: 2, offset: 1048576
2023-06-08 19:47:24,102     [DEBUG] [file-logging-thread-1] [UploadClient] : Chunk: Sending Chunk number: 3, offset: 1048576
2023-06-08 19:47:25,875     [DEBUG] [file-logging-thread-1] [UploadClient] : Chunk: Received Chunk number: 3, offset: 1572864
2023-06-08 19:47:25,878     [DEBUG] [file-logging-thread-1] [UploadClient] : Chunk: Sending Chunk number: 4, offset: 1572864
2023-06-08 19:47:27,749     [DEBUG] [file-logging-thread-1] [UploadClient] : Chunk: Received Chunk number: 4, offset: 2097152
2023-06-08 19:47:27,753     [DEBUG] [file-logging-thread-1] [UploadClient] : Chunk: Sending Chunk number: 5, offset: 2097152
2023-06-08 19:47:29,604     [DEBUG] [file-logging-thread-1] [UploadClient] : Chunk: Received Chunk number: 5, offset: 2621440
2023-06-08 19:47:29,607     [DEBUG] [file-logging-thread-1] [UploadClient] : Chunk: Sending Chunk number: 6, offset: 2621440
2023-06-08 19:47:31,384     [DEBUG] [file-logging-thread-1] [UploadClient] : Chunk: Received Chunk number: 6, offset: 3145728
2023-06-08 19:47:31,387     [DEBUG] [file-logging-thread-1] [UploadClient] : Chunk: Sending Chunk number: 7, offset: 3145728
2023-06-08 19:47:33,203     [DEBUG] [file-logging-thread-1] [UploadClient] : Chunk: Received Chunk number: 7, offset: 3670016
2023-06-08 19:47:33,206     [DEBUG] [file-logging-thread-1] [UploadClient] : Chunk: Sending Chunk number: 8, offset: 3670016
2023-06-08 19:47:35,364     [DEBUG] [file-logging-thread-1] [UploadClient] : Chunk: Received Chunk number: 8, offset: 0
2023-06-08 19:47:35,367     [DEBUG] [file-logging-thread-1] [UploadClient] : Upload stash success 9a68f138-a695-4ab6-92b1-2d4552b5445d
2023-06-08 19:47:35,368     [DEBUG] [file-logging-thread-1] [UploadWorker] : Upload to stash success for fileName: Konji na ispaši, Drenov bok.jpg
2023-06-08 19:47:35,368     [DEBUG] [file-logging-thread-1] [UploadWorker] : Ensure uniqueness of filename
2023-06-08 19:47:35,870     [DEBUG] [file-logging-thread-1] [PageContentsCreator] : Template: == {{int:filedesc}} ==
{{Information
|description=

|source={{own}}
|author=[[User:Mnalis|Mnalis]]
|date={{According to Exif data|2023-04-11}}
}}
{{Location|45.26698684666667|16.831977844166666}}
== {{int:license-header}} ==
{{self|cc-by-sa-4.0}}

{{Uploaded from Mobile|platform=Android|version=4.0.3~cf35307d9}}

[[Category:Horses]]
[[Category:Višnjica, Sisak-Moslavina County]]
2023-06-08 19:47:39,167     [DEBUG] [file-logging-thread-1] [UploadWorker] : Stash Upload success..proceeding to make wikidata edit
2023-06-08 19:47:39,409     [DEBUG] [file-logging-thread-1] [WikidataEditService] : EntityId for image was received successfully: 132804631
2023-06-08 19:47:40,175     [DEBUG] [file-logging-thread-1] [WikidataEditService] : DEPICTS property was set successfully for 132804631
2023-06-08 19:47:41,175     [DEBUG] [file-logging-thread-1] [WikidataEditService] : Caption successfully set, revision id = org.wikipedia.dataclient.mwapi.MwPostResponse@65331ab[success=1,errors=<null>]
2023-06-08 19:47:41,175     [DEBUG] [file-logging-thread-1] [UploadWorker] : WikiDataEdit not required, upload success
2023-06-08 19:47:41,752     [INFO ] [file-logging-thread-1] [FileUtils] : File SHA1: 067a4e0fddf3c69f5c899f1d67408bac81a5d847
2023-06-08 19:47:57,352     [ERROR] [file-logging-thread-1] [UploadWorker$doWork] : Queued Contributions: 0
2023-06-08 19:47:59,173     [DEBUG] [file-logging-thread-1] [ContributionsFragment] : Restarting for Contribution(media=fr.free.nrw.commons.Media@5cf42fb, pageId=686d2052-a6b2-49a3-91b2-84d2885a657d, state=2, transferred=0, decimalCoords=45.324817657222226|16.800264358333333, dateCreatedSource=exif, wikidataPlace=null, chunkInfo=null, depictedItems=[DepictedItem(name=sheep, description=domesticated ruminant bred for meat, wool, and milk, imageUrl=https://upload.wikimedia.org/wikipedia/commons/thumb/2/2c/Flock_of_sheep.jpg/70px-Flock_of_sheep.jpg, instanceOfs=[Q55983715], commonsCategories=[CategoryItem: 'Sheep'], isSelected=false, id=Q7368)], mimeType=null, localUri=/data/user/0/fr.free.nrw.commons/cache/CommonsContributions/379f1594-6f65-4b2f-bb2e-e762bf409266.jpg, dataLength=4451542, dateCreated=Tue Apr 11 13:07:27 GMT+02:00 2023, dateCreatedString=2023-04-11, dateModified=Thu Jun 08 19:47:57 GMT+02:00 2023, hasInvalidLocation=0, contentUri=content://media/external/images/media/104650, countryCode=null, imageSHA1=6074baf75eb62b6d31ef85944fefc42c2da65b63)
2023-06-08 19:47:59,221     [ERROR] [file-logging-thread-1] [UploadWorker$doWork] : Queued Contributions: 1

mnalis avatar Jun 12 '23 01:06 mnalis

I can confirm that this bug is still present in latest f-droid release (4.1.0~1649d1e2c) on Android 10 (EMUI 12), Huawei P30 Pro.

mnalis avatar Jun 15 '23 15:06 mnalis

I can confirm that "Uploads added in limited connection mode did not start when entering normal mode" bug is still present in latest f-droid release (5.0.1~af028cbdd) on Android 14 (OneUI 6.1), Samsung Galaxy S23+

I need to manually press pause and then play button for each and every picture that was taken in "Limited connection mode" in order to get them to upload. That is not only annoying, but also sometimes results in forgetting to pause/resume some or all of them, so they never get uploaded :cry:

Video:

https://github.com/commons-app/apps-android-commons/assets/156656/82948b2b-38c0-4cfe-9adc-24c028867395

and associated log: CommonsAppLogs-5038.log

Does that help? Has anyone got an idea how to fix it?

I assume in worst case, on exiting "Limited connection mode" we could have app automatically simulate clicking pause and then resume on every not-yet-uploaded picture?

mnalis avatar May 04 '24 20:05 mnalis