After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 663001 - Empathy hangs in XMPP MUC while sending chat message
Empathy hangs in XMPP MUC while sending chat message
Status: RESOLVED NOTGNOME
Product: empathy
Classification: Core
Component: Multi User Chat
3.2.x
Other Linux
: Normal blocker
: ---
Assigned To: empathy-maint
empathy-maint
Depends on:
Blocks:
 
 
Reported: 2011-10-29 17:42 UTC by sergey.zolotorev
Modified: 2011-11-22 13:55 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Output of "EMPATHY_DEBUG=all EMPATHY_PERSIST=1 /usr/lib/empathy/empathy-chat" (131.38 KB, text/x-log)
2011-11-01 10:30 UTC, sergey.zolotorev
Details
Output of dbus-monitor (14.89 KB, text/x-log)
2011-11-01 22:00 UTC, sergey.zolotorev
Details

Description sergey.zolotorev 2011-10-29 17:42:01 UTC
In some XMPP MUC Empathy just hangs (with "wait" icon at the top of tab) after I sent the first message. Sometimes I can sent the second message after some timeout. But the second message usually is not possible. So it is not possible to use Empathy with such MUC at all.

I tried several accounts on different XMPP servers (including @gmail.com). Empathy hangs with all of them.

I found that MUC server returned XMPP error 500 after I tried to send the second message:

wocky-DEBUG: 10/29/2011 21:19:59.13216: _write_node_tree: Serializing tree:
* message xmlns='jabber:client' type='groupchat' to='linuxforum@conference.jabber.ru'
    * active xmlns='http://jabber.org/protocol/chatstates'
wocky-DEBUG: 10/29/2011 21:19:59.13983: _write_node_tree: Serializing tree:
* message xmlns='jabber:client' type='groupchat' to='linuxforum@conference.jabber.ru' id='f84da35a-2191-432b-a759-c2112aade9c9'
    * body
        "bug"
    * active xmlns='http://jabber.org/protocol/chatstates'
wocky-DEBUG: 10/29/2011 21:20:00.28142: _end_element_ns: Received stanza
* message xmlns='jabber:client' from='linuxforum@conference.jabber.ru' to='xxx@gmail.com/f12fe405' type='error' id='f84da35a-2191-432b-a759-c2112aade9c9'
    * body
        "bug"
    * active xmlns='http://jabber.org/protocol/chatstates'
    * error code='500' type='wait'
        * resource-constraint xmlns='urn:ietf:params:xml:ns:xmpp-stanzas'
        * text xmlns='urn:ietf:params:xml:ns:xmpp-stanzas'
            "Превышен лимит скорости посылки информации"

Error text "Превышен лимит скорости посылки информации" means "Exceeded the speed limit sending information".

Empathy version: 3.2.1.1
Distribution: Arch Linux

Steps to reproduce:

- Run Empathy
- Join to XMPP MUC ("linuxforum@conference.jabber.ru" in my case)
- Type and send the first message "test"
=> OK, message delivered to MUC
- Type and send the second message "new test"
=> Empathy hangs and no message delivered to MUC
Comment 1 Guillaume Desmottes 2011-11-01 09:17:48 UTC
I tried to join this room but it asked me for a password.

What do you mean by "hang". The UI is frozen? Could you please start empathy-chat manually (before starting any chat) and attach its output? Use

EMPATHY_DEBUG=all EMPATHY_PERSIST=1 /usr/lib/empathy/empathy-chat
Comment 2 sergey.zolotorev 2011-11-01 10:30:29 UTC
Created attachment 200392 [details]
Output of "EMPATHY_DEBUG=all EMPATHY_PERSIST=1 /usr/lib/empathy/empathy-chat"

The log does not seems very useful.

What did I do:

- killed all instances of "empathy*" and "telepathy"
- started "EMPATHY_DEBUG=all EMPATHY_PERSIST=1 /usr/lib/empathy/empathy-chat"
- started empaty and joined to conference
- sent several messages: "_TEST_", "_TEST2_" and "_TEST3"
=> all of them were sent (I used other XMPP-client and account to see that they were appeared in conference)
- sent several messages: "ping", "ping" and "ping"
=> an animated 'wait' icon in chat tab header displayed and not hidden anymore, other participants (and I do not see they in my other XMPP-client) do not see my messages in conference. GUI is not freezed and I see that new message sent from others but my messages is not delivered anymore
- killed /usr/lib/empathy/empathy-chat by Ctrl+C
Comment 3 Guillaume Desmottes 2011-11-01 15:38:36 UTC
oh, so it's just your message not being send because of the 500 error from the server. But the spinner should disappear once we receive the delivery report. Could you please reproduce one again and attach a dbus-monitor log to double check?
Comment 4 sergey.zolotorev 2011-11-01 22:00:54 UTC
Created attachment 200459 [details]
Output of dbus-monitor

Output of the following command attached:

dbus-monitor "interface='org.freedesktop.Telepathy.Channel'" "interface='org.freedesktop.Telepathy.Channel.Interface.ChatState'" "interface='org.freedesktop.Telepathy.Channel.Conference'" "interface='org.freedesktop.Telepathy.Channel.Group'" "interface='org.freedesktop.Telepathy.Channel.Messages'" "interface='org.freedesktop.Telepathy.Channel.Type.Text'"

The first message was "hello", it was delivered OK.

The second message was "test" and it wasn't delivered. The third one was "end" and it wasn't delivered too.
Comment 5 Guillaume Desmottes 2011-11-02 08:23:03 UTC
> Created an attachment (id=200459) [details]
> "interface='org.freedesktop.Telepathy.Channel.Messages'"

That's 'org.freedesktop.Telepathy.Channel.Interface.Messages' and that's
actually the one I need.
Comment 6 Guillaume Desmottes 2011-11-22 13:55:16 UTC
Ok I'm pretty sure that's because of https://bugs.freedesktop.org/show_bug.cgi?id=43166