logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

Apache::Session::Store::Postgres - Store persistent data in a Postgres database

Author

       This modules was written by Jeffrey William Baker <jwbaker@acm.org>

       A fix for the commit policy was contributed by Michael Schout <mschout@gkg.net>

Configuration

       The module must know what datasource, username, and password to use when connecting to the database.
       These values can be set using the options hash (see Apache::Session documentation).  The options are:

       DataSource
       UserName
       Password
       Handle
       TableName

       Example:

        tie %hash, 'Apache::Session::Postgres', $id, {
            DataSource => 'dbi:Pg:dbname=database',
            UserName   => 'database_user',
            Password   => 'K00l'
        };

       Instead, you may pass in an already-opened DBI handle to your database.

        tie %hash, 'Apache::Session::Postgres', $id, {
            Handle => $dbh
        };

Description

       Apache::Session::Store::Postgres fulfills the storage interface of Apache::Session. Session data is
       stored in a Postgres database.

Name

       Apache::Session::Store::Postgres - Store persistent data in a Postgres database

Schema

       To use this module, you will need at least these columns in a table called 'sessions', or another name if
       you supply the TableName parameter.

        id char(32)     # or however long your session IDs are.
        a_session text  # This has an ~8 KB limit :(

       To create this schema, you can execute this command using the psql program:

        CREATE TABLE sessions (
           id char(32) not null primary key,
           a_session text
        );

       If you use some other command, ensure that there is a unique index on the table's id column.

See Also

       Apache::Session, Apache::Session::Store::DBI

perl v5.36.0                                       2022-11-19              Apache::Session::Store::Postgres(3pm)

Synopsis

        use Apache::Session::Store::Postgres;

        my $store = new Apache::Session::Store::Postgres;

        $store->insert($ref);
        $store->update($ref);
        $store->materialize($ref);
        $store->remove($ref);

See Also