Package: jabberd2-ldap-mysql
Version: 2.0s11-1
Severity: normal

I have the following packages installed:
ii  mysql-client-5.0    5.0.24-1       mysql database client binaries
ii  mysql-common        5.0.24-1       mysql database common files (e.g.
/etc/mysql
ii  mysql-server-5.0    5.0.24-1       mysql database server binaries
ii  jabberd2-ldap-mysql 2.0s11-1

My current configuration is..

Authentication is via ldap.  Sessions are saved to mysql.

Mysql is configured in the sm.  Sm connects to the mysql instance via
TCP socket on a network address.  Valid mysql user credentials are
defined in the config.  Transactions are enabled.

Session manager is configured to automatically create users using the
<auto-create/> directive.

When the sm service starts, no errors are generated..

==> /var/log/jabberd2/sm.log <==
Sat Sep  9 01:22:19 2006 [notice] starting up
Sat Sep  9 01:22:19 2006 [notice] id: yellowguppy.com
Sat Sep  9 01:22:19 2006 [info] process id is 22982, written to
/var/run/jabberd2/sm.pid
Sat Sep  9 01:22:19 2006 [notice] initialised storage driver 'mysql'
Sat Sep  9 01:22:19 2006 [notice] version: jabberd sm 2.0s11
Sat Sep  9 01:22:19 2006 [notice] attempting connection to router at
127.0.0.1, port=5347
Sat Sep  9 01:22:19 2006 [notice] connection to router established
Sat Sep  9 01:22:19 2006 [notice] ready for sessions

During the init, I can see the sm component connect to mysql through the
mysql logging which is enabled..

060909  1:22:19    1113 Connect     [EMAIL PROTECTED] on jabberd2

when i attempt to send a message the authentication is successful in the
c2s component but the sm component generates the following errors are
generated..

==> /var/log/jabberd2/sm.log <==
Fri Sep  8 23:36:21 2006 [error] mysql: connection to database lost
Fri Sep  8 23:36:21 2006 [error] mysql: connection to database lost
Fri Sep  8 23:36:21 2006 [error] mysql: connection to database lost
Fri Sep  8 23:36:21 2006 [notice] created user:
[EMAIL PROTECTED]
Fri Sep  8 23:36:21 2006 [error] mysql: connection to database lost
Fri Sep  8 23:36:21 2006 [notice] couldn't load user, can't start
session: [EMAIL PROTECTED]/DaemonMonitor

No additional mysql activity is logged via Mysql.  I ran the sm process
in debug mode through strace but I did not find any obvious errors.
Below is a subset of the strace.

time(NULL)                              = 1157697480
write(2, "Fri Sep  8 02:38:00 2006 sess.c:"..., 87Fri Sep  8 02:38:00
2006 sess.c:105 session requested for [EMAIL PROTECTED]/Gaim) =
87
write(2, "\n", 1
)                       = 1
time(NULL)                              = 1157697480
write(2, "Fri Sep  8 02:38:00 2006 mm.c:62"..., 61Fri Sep  8 02:38:00
2006 mm.c:624 dispatching user-load chain) = 61
write(2, "\n", 1
)                       = 1
time(NULL)                              = 1157697480
write(2, "Fri Sep  8 02:38:00 2006 mm.c:63"..., 55Fri Sep  8 02:38:00
2006 mm.c:633 calling module active) = 55
write(2, "\n", 1
)                       = 1
time(NULL)                              = 1157697480
write(2, "Fri Sep  8 02:38:00 2006 storage"..., 108Fri Sep  8 02:38:00
2006 storage.c:270 storage_get: type=active
[EMAIL PROTECTED] filter=(null)) = 108
write(2, "\n", 1
)                       = 1
time(NULL)                              = 1157697480
write(2, "Fri Sep  8 02:38:00 2006 storage"..., 77Fri Sep  8 02:38:00
2006 storage.c:171 adding type 'active' to driver 'mysql') = 77
write(2, "\n", 1
)                       = 1
time(NULL)                              = 1157697480
write(3, "Fri Sep  8 02:38:00 2006 [error]"..., 68) = 68
write(1, "Fri Sep  8 02:38:00 2006 [error]"..., 68Fri Sep  8 02:38:00
2006 [error] mysql: connection to database lost
) = 68
time(NULL)                              = 1157697480
write(2, "Fri Sep  8 02:38:00 2006 mm.c:64"..., 61Fri Sep  8 02:38:00
2006 mm.c:640 user-load chain returning 1) = 61
write(2, "\n", 1
)                       = 1
time(NULL)                              = 1157697480
write(2, "Fri Sep  8 02:38:00 2006 user.c:"..., 88Fri Sep  8 02:38:00
2006 user.c:67 modules failed user load for [EMAIL PROTECTED]) =
88
write(2, "\n", 1
)                       = 1
time(NULL)                              = 1157697480
write(2, "Fri Sep  8 02:38:00 2006 sess.c:"..., 79Fri Sep  8 02:38:00
2006 sess.c:117 auto-creating user [EMAIL PROTECTED]) = 79
write(2, "\n", 1
)                       = 1
time(NULL)                              = 1157697480
write(2, "Fri Sep  8 02:38:00 2006 user.c:"..., 83Fri Sep  8 02:38:00
2006 user.c:91 create user request for [EMAIL PROTECTED]) = 83
write(2, "\n", 1
)                       = 1
time(NULL)                              = 1157697480
write(2, "Fri Sep  8 02:38:00 2006 mm.c:62"..., 61Fri Sep  8 02:38:00
2006 mm.c:624 dispatching user-load chain) = 61
write(2, "\n", 1
)                       = 1
time(NULL)                              = 1157697480
write(2, "Fri Sep  8 02:38:00 2006 mm.c:63"..., 55Fri Sep  8 02:38:00
2006 mm.c:633 calling module active) = 55
write(2, "\n", 1
)                       = 1
time(NULL)                              = 1157697480
write(2, "Fri Sep  8 02:38:00 2006 storage"..., 108Fri Sep  8 02:38:00
2006 storage.c:270 storage_get: type=active
[EMAIL PROTECTED] filter=(null)) = 108
write(2, "\n", 1
)                       = 1
time(NULL)                              = 1157697480
write(3, "Fri Sep  8 02:38:00 2006 [error]"..., 68) = 68
write(1, "Fri Sep  8 02:38:00 2006 [error]"..., 68Fri Sep  8 02:38:00
2006 [error] mysql: connection to database lost
) = 68
time(NULL)                              = 1157697480
write(2, "Fri Sep  8 02:38:00 2006 mm.c:64"..., 61Fri Sep  8 02:38:00
2006 mm.c:640 user-load chain returning 1) = 61
write(2, "\n", 1
)                       = 1
time(NULL)                              = 1157697480
write(2, "Fri Sep  8 02:38:00 2006 user.c:"..., 88Fri Sep  8 02:38:00
2006 user.c:67 modules failed user load for [EMAIL PROTECTED]) =
88
write(2, "\n", 1
)                       = 1
time(NULL)                              = 1157697480
write(2, "Fri Sep  8 02:38:00 2006 mm.c:65"..., 63Fri Sep  8 02:38:00
2006 mm.c:651 dispatching user-create chain) = 63
write(2, "\n", 1
)                       = 1
time(NULL)                              = 1157697480
write(2, "Fri Sep  8 02:38:00 2006 mm.c:66"..., 55Fri Sep  8 02:38:00
2006 mm.c:660 calling module active) = 55
write(2, "\n", 1
)                       = 1
time(NULL)                              = 1157697480
write(2, "Fri Sep  8 02:38:00 2006 mod_act"..., 81Fri Sep  8 02:38:00
2006 mod_active.c:51 activating user [EMAIL PROTECTED]) = 81
write(2, "\n", 1
)                       = 1
time(NULL)                              = 1157697480
time(NULL)                              = 1157697480
write(2, "Fri Sep  8 02:38:00 2006 object."..., 56Fri Sep  8 02:38:00
2006 object.c:85 creating new object) = 56
write(2, "\n", 1
)                       = 1
time(NULL)                              = 1157697480
write(2, "Fri Sep  8 02:38:00 2006 object."..., 87Fri Sep  8 02:38:00
2006 object.c:136 adding field time (val bffff4ac type 1) to object) =
87
write(2, "\n", 1
)                       = 1
time(NULL)                              = 1157697480
write(2, "Fri Sep  8 02:38:00 2006 storage"..., 105Fri Sep  8 02:38:00
2006 storage.c:244 storage_put: type=active
[EMAIL PROTECTED] os=80D0640) = 105
write(2, "\n", 1
)                       = 1
time(NULL)                              = 1157697480
write(3, "Fri Sep  8 02:38:00 2006 [error]"..., 68) = 68
write(1, "Fri Sep  8 02:38:00 2006 [error]"..., 68Fri Sep  8 02:38:00
2006 [error] mysql: connection to database lost
) = 68
time(NULL)                              = 1157697480
write(2, "Fri Sep  8 02:38:00 2006 mm.c:65"..., 86Fri Sep  8 02:38:00
2006 mm.c:656 module template-roster has no handler for this chain) = 86
write(2, "\n", 1
)                       = 1
time(NULL)                              = 1157697480
write(2, "Fri Sep  8 02:38:00 2006 mm.c:66"..., 63Fri Sep  8 02:38:00
2006 mm.c:667 user-create chain returning 0) = 63
write(2, "\n", 1
)                       = 1
time(NULL)                              = 1157697480
write(3, "Fri Sep  8 02:38:00 2006 [notice"..., 77) = 77
write(1, "Fri Sep  8 02:38:00 2006 [notice"..., 77Fri Sep  8 02:38:00
2006 [notice] created user: [EMAIL PROTECTED]
) = 77
time(NULL)                              = 1157697480
write(2, "Fri Sep  8 02:38:00 2006 mm.c:62"..., 61Fri Sep  8 02:38:00
2006 mm.c:624 dispatching user-load chain) = 61
write(2, "\n", 1
)                       = 1
time(NULL)                              = 1157697480
write(2, "Fri Sep  8 02:38:00 2006 mm.c:63"..., 55Fri Sep  8 02:38:00
2006 mm.c:633 calling module active) = 55
write(2, "\n", 1
)                       = 1
time(NULL)                              = 1157697480
write(2, "Fri Sep  8 02:38:00 2006 storage"..., 108Fri Sep  8 02:38:00
2006 storage.c:270 storage_get: type=active
[EMAIL PROTECTED] filter=(null)) = 108
write(2, "\n", 1
)                       = 1
time(NULL)                              = 1157697480
write(3, "Fri Sep  8 02:38:00 2006 [error]"..., 68) = 68
write(1, "Fri Sep  8 02:38:00 2006 [error]"..., 68Fri Sep  8 02:38:00
2006 [error] mysql: connection to database lost
) = 68
time(NULL)                              = 1157697480
write(2, "Fri Sep  8 02:38:00 2006 mm.c:64"..., 61Fri Sep  8 02:38:00
2006 mm.c:640 user-load chain returning 1) = 61
write(2, "\n", 1
)                       = 1
time(NULL)                              = 1157697480
write(2, "Fri Sep  8 02:38:00 2006 user.c:"..., 88Fri Sep  8 02:38:00
2006 user.c:67 modules failed user load for [EMAIL PROTECTED]) =
88
write(2, "\n", 1
)                       = 1
time(NULL)                              = 1157697480
write(3, "Fri Sep  8 02:38:00 2006 [notice"..., 109) = 109
write(1, "Fri Sep  8 02:38:00 2006 [notice"..., 109Fri Sep  8 02:38:00
2006 [notice] couldn't load user, can't start session:
[EMAIL PROTECTED]/Gaim
) = 109
write(2, "sx (chain.c:106) calling nad wri"..., 40sx (chain.c:106)
calling nad write chain) = 40
write(2, "\n", 1
)                       = 1

I have attempted to research this problem for a solution but haven't
come up with a solution.  There do not appear to be any related bugs in
Debian BTS or the Jabberd2 Bugzilla.

The following mysql document references the change in behavior after
5.0.3 which prevents an automatic reconnect without setting a specific
mysql option.  A possible cause?

http://dev.mysql.com/doc/refman/5.0/en/mysql-ping.html

The following is a reference to a similar sounding problem but in the
c2s component that was fixed.  Unfortunately, the patch doesn't appear
to be in bugzilla anymore.

http://mailman.jabber.org/pipermail/jadmin/2005-May/021240.html

The following is a possible patch which doesn't seem to be applied to
the current jabberd2 tree which may address this issue.

http://lists.pld-linux.org/mailman/pipermail/pld-cvs-commit/Week-of-Mon-20060213/092284.html

Any help would be appreciated?

-- System Information:
Debian Release: testing/unstable
  APT prefers testing
  APT policy: (990, 'testing'), (500, 'unstable'), (1, 'experimental')
Architecture: i386 (i686)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.4.27-2-386
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)

Versions of packages jabberd2-ldap-mysql depends on:
ii  jabber-common                 0.4        Jabber server and transport (commo
ii  libc6                         2.3.6-13   GNU C Library: Shared libraries
ii  libidn11                      0.6.5-1    GNU libidn library, implementation
ii  libldap2                      2.1.30-13  OpenLDAP libraries
ii  libmysqlclient15off           5.0.24-1   mysql database client library
ii  libpam0g                      0.79-3.1   Pluggable Authentication Modules l
ii  libssl0.9.8                   0.9.8b-2   SSL shared libraries
ii  zlib1g                        1:1.2.3-13 compression library - runtime

jabberd2-ldap-mysql recommends no packages.

-- no debconf information


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to