@OpenILS::Application::Storage::CDBI::ISA = ( $driver );
eval 'use OpenILS::Application::Storage::Publisher;';
+ if ($@) {
+ $log->debug("FAILURE LOADING Publisher! $@", ERROR);
+ }
eval 'use OpenILS::Application::Storage::WORM;';
+ if ($@) {
+ $log->debug("FAILURE LOADING WORM! $@", ERROR);
+ }
}
sub child_init {
$log->debug("Success initializing driver!", DEBUG);
return 1;
}
+ $log->debug("FAILURE initializing driver!", ERROR);
return 0;
}
);
my $master = shift @$_db_params;
- $master_db = DBI->connect("dbi:Pg:host=$$master{host};dbname=$$master{db}",$$master{user},$$master{pw}, \%attrs);
+ $log->debug("Attmpting to connet to $$master{db} at $$master{host}", INFO);
+
+ try {
+ $master_db = DBI->connect("dbi:Pg:host=$$master{host};dbname=$$master{db}",$$master{user},$$master{pw}, \%attrs) ||
+ throw OpenSRF::EX::ERROR ("Couldn't connect to $$master{db} on $$master{host} as $$master{user}!!");
+ } catch Error with {
+ my $e = shift;
+ $log->debug("Error connecting to database:\n\t$e\n\t$DBI::errstr", ERROR);
+ throw $e;
+ };
+
+ $log->debug("Connected to MASTER db $$master{db} at $$master{host}", INFO);
+
$master_db->do("SET NAMES '$$master{client_encoding}';") if ($$master{client_encoding});
- $log->debug("Connected to MASTER db '$$master{db} at $$master{host}", INFO);
-
for my $db (@$_db_params) {
push @slave_dbs, DBI->connect("dbi:Pg:host=$$db{host};dbname=$$db{db}",$$db{user},$$db{pw}, \%attrs);
$slave_dbs[-1]->do("SET NAMES '$$db{client_encoding}';") if ($$master{client_encoding});
our $VERSION = 1;
use Digest::MD5 qw/md5_hex/;
-use OpenSRF::EX qw/:try/;;
+use OpenSRF::EX qw/:try/;
use OpenSRF::Utils;
use OpenSRF::Utils::Logger qw/:level/;
use OpenILS::Utils::Fieldmapper;
use OpenILS::Application::Storage::Publisher::permission;
';
+if ($@) {
+ $log->debug("ARG! Couldn't load (at least one) class Publisher: $@", ERROR);
+ throw OpenSRF::EX::ERROR ("ARG! Couldn't load (at least one) class Publisher: $@");
+}
+
+
for my $fmclass ( (Fieldmapper->classes) ) {
next if ($fmclass->is_virtual);
package OpenILS::Application::Storage::Publisher::config;
use base qw/OpenILS::Application::Storage/;
-#use OpenILS::Application::Storage::CDBI::config;
+use OpenILS::Application::Storage::CDBI::config;
sub metabib_field_all {