NAME

DBIO::PostgreSQL::Age - Apache AGE graph database support for DBIO::PostgreSQL

VERSION

version 0.900000

SYNOPSIS

package MyApp::Schema;
use base 'DBIO::Schema';
__PACKAGE__->load_components('PostgreSQL::Age');

my $schema = MyApp::Schema->connect(
  $dsn, $user, $pass,
  { on_connect_call => 'load_age' },
);

$schema->storage->create_graph('social');

my $rows = $schema->storage->cypher(
  'social',
  $$ MATCH (a:Person)-[:KNOWS]->(b:Person) RETURN a.name, b.name $$,
  [qw( person friend )],
);

DESCRIPTION

DBIO::PostgreSQL::Age integrates Apache AGE graph database support into DBIO::PostgreSQL. Apache AGE is a PostgreSQL extension that adds openCypher graph query capabilities via the cypher() SQL function.

Loading this component sets "storage_type" in DBIO::Schema to DBIO::PostgreSQL::Age::Storage, which extends the standard PostgreSQL storage with graph lifecycle management and Cypher query execution.

METHODS

connection

Overrides "connection" in DBIO to set +DBIO::PostgreSQL::Age::Storage as storage_type.

CONNECTION SETUP

Apache AGE requires LOAD 'age' and SET search_path = ag_catalog, ... on each database connection before any graph operations. Use the load_age connection callback:

MyApp::Schema->connect(
  $dsn, $user, $pass,
  { on_connect_call => 'load_age' },
);

AUTHOR

DBIO Authors

COPYRIGHT AND LICENSE

Copyright (C) 2026 DBIO Authors

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.

1 POD Error

The following errors were encountered while parsing the POD:

Around line 80:

Unknown directive: =seealso