-
Notifications
You must be signed in to change notification settings - Fork 138
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
Large revs with no common parent. Panic serving, can't find rev #1007
Comments
First I was running default config. Then I changed to "revs_limit":5. No bucket shadowing. |
@adamcfraser it's interesting that people are seeing this error without bucket shadowing. |
@tleyden Also interesting that, based on the stack trace, it looks like the doc update is successful, and it's panicking when trying to add the rev to the rev cache. Would help to understand whether it's an issue with rev cache handling (it's expecting a parent where we don't actually need one), or an actual problem with the rev tree for this doc. |
Looked through the issues you referenced to and one thing that perhaps can be in effect here is that I restart sync gateway every second hour because the memory usage is too large. Now with #966 closed I will see if I can avoid restarting the sync gateway. |
@hegra can you post:
to github gists? With logs, please make sure there is no sensitive information. |
It would also be useful if you could post your android logs. |
Looks like we have enough information to try some speculative testing. |
Made a gist here with a unit test for android and complete logs and configs. |
Reproduced the panic from both Java core and Android test clients. Now ported to unit test for ongoing automated testing. |
Action item from discussion:
Btw some notes on rev tree pruning that might be useful: https://github.com/couchbase/sync_gateway/wiki/Rev-Tree-Storage-on-Couchbase-Server |
Issue was caused by updateDocument callback function pruning the revision history and removing the newRevision. A subsequent attempt to insert the new revision into the revision cache would fail. Now the revision will not be inserted into the revision cache when it has been pruned by the callback function. |
I'm running an android app(couchbase-lite-android:1.1.0-532) where multiple clients can make a new document with the same specific document id. They are then all pushed to the server (these clients never pull).
After running for some days another android client pulls the data and tries to flag all but one revision as deleted. Then after a sync to the server I get the crash report as seen below. In addition only some of the entries in the bodymap of the current revision are flagged as deleted when inspecting the document on the server side.
This looks similar to issue #807 but we are running master(bfb402f) in which the revision pruning issue should have been corrected?
The text was updated successfully, but these errors were encountered: