-
Notifications
You must be signed in to change notification settings - Fork 428
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
Issue with stream management | Android #2020
Comments
Hi @sandy5487 Have you checked if the problem disappears with stream management disabled? |
Hi @fenek yes, I have tried with stream management disabled as well but the problem is same and one observation is this that the problem is not persistent, sometimes it happens and sometimes its working fine. But in ejabberd server, this is working fine and when we move the server to mongooseim this thing starts occurring. Now we are confused where is the issue on the client side or the server side? |
@sandy5487 Do you have anything in logs? |
Hi @fenek , @arcusfelis there is one obervation from my side that when we receive any message from offline queue this error appears and our logs on clients side are:
PS: we are connecting server with multiple accounts parralel for our in app requirement Thanks |
In normal operation MongooseIM always sends closing stream element. I'll try to create a branch with extended logging so we might pinpoint the reason for this disconnection. |
when can I expect an update on this? |
Hopefully later today. |
Hi one more thing observed in mongooseim logs which are:
|
Hi @fenek any update on this? |
ejabberd_c2s:process_incoming_stanza_with_conflict_check warning is expected behaviour, just signals that stanza expired and non-relevant. But we can check, that the conflict detection code works correctly with session resumption. badrecord is actually bug. route(From, To, Acc, Packet) ->
LDstDomain = To#jid.lserver, We would need to figure out why Also, a routing error is not a reason to close a connection. @sandy5487 more info can be found in |
@sandy5487 |
Yes, this issue is not the reason of disconnection but I am still not sure why the connection disconnects on client's side when a message packet receives and again that I said it only happens sometimes not always. |
Hi @fenek still waiting for your update |
Hi @sandy5487 I'm sorry for the delay, I couldn't re-inspect this issue earlier. :( According to the last logs you've provided, I think it is fairly probable that it's a bug in Client State Indication implementation. Can you please check if the problem disappears when you disable it on the client side? |
Hello @fenek Yes, I have also tried to disable the stream management on the client side but the issue is the same. Thanks |
Actually ignore my previous comment. I was able to find and fix 3 distinct bugs or issues in stream resumption process. You were very unlucky to trigger them, it's really difficult to reach these code fragments. :) Please give this branch a try: https://github.com/esl/MongooseIM/tree/c2s-resumption-edge-cases Writing regression tests for these will be much more difficult than fixing them, so I'll add them a bit later. It also means that I'm not 100% certain that this fix is completely correct. Anyway, please check it. It should make |
Hi @fenek we have tried again and while reproducing the same error we are facing the similar issue: when the user is getting offline messages this error occurs. and getting END_OF_DOCUMENT on the client side.
|
So, this is also solved due to the timeout stuff in #2022? |
I think it is a combination of the 3 fixes I've added and the timeout fix. :) |
@fenek Could you please confirm if these changes are in the release 3.2.0? |
Hi @sudhamab No, these fixes are not included in 3.2.0. |
MongooseIM version: 3.0
Installed from: source
Erlang/OTP version: latest with MIM3.0
Hi
We are developing the messaging mobile application with MIM with stream management enabled but sometimes in the Android client we encounter the error by stream management feature.
The android error description is below:
Note: we were using the ejabberd server as well and the same code and configuration is working well there; now we are not understanding what the issue and how to fix it because this is not a regular issue and we are not facing to other XMPP servers (ejabberd) even a single time.
We are very much confused whether this is client side issue or server-side. and we really want to move our app to MIM but due to this, we are facing the problem.
Thanks
Sandeep Jangir
The text was updated successfully, but these errors were encountered: