nextcloud / nextcloud/notes-android
Unable to Sync after restoring inatance from older backup
Nobody has claimed this yet.
- Dominant language
- Java
- Stars
- 1.1k
- Forks
- 168
- Avg merge
- 1d 17h
- Merged PRs (30d)
- 31
Description
This issue respects the following points:
- I have read the FAQ
- I have searched for existing issues
- The issue affects the Notes Android app, neither the Notes server app nor the Nextcloud Android app.
Describe the bug
I hoped my fresh notes will be uploaded to my freshly restored instance (backup from march)
Expected behavior
To jest upload notes which are newer on my phone than on a server
Notes Android version
33.1.0
Notes server version
4.13
Nextcloud Android version
idk
Nextcloud version
33
Device
pixel 8a
Android Version
16 - iodeos
App Store
- Google Play Store
- F-Droid
- Huawei App Gallery
Stacktrace
App Version: 33.1.0
App Version Code: 330010090
App Flavor: fdroid
Files App Version Code: 330010090 (PROD)
---
OS Version: 6.1.145-android14-11-g66d850f9dea9-ab14676382(1775072987)
OS API Level: 36
Device: akita
Manufacturer: Google
Model (and Product): Pixel 8a (akita)
---
com.nextcloud.android.sso.exceptions.NextcloudHttpRequestFailedException: Zapytanie HTTP nie powiodło się z kodem: 429
at com.nextcloud.android.sso.api.AidlNetworkRequest.performNetworkRequestV2(AidlNetworkRequest.java:179)
at com.nextcloud.android.sso.api.NextcloudAPI.performNetworkRequestV2(NextcloudAPI.java:159)
at com.nextcloud.android.sso.api.NextcloudAPI.lambda$performRequestObservableV2$0(NextcloudAPI.java:97)
at com.nextcloud.android.sso.api.NextcloudAPI.$r8$lambda$af7W9mq2B0ZrhVJwZd-ibFp8T3Y(Unknown Source:0)
at com.nextcloud.android.sso.api.NextcloudAPI$$ExternalSyntheticLambda1.subscribe(D8$$SyntheticClass:0)
at io.reactivex.internal.operators.observable.ObservableFromPublisher.subscribeActual(ObservableFromPublisher.java:31)
at io.reactivex.Observable.subscribe(Observable.java:12284)
at io.reactivex.internal.operators.observable.ObservableSingleMaybe.subscribeActual(ObservableSingleMaybe.java:31)
at io.reactivex.Maybe.subscribe(Maybe.java:4290)
at io.reactivex.Maybe.blockingGet(Maybe.java:2320)
at io.reactivex.Observable.blockingSingle(Observable.java:5381)
at it.niedermann.owncloud.notes.persistence.CapabilitiesClient.getCapabilities(CapabilitiesClient.java:38)
at it.niedermann.owncloud.notes.main.MainViewModel.lambda$synchronizeCapabilities$13(MainViewModel.java:415)
at it.niedermann.owncloud.notes.main.MainViewModel.$r8$lambda$5Xkfm2L_24X4zhF0t4NRWxr_iHA(Unknown Source:0)
at it.niedermann.owncloud.notes.main.MainViewModel$$ExternalSyntheticLambda4.run(D8$$SyntheticClass:0)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:520)
at java.util.concurrent.FutureTask.run(FutureTask.java:317)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1154)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:652)
at java.lang.Thread.run(Thread.java:1563)
Caused by: java.lang.IllegalStateException: {"ocs":{"meta":{"status":"failure","statuscode":429,"message":"Reached maximum delay"},"data":[]}}
at com.nextcloud.android.sso.InputStreamBinder.processRequestV2(InputStreamBinder.java:440)
at com.nextcloud.android.sso.InputStreamBinder.performNextcloudRequestAndBodyStreamV2(InputStreamBinder.java:113)
at com.nextcloud.android.sso.InputStreamBinder.performNextcloudRequestV2(InputStreamBinder.java:96)
at com.nextcloud.android.sso.aidl.IInputStreamService$Stub.onTransact(IInputStreamService.java:112)
at android.os.Binder.execTransactInternal(Binder.java:1473)
at android.os.Binder.execTransact(Binder.java:1418)
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with CapabilitiesClient.getCapabilities and MainViewModel.synchronizeCapabilities, the entry points named in the stack trace, and inspect how the HTTP 429 response affects synchronization. Reproduce the restore scenario if possible and trace the request through the Nextcloud Android SSO layer. Done means notes newer on the phone are uploaded after restoring the server instance.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android, java
- Domain
- mobile
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100