[Sugar-devel] known issues with collaboration in XS 0.5.2

Tomeu Vizoso tomeu at sugarlabs.org
Wed Sep 8 09:10:12 EDT 2010


On Wed, Sep 8, 2010 at 12:35, Tomeu Vizoso <tomeu at sugarlabs.org> wrote:
> On Wed, Sep 8, 2010 at 12:21, Martin Langhoff <martin at laptop.org> wrote:
>> On Wed, Sep 8, 2010 at 5:02 AM, Tomeu Vizoso <tomeu at sugarlabs.org> wrote:
>>> Note that those are registered users, there's only a dozen online.
>>
>> Ah! Then no, the behaviour is 100% bogus.
>>
>>> I guess in that case you won't accumulate lots of registered users
>>> either, so this behavior shouldn't matter in the field.
>>
>> Well, you do, just that they are segregated in groups. But the
>> "registered, not online" users should not be in memory at all, unless
>> they've been "seen" by ejabberd since it started and it's not perhaps
>> purging its roster?
>>
>> Are you seeing the bug after a long run?
>>
>>> Will consider purging registered users weekly or daily from public
>>> jabber servers such as jabber.sugarlabs.org.
>>
>> Does a restart of ejabberd make this better?
>
> Nope, same slowness. Ejabberd also took all the cpu for a couple of
> minutes when starting up, so it probably loads all registered users to
> memory and does some crazy stuff with them at that point.

Some more info:

- deleting all registered users with ejabberdctl delete-older-users 0
doesn't seem to have any effect, even after restarting

- it's using mnesia, not postgresql

- while churning the CPU, strace shows it's doing this:

clock_gettime(CLOCK_MONOTONIC, {5168912, 600887090}) = 0
pread64(13, "\0\0\7|\0224Vx\0\0\1\347\203h\5d\0\vpubsub_itemh\2k"...,
8192, 5813560) = 8192
pread64(13, "\0\0\6*\0224Vx\0\0\6\"\203h\5d\0\vpubsub_itemh\2k"...,
8192, 5821752) = 8192
pread64(13, "\0\0\1\275\0224Vx\0\0\1\265\203h\5d\0\vpubsub_itemh\2k"...,
8192, 3843384) = 8192
pread64(13, "\0\0\f\202\0224Vx\0\0\6!\203h\5d\0\vpubsub_itemh\2k"...,
8192, 3851576) = 8192
pread64(13, "\0\0\6,\0224Vx\0\0\6$\203h\5d\0\vpubsub_itemh\2k"...,
8192, 5829944) = 8192
pread64(13, "\0\0\6b\0224Vx\0\0\6Z\203h\5d\0\vpubsub_itemh\2k"...,
8192, 5840184) = 8192
pread64(13, "\0\0\4E\0224Vx\0\0\4=\203h\5d\0\vpubsub_itemh\2k"...,
8192, 3859768) = 8192
pread64(13, "\0\0\10W\0224Vx\0\0\1\243\203h\5d\0\vpubsub_itemh\2k"...,
8192, 3867960) = 8192
poll([{fd=3, events=POLLIN|POLLRDNORM}, {fd=5,
events=POLLIN|POLLRDNORM}, {fd=8, events=POLLIN|POLLRDNORM}, {fd=7,
events=POLLIN|POLLRDNORM}, {fd=17, events=POLLIN|POLLRDNORM}, {fd=18,
events=POLLIN|POLLRDNORM}, {fd=20, events=POLLIN|POLLRDNORM}, {fd=25,
events=POLLIN|POLLRDNORM}, {fd=21, events=POLLIN|POLLRDNORM}, {fd=28,
events=POLLIN|POLLRDNORM}, {fd=24, events=POLLIN|POLLRDNORM}, {fd=26,
events=POLLIN|POLLRDNORM}, {fd=23, events=POLLIN|POLLRDNORM}, {fd=27,
events=POLLIN|POLLRDNORM}, {fd=29, events=POLLIN|POLLRDNORM}, {fd=19,
events=POLLIN|POLLRDNORM}], 16, 0) = 0

- fd 13 is /var/lib/ejabberd/spool/pubsub_item.DAT which is 12M

- exporting the db with ejabberdctl dump /tmp/test.dump shows that
there's 8916 entries in the pubsub_item table.

So maybe something is not getting purged and maybe we have a very bad
index somewhere?

Regards,

Tomeu

>> [ My questions are a bit hazy here, as I am chasing a few matters at
>> this moment and I cannot devote the time to repro and diagnose/debug
>> this... apologies. ]
>
> There's no rush at all.
>
> Regards,
>
> Tomeu
>
>> cheers,
>>
>>
>> m
>> --
>>  martin at laptop.org -- School Server Architect
>>  - ask interesting questions
>>  - don't get distracted with shiny stuff  - working code first
>>  - http://wiki.laptop.org/go/User:Martinlanghoff
>>
>


More information about the Sugar-devel mailing list