Bug syncing file using notes all of a sudden (recently updated server and android client)

オープン
#3,431 コメント 1 件 リアクション 0 件 担当者 0 名 GitHub で見る

メンテナーはふだん 1 日以内に返信

まだ誰も着手していません。

評価

難易度
4/5
見積もり時間
3〜5日
初心者へのやさしさ
43/100
issue の種類
バグ
明瞭さ
おおむね明確
活発さ
活発
技術スタック
android, java
領域
mobile

調査の方向性

Start with the account update handling at ManageAccountsActivity.java:208 and the sync upload path at NotesServerSyncTask.java:150, using the two reported stack traces to follow the failures. Check whether the account error and upload error share a cause after the server and client updates. Done means account recovery works and the edited file syncs successfully without reporting changes when client and server content already matches.

索引モデルが issue の本文から書いたものです。

説明

0. Needs triage bug
This issue respects the following points:
Describe the bug

I opened an existing file in the notes app
I edited it
I closed it (it tried to sync and failed with this exception).
I checked the accounts section afterwards and a red circle shown for my account
I couldn't see how to update it so I tried to add a new account, it offered me the same account as an option so I picked it, it updated the existing one and the red circle is now gone but, because I updated the file using the nextcloud app to stop me losing the data, it now fails to sync the file with a new error... I guess technically these are two independent bugs, but they are so likely linked I've added both here

Expected behavior

The file should have synced. It looks like an auth token expired and it should have regenerated a new one itself.
The file sync should have later on correctly identified no changes between client and server and marked the sync as complete

Error 1:

App Version: 35.0.0
App Version Code: 350000090
App Flavor: play

Files App Version Code: 17939 (QA)
Files App Version Code: 350000290 (PROD)

---

OS Version: 4.19.87-27102101(G986BXXSNHYB1)
OS API Level: 33
Device: y2s
Manufacturer: samsung
Model (and Product): SM-G986B (y2sxeea)

---

android.accounts.NetworkErrorException: HTTP status code: 900
	at it.niedermann.owncloud.notes.manageaccounts.ManageAccountsActivity$4.lambda$onResponse$0(ManageAccountsActivity.java:208)
	at it.niedermann.owncloud.notes.manageaccounts.ManageAccountsActivity$4.$r8$lambda$0gcJTC3yWwHnIcKPdOGbwaOpT10(ManageAccountsActivity.java:0)
	at it.niedermann.owncloud.notes.manageaccounts.ManageAccountsActivity$4$$ExternalSyntheticLambda1.run(D8$$SyntheticClass:0)
	at android.os.Handler.handleCallback(Handler.java:942)
	at android.os.Handler.dispatchMessage(Handler.java:99)
	at android.os.Looper.loopOnce(Looper.java:226)
	at android.os.Looper.loop(Looper.java:313)
	at android.app.ActivityThread.main(ActivityThread.java:8762)
	at java.lang.reflect.Method.invoke(Native Method)
	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:604)
	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1067)

Error2:

App Version: 35.0.0
App Version Code: 350000090
App Flavor: play

Files App Version Code: 17939 (QA)
Files App Version Code: 350000290 (PROD)

---

OS Version: 4.19.87-27102101(G986BXXSNHYB1)
OS API Level: 33
Device: y2s
Manufacturer: samsung
Model (and Product): SM-G986B (y2sxeea)

---

java.lang.Exception: {"errorType":"Exception"}
[com.nextcloud.android.sso.InputStreamBinder.processRequestV2(InputStreamBinder.java:440), com.nextcloud.android.sso.InputStreamBinder.performNextcloudRequestAndBodyStreamV2(InputStreamBinder.java:113), com.nextcloud.android.sso.InputStreamBinder.performNextcloudRequestV2(InputStreamBinder.java:96), com.nextcloud.android.sso.aidl.IInputStreamService$Stub.onTransact(IInputStreamService.java:112), android.os.Binder.execTransactInternal(Binder.java:1316), android.os.Binder.execTransact(Binder.java:1280)]
	at it.niedermann.owncloud.notes.persistence.NotesServerSyncTask.pushLocalChanges(NotesServerSyncTask.java:150)
	at it.niedermann.owncloud.notes.persistence.NotesServerSyncTask.run(NotesServerSyncTask.java:99)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:520)
	at java.util.concurrent.FutureTask.run(FutureTask.java:328)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1100)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at java.lang.Thread.run(Thread.java:1571)

Notes Android version

35.0

Notes server version

35.0

Nextcloud Android version

35.0.2

Nextcloud version

35.0.2

Device

Samsung s20 plus

Android Version

13

App Store
  • Google Play Store
  • F-Droid
  • Huawei App Gallery
Stacktrace

App Version: 35.0.0
App Version Code: 350000090
App Flavor: play

Files App Version Code: 17939 (QA)
Files App Version Code: 350000290 (PROD)


OS Version: 4.19.87-27102101(G986BXXSNHYB1)
OS API Level: 33
Device: y2s
Manufacturer: samsung
Model (and Product): SM-G986B (y2sxeea)


android.accounts.NetworkErrorException: HTTP status code: 900
at it.niedermann.owncloud.notes.manageaccounts.ManageAccountsActivity$4.lambda$onResponse$0(ManageAccountsActivity.java:208)
at it.niedermann.owncloud.notes.manageaccounts.ManageAccountsActivity$4.$r8$lambda$0gcJTC3yWwHnIcKPdOGbwaOpT10(ManageAccountsActivity.java:0)
at it.niedermann.owncloud.notes.manageaccounts.ManageAccountsActivity$4$$ExternalSyntheticLambda1.run(D8$$SyntheticClass:0)
at android.os.Handler.handleCallback(Handler.java:942)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loopOnce(Looper.java:226)
at android.os.Looper.loop(Looper.java:313)
at android.app.ActivityThread.main(ActivityThread.java:8762)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:604)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1067)

主要言語
Java
スター
1.1k
フォーク
176
平均マージ
21時間 27分
マージ済み PR(30日)
32

環境構築

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

nextcloud/notes-android のほかの issue

nextcloud/notes-android の issue をすべて見る

似ている issue

Java の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。