-
-
Notifications
You must be signed in to change notification settings - Fork 52
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
"Share board" adds user twice, causes server-side constraint violation and client crash #1229
Comments
Hi @eliasp, I tried to reproduce it on my instance, but wasn't able to get any error out of it yet. This might be because of my pre-historic version of Nextcloud, I should update here... I'll dive deeper into this as soon as I find some time for that and keep you updated! @stefan-niedermann I tried your NC instance as well, are you up to date? I wasn't able to reproduce it on your server as well... |
Any data I could provide from Android (does it maintain a local SQLite DB?) of the App in this erroneous state that could help debug this further? |
I think I got this without sniffing your private data, but thanks for the offer!
It does. And I'm kind of ashamed of my past self, that I didn't have the same constraint on the table as the server. I guess back then when we started, a ton of things were different and we had a shitload to do, so this fell off at some point. And that's the possible fix I'm thinking of: throw away current shares from local DB, add the constraint and let the sync recover the truth from server to local DB. After spending the half day updating from NC 20 to 23 (ain't easy when you have a shitty webhoster), updating my android studio and the corresponding emulators, I still wasn't able to reproduce it. I really have no idea how you could even run into this... The UI isn't offering an already existing user in the dialog, at least for me. Once someone is added, I won't find this user to create a new share. The technical side is easily fixable as mentioned above, but what could be the root cause? I'd ask for a video, but there surely is a reason for blurring the users out in your screenshots... Could you maybe create a dummy user and try the same thing with it while recording? Another thing i find interesting: Sorry for the wall of text, but I warned you: "I'll keep you updated"! |
Sounds reasonable, but I feel like there's still a race condition in the App logic itself leading to this state in the 1st place (although this would result now in a local constraint violation when persisting it).
Same for me. The 2nd instance of the same user is added "automatically": either it pops up instantly (is there an automatic sync in the background?) when having added the 1st one or after a forced sync.
I do, as I'm the creator/admin of this board/instance. |
Describe the bug
I found a certain constraint violation (details below) in my server logs over and over again.
It turned out to be caused by the Android Client trying to add a user twice to a board's ACL.
While trying to reproduce the issue a dialog with a client stacktrace appeared on 2 occasions (also below).
Steps to reproduce the behavior:
Expected behavior
Screenshots
Versions
Smartphone (please complete the following information):
Stacktrace
a ~500 line App debug log can be provided privately on request - I'll keep it around for some time
App Stacktrace shown at least twice when trying to reproduce the issue:
Server stacktrace due to constraint violation:
The text was updated successfully, but these errors were encountered: