cristik / vacuum-im

Automatically exported from code.google.com/p/vacuum-im
0 stars 0 forks source link

Баг после авторизации аккаунтов на одном сервере ejabberd #293

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
(копия поста отсюда: 
http://forum.jrudevels.org/viewtopic.php?t=3763)

Характеристики:
Debian lenny
ejabberd 2.1.5

Клиент: Vacuum IM 1.0.2.1134

Обнаружился странный баг, если 
залогиниться в Vacuum IM'е на Ubuntu 10.04 
одновременно в 2-х аккаунтах на этом ejabberd 
сервере и попробовать авторизовать их друг 
с другом, то при этом на VPS у демона ejabberd 
подскакивает CPU и возрастает кол-во 
потребляемой памяти, а сюда:

--------------
%% watchdog_admins: If an ejabberd process consumes too much memory,
%% send live notifications to those Jabber accounts.
%%
{watchdog_admins, ["admin@example.com"]}.
{watchdog_large_heap, 2000000}.
--------------

Начинают валить сообщения такого вида:

--------------
(ejabberd@localhost) The process <0.359.0> is consuming too much memory:
[{old_heap_block_size,832040},
{heap_block_size,317811},
{mbuf_size,0},
{stack_size,18},
{old_heap_size,118644},
{heap_size,96541}]
Process type: c2s
Command to kill this process: kill ejabberd@localhost <0.359.0>
--------------

Немного погодя jabber сервак "крашится" и его 
приходится запускать заново. В других 
клиентах таких ошибок не наблюдается.

Один из аккаунтов использует ICQ транспорт. 
Если авторизовывать 2 "пустых" аккаунта 
друг с другом, то такого не происходит.

Во вложении часть лога XML консоли вакуума. 

Не подскажете из-за чего может так быть и 
как это устранить?

Original issue reported on code.google.com by sza...@gmail.com on 10 Nov 2010 at 8:57

Attachments:

GoogleCodeExporter commented 9 years ago
Что-то подобное я уже правил, кажется, 
опробуй на версии из SVN проявить этот баг.

Original comment by potapov.s.a on 11 Nov 2010 at 1:27

GoogleCodeExporter commented 9 years ago
Скомпилировал, тоже самое...

Original comment by sza...@gmail.com on 12 Nov 2010 at 1:19

GoogleCodeExporter commented 9 years ago
Очень странная ситуация, аккаунт admin 
посылает оди презенс, а от сервера приходит 
другой:
>>>> admin@example.com/Vacuum IM 13:46:24 +2 >>>>
  <presence>
    <priority>30</priority>
    <status>В сети</status>
    <x xmlns="vcard-temp:x:update"/>
    <c xmlns="http://jabber.org/protocol/caps" node="http://vacuum-im.googlecode.com" ver="zTps8cKzT7RES1fxWzRBaFqHgok=" hash="sha-1"/>
  </presence>

<<<< admin@example.com/Vacuum IM 13:46:24 +101 <<<<
  <presence xmlns="jabber:client" from="admin@example.com/Vacuum IM" to="admin@example.com/Vacuum IM">
    <priority>30</priority>
    <status>В сети</status>
    <c xmlns="http://jabber.org/protocol/caps" node="http://vacuum-im.googlecode.com" ver="zTps8cKzT7RES1fxWzRBaFqHgok=" hash="sha-1"/>
    <x xmlns="vcard-temp:x:update">
      <photo/>
    </x>
  </presence>

Это до получения vCard-а с сервера, и после 
аналогичная ситуация
>>>> admin@example.com/Vacuum IM 13:46:25 +39 >>>>
  <presence>
    <priority>30</priority>
    <status>В сети</status>
    <x xmlns="vcard-temp:x:update">
      <photo>68075218e4454371ce98b5ffa4653807eabccb7f</photo>
    </x>
    <x xmlns="jabber:x:avatar">
      <hash>68075218e4454371ce98b5ffa4653807eabccb7f</hash>
    </x>
    <c xmlns="http://jabber.org/protocol/caps" node="http://vacuum-im.googlecode.com" ver="zTps8cKzT7RES1fxWzRBaFqHgok=" hash="sha-1"/>
  </presence>

<<<< test1@example.com/Vacuum IM 13:46:25 +3 <<<<
  <presence xmlns="jabber:client" from="admin@example.com/Vacuum IM" to="test1@example.com/Vacuum IM">
    <priority>30</priority>
    <status>В сети</status>
    <c xmlns="http://jabber.org/protocol/caps" node="http://vacuum-im.googlecode.com" ver="zTps8cKzT7RES1fxWzRBaFqHgok=" hash="sha-1"/>
    <x xmlns="vcard-temp:x:update">
      <photo/>
    </x>
  </presence>

В общем не непонятно почему сервер 
начинает обрезать информацию об аватарах, 
попробуй отключить плагин avatars.dll.

Original comment by potapov.s.a on 14 Nov 2010 at 4:01

GoogleCodeExporter commented 9 years ago
Проверь еще ревизию 1353, я там попытался 
исключить такое зацикливание.

Original comment by potapov.s.a on 14 Nov 2010 at 5:26

GoogleCodeExporter commented 9 years ago
Короче, выключил аватары в клиенте, ошибка 
пропала. Затем включил аватары в клиенте, 
но выключил плагин: 

mod_vcard_xupdate 
(http://www.process-one.net/en/ejabberd/guide_en#modvcardxupdate)

Все, ошибок больше нет, спасибо!

Новую ревизию смотреть наверно пока не 
буду, так как нужда в этом пропала.
Еще отдельное спасибо возможность 
скачивания истории сообщений клиентом 
прямо с сервера!

Original comment by sza...@gmail.com on 14 Nov 2010 at 5:39

GoogleCodeExporter commented 9 years ago
fixed in r1353

Original comment by potapov.s.a on 14 Nov 2010 at 7:49

GoogleCodeExporter commented 9 years ago

Original comment by Nickollai on 24 Jan 2011 at 7:03