X-Git-Url: https://git.evergreen-ils.org/?p=Evergreen.git;a=blobdiff_plain;f=Open-ILS%2Fsrc%2Fextras%2Fimport%2Fparallel_pg_loader.pl;h=5e586aa1df7359b0834d5176f14c0963a36127e1;hp=a28740aba0f131d519f6468c612f3ff1c414561d;hb=d36703997f91d3f79146e439cad6920d68e36e2d;hpb=4cd852bf3714f2f058544ae5423bba090db77857 diff --git a/Open-ILS/src/extras/import/parallel_pg_loader.pl b/Open-ILS/src/extras/import/parallel_pg_loader.pl index a28740aba0..5e586aa1df 100755 --- a/Open-ILS/src/extras/import/parallel_pg_loader.pl +++ b/Open-ILS/src/extras/import/parallel_pg_loader.pl @@ -1,5 +1,6 @@ #!/usr/bin/perl use strict; +use warnings; use lib '/openils/lib/perl5/'; @@ -42,7 +43,6 @@ $main_out->print("SET CLIENT_ENCODING TO 'UNICODE';\n\n"); $main_out->print("BEGIN;\n\n"); my %out_files; -my %out_headers; for my $h (@order) { $out_files{$h} = FileHandle->new(">$output.$h.sql"); binmode($out_files{$h},'utf8'); @@ -80,8 +80,15 @@ while ( my $rec = <> ) { fields => \@cols, }; + #XXX it burnnnsssessss + $fieldcache{$hint}{table} =~ s/\.full_rec/.real_full_rec/o if ($hint eq 'mfr'); + my $fields = join(',', @{ $fieldcache{$hint}{fields} }); $main_out->print( "DELETE FROM $fieldcache{$hint}{table};\n" ) if (grep {$_ eq $hint } @wipe); + # Speed up loading of bib records + if ($hint eq 'mfr') { + $main_out->print("\nSELECT reporter.disable_materialized_simple_record_trigger();\n"); + } $main_out->print( "COPY $fieldcache{$hint}{table} ($fields) FROM '$pwd/$output.$hint.sql';\n" ); } @@ -114,5 +121,8 @@ while ( my $rec = <> ) { $count++; } +if (grep /^mfr$/, %out_files) { + $main_out->print("SELECT reporter.enable_materialized_simple_record_trigger();\n"); +} $main_out->print("-- COMMIT;\n\n"); $main_out->close;