[horde] Horde 3.1.1 MySQL session handler does not handle sessions

Otto Stolz Otto.Stolz at uni-konstanz.de
Tue May 9 10:35:28 PDT 2006


Hello,

Vilius Šumskas schrieb:
> Have you applied 3.0_to_3.1.mysql.sql upgrade script?

I had overlooked this script; thank you for pointing me to it.

> Check horde_users table for 'password_expiration' field with 'desc horde_users';
> also check if horde_histories table  exist.

Now, my MySQL data structure apparently is complete:
> mysql> describe horde_users;
> +---------------------------+--------------+------+-----+---------+-------+
> | Field                     | Type         | Null | Key | Default | Extra |
> +---------------------------+--------------+------+-----+---------+-------+
> | user_uid                  | varchar(255) |      | PRI |         |       |
> | user_pass                 | varchar(32)  |      |     |         |       |
> | user_soft_expiration_date | int(11)      | YES  |     | NULL    |       |
> | user_hard_expiration_date | int(11)      | YES  |     | NULL    |       |
> +---------------------------+--------------+------+-----+---------+-------+

The two expiration_date fields have been added by the update script;
there is no password_expiration field in any MySQL script, neither in
horde/scripts/upgrades/, nor in /opt/test-webmail/horde/scripts/sql/.

> mysql> show tables;
> +---------------------------+
> | Tables_in_horde3test      |
> +---------------------------+
> | horde_categories          |
> | horde_datatree            |
> | horde_datatree_attributes |
> | horde_datatree_seq        |
> | horde_histories           |
> | horde_prefs               |
> | horde_sessionhandler      |
> | horde_tokens              |
> | horde_users               |
> | horde_vfs                 |
> | kronolith_events          |
> | kronolith_storage         |
> | mnemo_memos               |
> | nag_tasks                 |
> | turba_objects             |
> +---------------------------+

The horde_histories table is there.

Still, I get, in the Horde log:
> May 09 19:12:30 Horde3test [notice] [horde] Login success
>     for Otto.Stolz at uni-konstanz.de [134.34.1.44]  to Horde
>     [on line 90 of "/opt/test-webmail/horde/login.php"]

and, in the PHP error log:
> [09-Mai-2006 19:12:30] PHP Notice:  Undefined index:  password_expiration
>     in /opt/test-webmail/horde/lib/Horde/Auth/ldap.php
>     on line 252
> [09-May-2006 19:12:30] PHP Notice:  Undefined index:  rowlocking
>     in /opt/test-webmail/horde/lib/Horde/SessionHandler/mysql.php
>     on line 139
> [09-May-2006 19:12:31] PHP Notice:  Undefined index:  rowlocking
>     in /opt/test-webmail/horde/lib/Horde/SessionHandler/mysql.php
>     on line 139
> [09-May-2006 19:12:31] PHP Notice:  Undefined index:  rowlocking
>     in /opt/test-webmail/horde/lib/Horde/SessionHandler/mysql.php
>     on line 139

And still, I cannot establish a Horde session.

What next?  Thanks in advance for any hint.

My environment:
- Horde 3.1.1
- PHP 4.4.2
- Apache/1.3.34 (Unix) mod_ssl/2.8.25 OpenSSL/0.9.7e PHP/4.4.2
- MySQL 4.1.16-log
- SunOS 5.9
- Firefox 1.0.7

Excerpt from horde/config/conf.php:
> $conf['session']['name'] = 'Horde3test';
> $conf['session']['cache_limiter'] = 'nocache';
> $conf['session']['timeout'] = 0;
> $conf['sql']['persistent'] = false;
> $conf['sql']['hostspec'] = 'localhost';
> $conf['sql']['username'] = 'horde3test';
> $conf['sql']['password'] = '...';
> $conf['sql']['socket'] = '/var/run/mysql/sock';
> $conf['sql']['protocol'] = 'unix';
> $conf['sql']['database'] = 'horde3test';
> $conf['sql']['charset'] = 'utf-8';
> $conf['sql']['phptype'] = 'mysql';
> $conf['auth']['admins'] = array('Otto.Stolz at uni-konstanz.de');
> $conf['auth']['checkip'] = true;
> $conf['auth']['params']['hostspec'] = 'cartero.rz.uni-konstanz.de';
> $conf['auth']['params']['basedn'] = 'ou=people,o=universitaet konstanz,c=de';
> $conf['auth']['params']['version'] = '3';
> $conf['auth']['params']['uid'] = 'mail';
> $conf['auth']['params']['objectclass'] = array('(objectclass=*)');
> $conf['auth']['params']['filter_type'] = 'objectclass';
> $conf['auth']['driver'] = 'ldap';
> $conf['prefs']['driver'] = 'sql';
> $conf['sessionhandler']['params']['persistent'] = false;
> $conf['sessionhandler']['params']['socket'] = '/var/run/mysql/sock';
> $conf['sessionhandler']['params']['protocol'] = 'unix';
> $conf['sessionhandler']['params']['hostspec'] = 'localhost';
> $conf['sessionhandler']['params']['username'] = 'horde3test';
> $conf['sessionhandler']['params']['password'] = '...';
> $conf['sessionhandler']['params']['database'] = 'horde3test';
> $conf['sessionhandler']['params']['table'] = 'horde_sessionhandler';
> $conf['sessionhandler']['type'] = 'mysql';

Best wishes,
    Otto Stolz




More information about the horde mailing list