From 33f9b13425495e2721dc724e7c50b59db8fbda85 Mon Sep 17 00:00:00 2001 From: Dan Reuther Date: Wed, 18 Feb 2015 11:25:42 -0800 Subject: [PATCH] KMAIN-1604 Modify database connection script and export timeout fix Set the timeout to 3 seconds in backstage_export.pl to avoid timing out on bib exports. Changed the database connect sub to connect to apps => 'open-ils.storage' instead of reporter. Made this change in several files. Signed-off-by: Dan Reuther --- KCLS/bs_files/BSLWimport.pl | 15 ++++++++------- KCLS/bs_files/export/backstage_export.pl | 14 +++++++------- KCLS/bs_files/export/generate_export_ids.pl | 13 +++++++------ KCLS/bs_files/export/set_cat_date.pl | 15 ++++++++------- KCLS/linking/auth_to_bib_batch_builder.pl | 15 ++++++++------- KCLS/linking/auth_to_bib_from_id.pl | 14 +++++++------- KCLS/linking/authority_authority_linker.pl | 15 ++++++++------- KCLS/linking/authority_authority_linker_batcher.pl | 14 ++++++++------ KCLS/linking/authority_control_fields.pl | 13 +++++++------ .../authority_control_fields_batcher_all_exported.pl | 15 ++++++++------- KCLS/linking/set_export_date_on_bibs.pl | 15 ++++++++------- 11 files changed, 84 insertions(+), 74 deletions(-) diff --git a/KCLS/bs_files/BSLWimport.pl b/KCLS/bs_files/BSLWimport.pl index 0e12d13595..a681f83761 100755 --- a/KCLS/bs_files/BSLWimport.pl +++ b/KCLS/bs_files/BSLWimport.pl @@ -215,17 +215,18 @@ sub retrieve_updated_bibs{ my $exportDate = shift; my $sc = OpenSRF::Utils::SettingsClient->new; #my $dbh = get_db_handle(); - my $platform = $sc->config_value( reporter => setup => database => 'driver' ); - my $host = $sc->config_value( reporter => setup => database => 'host' ); - my $port = $sc->config_value( reporter => setup => database => 'port' ); - my $database = $sc->config_value( reporter => setup => database => 'db' ); + my $platform = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => 'driver' ); + my $host = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'host' ); + my $port = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'port' ); + my $database = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'db' ); + if (!$database) { $database = $sc->config_value( reporter => setup => database => 'name' ); print STDERR "WARN: is a deprecated setting for database name. For future compatibility, you should use instead." if $database; } - my $user = $sc->config_value( reporter => setup => database => 'user' ); - my $pw = $sc->config_value( reporter => setup => database => 'pw' ); - + my $user = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'user' ); + my $pw = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'pw' ); + my $dsn = "dbi:$platform:dbname = $database; host = $host; port = $port"; my $dbh = DBI->connect( $dsn, $user, $pw, { diff --git a/KCLS/bs_files/export/backstage_export.pl b/KCLS/bs_files/export/backstage_export.pl index df8d188789..29d954d2a5 100644 --- a/KCLS/bs_files/export/backstage_export.pl +++ b/KCLS/bs_files/export/backstage_export.pl @@ -31,7 +31,7 @@ if($result == 0) { $mon++; $year += 1900; system("mkdir -p /var/KCLS_AUTH"); - system("cat /var/KCLS_AUTH/export_ids_" . $mon ."_" . $mday ."_" . $year . "| perl marc_export --encoding UTF-8 > /var/KCLS_AUTH/export_data_" . $mon ."_" . $mday ."_" . $year . ".mrc"); + system("cat /var/KCLS_AUTH/export_ids_" . $mon ."_" . $mday ."_" . $year . "| perl marc_export --timeout 3 --encoding UTF-8 > /var/KCLS_AUTH/export_data_" . $mon ."_" . $mday ."_" . $year . ".mrc"); my $config = '/openils/conf/opensrf_core.xml'; @@ -63,16 +63,16 @@ if($result == 0) { sub connect_to_db { my $sc = OpenSRF::Utils::SettingsClient->new; - my $db_driver = $sc->config_value( reporter => setup => database => 'driver' ); - my $db_host = $sc->config_value( reporter => setup => database => 'host' ); - my $db_port = $sc->config_value( reporter => setup => database => 'port' ); - my $db_name = $sc->config_value( reporter => setup => database => 'db' ); + my $db_driver = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => 'driver' ); + my $db_host = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'host' ); + my $db_port = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'port' ); + my $db_name = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'db' ); if (!$db_name) { $db_name = $sc->config_value( reporter => setup => database => 'name' ); print STDERR "WARN: is a deprecated setting for database name. For future compatibility, you should use instead." if $db_name; } - my $db_user = $sc->config_value( reporter => setup => database => 'user' ); - my $db_pw = $sc->config_value( reporter => setup => database => 'pw' ); + my $db_user = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'user' ); + my $db_pw = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'pw' ); die "Unable to retrieve database connection information from the settings server" unless ($db_driver && $db_host && $db_port && $db_name && $db_user); diff --git a/KCLS/bs_files/export/generate_export_ids.pl b/KCLS/bs_files/export/generate_export_ids.pl index b862a65126..fd4cbac217 100644 --- a/KCLS/bs_files/export/generate_export_ids.pl +++ b/KCLS/bs_files/export/generate_export_ids.pl @@ -106,16 +106,17 @@ exit 0; # Grab DB information from local settings. Return connected db handle (or die) sub connect_to_db { my $sc = OpenSRF::Utils::SettingsClient->new; - my $db_driver = $sc->config_value( reporter => setup => database => 'driver' ); - my $db_host = $sc->config_value( reporter => setup => database => 'host' ); - my $db_port = $sc->config_value( reporter => setup => database => 'port' ); - my $db_name = $sc->config_value( reporter => setup => database => 'db' ); + my $db_driver = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => 'driver' ); + my $db_host = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'host' ); + my $db_port = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'port' ); + my $db_name = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'db' ); + if (!$db_name) { $db_name = $sc->config_value( reporter => setup => database => 'name' ); print STDERR "WARN: is a deprecated setting for database name. For future compatibility, you should use instead." if $db_name; } - my $db_user = $sc->config_value( reporter => setup => database => 'user' ); - my $db_pw = $sc->config_value( reporter => setup => database => 'pw' ); + my $db_user = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'user' ); + my $db_pw = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'pw' ); die "Unable to retrieve database connection information from the settings server" unless ($db_driver && $db_host && $db_port && $db_name && $db_user); diff --git a/KCLS/bs_files/export/set_cat_date.pl b/KCLS/bs_files/export/set_cat_date.pl index fb74baa73a..72a5a4d019 100755 --- a/KCLS/bs_files/export/set_cat_date.pl +++ b/KCLS/bs_files/export/set_cat_date.pl @@ -71,17 +71,18 @@ print "Updated " . scalar(@records) . " rows.\n"; # Grab DB information from local settings. Return connected db handle (or die) sub connect_to_db { my $sc = OpenSRF::Utils::SettingsClient->new; - my $db_driver = $sc->config_value( reporter => setup => database => 'driver' ); - my $db_host = $sc->config_value( reporter => setup => database => 'host' ); - my $db_port = $sc->config_value( reporter => setup => database => 'port' ); - my $db_name = $sc->config_value( reporter => setup => database => 'db' ); + my $db_driver = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => 'driver' ); + my $db_host = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'host' ); + my $db_port = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'port' ); + my $db_name = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'db' ); + if (!$db_name) { $db_name = $sc->config_value( reporter => setup => database => 'name' ); print STDERR "WARN: is a deprecated setting for database name. For future compatibility, you should use instead." if $db_name; } - my $db_user = $sc->config_value( reporter => setup => database => 'user' ); - my $db_pw = $sc->config_value( reporter => setup => database => 'pw' ); - + my $db_user = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'user' ); + my $db_pw = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'pw' ); + die "Unable to retrieve database connection information from the settings server" unless ($db_driver && $db_host && $db_port && $db_name && $db_user); my $dsn = "dbi:" . $db_driver . ":dbname=" . $db_name .';host=' . $db_host . ';port=' . $db_port; diff --git a/KCLS/linking/auth_to_bib_batch_builder.pl b/KCLS/linking/auth_to_bib_batch_builder.pl index 48d54de371..32e81a40dc 100755 --- a/KCLS/linking/auth_to_bib_batch_builder.pl +++ b/KCLS/linking/auth_to_bib_batch_builder.pl @@ -184,17 +184,18 @@ sub fetch_bibs_from_file { # Grab DB information from local settings. Return connected db handle (or die) sub connect_to_db { my $sc = OpenSRF::Utils::SettingsClient->new; - my $db_driver = $sc->config_value( reporter => setup => database => 'driver' ); - my $db_host = $sc->config_value( reporter => setup => database => 'host' ); - my $db_port = $sc->config_value( reporter => setup => database => 'port' ); - my $db_name = $sc->config_value( reporter => setup => database => 'db' ); + my $db_driver = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => 'driver' ); + my $db_host = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'host' ); + my $db_port = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'port' ); + my $db_name = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'db' ); + if (!$db_name) { $db_name = $sc->config_value( reporter => setup => database => 'name' ); print STDERR "WARN: is a deprecated setting for database name. For future compatibility, you should use instead." if $db_name; } - my $db_user = $sc->config_value( reporter => setup => database => 'user' ); - my $db_pw = $sc->config_value( reporter => setup => database => 'pw' ); - + my $db_user = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'user' ); + my $db_pw = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'pw' ); + die "Unable to retrieve database connection information from the settings server" unless ($db_driver && $db_host && $db_port && $db_name && $db_user); my $dsn = "dbi:" . $db_driver . ":dbname=" . $db_name .';host=' . $db_host . ';port=' . $db_port; diff --git a/KCLS/linking/auth_to_bib_from_id.pl b/KCLS/linking/auth_to_bib_from_id.pl index 71edfd8358..bc48617f96 100755 --- a/KCLS/linking/auth_to_bib_from_id.pl +++ b/KCLS/linking/auth_to_bib_from_id.pl @@ -45,17 +45,17 @@ $dbh->disconnect(); sub connect_to_db { my $sc = OpenSRF::Utils::SettingsClient->new; - my $db_driver = $sc->config_value( reporter => setup => database => 'driver' ); - my $db_host = $sc->config_value( reporter => setup => database => 'host' ); - my $db_port = $sc->config_value( reporter => setup => database => 'port' ); - my $db_name = $sc->config_value( reporter => setup => database => 'db' ); + my $db_driver = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => 'driver' ); + my $db_host = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'host' ); + my $db_port = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'port' ); + my $db_name = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'db' ); if (!$db_name) { $db_name = $sc->config_value( reporter => setup => database => 'name' ); print STDERR "WARN: is a deprecated setting for database name. For future compatibility, you should use instead." if $db_name; } - my $db_user = $sc->config_value( reporter => setup => database => 'user' ); - my $db_pw = $sc->config_value( reporter => setup => database => 'pw' ); - + my $db_user = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'user' ); + my $db_pw = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'pw' ); + die "Unable to retrieve database connection information from the settings server" unless ($db_driver && $db_host && $db_port && $db_name && $db_user); my $dsn = "dbi:" . $db_driver . ":dbname=" . $db_name .';host=' . $db_host . ';port=' . $db_port; diff --git a/KCLS/linking/authority_authority_linker.pl b/KCLS/linking/authority_authority_linker.pl index 81b1c116aa..be854b4183 100755 --- a/KCLS/linking/authority_authority_linker.pl +++ b/KCLS/linking/authority_authority_linker.pl @@ -35,17 +35,18 @@ sub get_acsaf { # Grab DB information from local settings. Return connected db handle (or die) sub connect_to_db { my $sc = OpenSRF::Utils::SettingsClient->new; - my $db_driver = $sc->config_value( reporter => setup => database => 'driver' ); - my $db_host = $sc->config_value( reporter => setup => database => 'host' ); - my $db_port = $sc->config_value( reporter => setup => database => 'port' ); - my $db_name = $sc->config_value( reporter => setup => database => 'db' ); + my $db_driver = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => 'driver' ); + my $db_host = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'host' ); + my $db_port = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'port' ); + my $db_name = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'db' ); + if (!$db_name) { $db_name = $sc->config_value( reporter => setup => database => 'name' ); print STDERR "WARN: is a deprecated setting for database name. For future compatibility, you should use instead." if $db_name; } - my $db_user = $sc->config_value( reporter => setup => database => 'user' ); - my $db_pw = $sc->config_value( reporter => setup => database => 'pw' ); - + my $db_user = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'user' ); + my $db_pw = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'pw' ); + die "Unable to retrieve database connection information from the settings server" unless ($db_driver && $db_host && $db_port && $db_name && $db_user); my $dsn = "dbi:" . $db_driver . ":dbname=" . $db_name .';host=' . $db_host . ';port=' . $db_port; diff --git a/KCLS/linking/authority_authority_linker_batcher.pl b/KCLS/linking/authority_authority_linker_batcher.pl index cb5c72ce27..7d8eb4fe3f 100755 --- a/KCLS/linking/authority_authority_linker_batcher.pl +++ b/KCLS/linking/authority_authority_linker_batcher.pl @@ -63,16 +63,18 @@ my $result = GetOptions("lower-bound=i" => \$lower_bound, my $config = '/openils/conf/opensrf_core.xml'; OpenSRF::System->bootstrap_client( config_file => $config ); my $sc = OpenSRF::Utils::SettingsClient->new; -my $platform = $sc->config_value( reporter => setup => database => 'driver' ); -my $host = $sc->config_value( reporter => setup => database => 'host' ); -my $port = $sc->config_value( reporter => setup => database => 'port' ); -my $database = $sc->config_value( reporter => setup => database => 'db' ); +my $platform = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => 'driver' ); +my $host = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'host' ); +my $port = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'port' ); +my $database = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'db' ); + if (!$database) { $database = $sc->config_value( reporter => setup => database => 'name' ); print STDERR "WARN: is a deprecated setting for database name. For future compatibility, you should use instead." if $database; } -my $user = $sc->config_value( reporter => setup => database => 'user' ); -my $pw = $sc->config_value( reporter => setup => database => 'pw' ); +my $user = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'user' ); +my $pw = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'pw' ); + my $dsn = "dbi:$platform:dbname = $database; host = $host; port = $port"; my $dbh = DBI->connect($dsn,$user, $pw); diff --git a/KCLS/linking/authority_control_fields.pl b/KCLS/linking/authority_control_fields.pl index 542c5aea0a..d264ade03b 100755 --- a/KCLS/linking/authority_control_fields.pl +++ b/KCLS/linking/authority_control_fields.pl @@ -88,16 +88,17 @@ if (defined $days_back) { # Grab DB information from local settings my $sc = OpenSRF::Utils::SettingsClient->new; -my $db_driver = $sc->config_value( reporter => setup => database => 'driver' ); -my $db_host = $sc->config_value( reporter => setup => database => 'host' ); -my $db_port = $sc->config_value( reporter => setup => database => 'port' ); -my $db_name = $sc->config_value( reporter => setup => database => 'db' ); +my $db_driver = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => 'driver' ); +my $db_host = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'host' ); +my $db_port = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'port' ); +my $db_name = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'db' ); + if (!$db_name) { $db_name = $sc->config_value( reporter => setup => database => 'name' ); print STDERR "WARN: is a deprecated setting for database name. For future compatibility, you should use instead." if $db_name; } -my $db_user = $sc->config_value( reporter => setup => database => 'user' ); -my $db_pw = $sc->config_value( reporter => setup => database => 'pw' ); +my $db_user = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'user' ); +my $db_pw = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'pw' ); die "Unable to retrieve database connection information from the settings server" unless ($db_driver && $db_host && $db_port && $db_name && $db_user); diff --git a/KCLS/linking/authority_control_fields_batcher_all_exported.pl b/KCLS/linking/authority_control_fields_batcher_all_exported.pl index 41f1cba440..f86ae9c987 100755 --- a/KCLS/linking/authority_control_fields_batcher_all_exported.pl +++ b/KCLS/linking/authority_control_fields_batcher_all_exported.pl @@ -68,17 +68,18 @@ close BATCH_FILE; # Grab DB information from local settings. Return connected db handle (or die) sub connect_to_db { my $sc = OpenSRF::Utils::SettingsClient->new; - my $db_driver = $sc->config_value( reporter => setup => database => 'driver' ); - my $db_host = $sc->config_value( reporter => setup => database => 'host' ); - my $db_port = $sc->config_value( reporter => setup => database => 'port' ); - my $db_name = $sc->config_value( reporter => setup => database => 'db' ); + my $db_driver = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => 'driver' ); + my $db_host = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'host' ); + my $db_port = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'port' ); + my $db_name = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'db' ); + if (!$db_name) { $db_name = $sc->config_value( reporter => setup => database => 'name' ); print STDERR "WARN: is a deprecated setting for database name. For future compatibility, you should use instead." if $db_name; } - my $db_user = $sc->config_value( reporter => setup => database => 'user' ); - my $db_pw = $sc->config_value( reporter => setup => database => 'pw' ); - + my $db_user = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'user' ); + my $db_pw = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'pw' ); + die "Unable to retrieve database connection information from the settings server" unless ($db_driver && $db_host && $db_port && $db_name && $db_user); my $dsn = "dbi:" . $db_driver . ":dbname=" . $db_name .';host=' . $db_host . ';port=' . $db_port; diff --git a/KCLS/linking/set_export_date_on_bibs.pl b/KCLS/linking/set_export_date_on_bibs.pl index 7b1392f1ad..476bc04d26 100755 --- a/KCLS/linking/set_export_date_on_bibs.pl +++ b/KCLS/linking/set_export_date_on_bibs.pl @@ -57,17 +57,18 @@ print "Updated " . scalar(@records) . " rows.\n"; # Grab DB information from local settings. Return connected db handle (or die) sub connect_to_db { my $sc = OpenSRF::Utils::SettingsClient->new; - my $db_driver = $sc->config_value( reporter => setup => database => 'driver' ); - my $db_host = $sc->config_value( reporter => setup => database => 'host' ); - my $db_port = $sc->config_value( reporter => setup => database => 'port' ); - my $db_name = $sc->config_value( reporter => setup => database => 'db' ); + my $db_driver = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => 'driver' ); + my $db_host = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'host' ); + my $db_port = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'port' ); + my $db_name = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'db' ); + if (!$db_name) { $db_name = $sc->config_value( reporter => setup => database => 'name' ); print STDERR "WARN: is a deprecated setting for database name. For future compatibility, you should use instead." if $db_name; } - my $db_user = $sc->config_value( reporter => setup => database => 'user' ); - my $db_pw = $sc->config_value( reporter => setup => database => 'pw' ); - + my $db_user = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'user' ); + my $db_pw = $sc->config_value( apps => 'open-ils.storage' => app_settings => databases => database => 'pw' ); + die "Unable to retrieve database connection information from the settings server" unless ($db_driver && $db_host && $db_port && $db_name && $db_user); my $dsn = "dbi:" . $db_driver . ":dbname=" . $db_name .';host=' . $db_host . ';port=' . $db_port; -- 2.11.0