in reply to Problems with Apache::Session

First of all show your code. It is hard to say what's wrong with it without seeing it.

As for semaphores and databases. Apache::Session have to searilize access to session object to prevent two different processes from trying to use one session at same time. One of supported methods of syncronization is semaphores.

BTW are sure that you have latest version of Apache::Session? AFAIK Apache::Session::DBI was removed from latest version of Apache::Session.

--
Ilya Martynov (http://martynov.org/)

Replies are listed 'Best First'.
Re: Re: Problems with Apache::Session
by jryan (Vicar) on Dec 22, 2001 at 00:08 UTC

    I am using version 1.54, the latest version from CPAN. If there is a more advanced version, I am not aware of it.

    Apache::Session::DBI did require a separate install; however, most of the tutorials that I found on the web used Apache::Session::DBI as the basis.

    As for the sample code, I am using the bare minimum sample code shown in the pod documentation. At any rate, here it is, for those who do not have the module downloaded (note: $id is a varible passed through the query string; it is paramed in using the CGI module):

    For Apache::Session::MySQL

    my $dbh=DBI->connect("DBI:mysql:database=sessions;host=localhost","roo +t", ""); my $opts = {Handle => $dbh}; tie my %session, 'Apache::Session::MySQL', $id, $opts;

    For Apache::Session::DBI

    my $ops = { DataSource => 'dbi:mysql:sessions', UserName => 'root', Password => '' }; tie my %session, 'Apache::Session::DBI', $id, $opts;