The documentation for for DSN says:
DSN An arrayref of parameters to pass to DBI->connect (usually a dsn,
username, and password).
So, I should be able to have
DSN => [
'dbi:Oracle:tnsname', 'user', 'pass',
{ ora_session_mode => ORA_SYSDBA }
],
but that results in an error:
Usage: $class->connect([$dsn [,$user [,$passwd [,\%attr]]]]) at /usr/share/perl5/POE/Component/DBIAgent/Helper.pm line 163
because _ini_dbi doesn't actually treat DSN the way the docs say;
instead, it always tacks on its on \%attr:
my $dbh = DBI->connect(@$dsn, { AutoCommit => 1, RaiseError => 0, PrintError => 0 }) or die DBI->errstr;
Which means its not possible to pass ora_session_mode (or any other
attribute) at all.