From 9ee5a7538c96291a71d1ccaba16a13b8fbe13cf6 Mon Sep 17 00:00:00 2001 From: miker Date: Tue, 15 Sep 2009 20:23:42 +0000 Subject: [PATCH] moving the the upgrade SQL scripts to an unversioned "upgrade" directory instead of one labeled for 1.6; adding the min-version insert for config.upgrade_log; adding views and an index for hold loop calculation git-svn-id: svn://svn.open-ils.org/ILS/trunk@14028 dcc99617-32d9-48b4-a31d-7c20da2025e4 --- Open-ILS/src/sql/Pg/002.schema.config.sql | 2 ++ Open-ILS/src/sql/Pg/090.schema.action.sql | 22 ++++++++++++++++++ Open-ILS/src/sql/Pg/950.data.seed-values.sql | 23 +++++++++++++++++++ ...0001.data.config.org_unit_setting_type.sql | 0 4 files changed, 47 insertions(+) rename Open-ILS/src/sql/Pg/{upgrade_1.6_trunk => upgrade}/0001.data.config.org_unit_setting_type.sql (100%) diff --git a/Open-ILS/src/sql/Pg/002.schema.config.sql b/Open-ILS/src/sql/Pg/002.schema.config.sql index 538f04672f..d3fd940c0c 100644 --- a/Open-ILS/src/sql/Pg/002.schema.config.sql +++ b/Open-ILS/src/sql/Pg/002.schema.config.sql @@ -51,6 +51,8 @@ CREATE TABLE config.upgrade_log ( install_date TIMESTAMP WITH TIME ZONE NOT NULL DEFAULT NOW() ); +INSERT INTO config.upgrade_log (version) VALUES ('0003'); + CREATE TABLE config.bib_source ( id SERIAL PRIMARY KEY, quality INT CHECK ( quality BETWEEN 0 AND 100 ), diff --git a/Open-ILS/src/sql/Pg/090.schema.action.sql b/Open-ILS/src/sql/Pg/090.schema.action.sql index 2de8ce37c7..8362f6ca7f 100644 --- a/Open-ILS/src/sql/Pg/090.schema.action.sql +++ b/Open-ILS/src/sql/Pg/090.schema.action.sql @@ -385,6 +385,28 @@ CREATE TABLE action.unfulfilled_hold_list ( circ_lib INT NOT NULL, fail_time TIMESTAMP WITH TIME ZONE NOT NULL DEFAULT NOW() ); +CREATE INDEX uhr_hold_idx ON action.unfulfilled_hold_list (hold); + +CREATE OR REPLACE VIEW action.unfulfilled_hold_loops AS + SELECT u.hold, + c.circ_lib, + count(*) + FROM action.unfulfilled_hold_list u + JOIN asset.copy c ON (c.id = u.current_copy) + GROUP BY 1,2; + +CREATE OR REPLACE VIEW action.unfulfilled_hold_min_loop AS + SELECT hold, + min(count) + FROM action.unfulfilled_hold_loops + GROUP BY 1; + +CREATE OR REPLACE VIEW action.unfulfilled_hold_innermost_loop AS + SELECT DISTINCT l.* + FROM action.unfulfilled_hold_loops l + JOIN action.unfulfilled_hold_min_loop m USING (hold) + WHERE l.count = m.min; + COMMIT; diff --git a/Open-ILS/src/sql/Pg/950.data.seed-values.sql b/Open-ILS/src/sql/Pg/950.data.seed-values.sql index af3fcdd88d..383831b186 100644 --- a/Open-ILS/src/sql/Pg/950.data.seed-values.sql +++ b/Open-ILS/src/sql/Pg/950.data.seed-values.sql @@ -2161,3 +2161,26 @@ INSERT INTO action_trigger.environment (event_def, path) VALUES SELECT SETVAL('action_trigger.event_definition_id_seq'::TEXT, 100); +-- Org Unit Settings for configuring org unit weights and org unit max-loops for hold targeting + +INSERT INTO config.org_unit_setting_type (name, label, description, datatype) VALUES ( + 'circ.holds.org_unit_target_weight', + 'Holds: Org Unit Target Weight', + 'Org Units can be organized into hold target groups based on a weight. Potential copies from org units with the same weight are chosen at random.', + 'integer' +); + +INSERT INTO config.org_unit_setting_type (name, label, description, datatype) VALUES ( + 'circ.holds.target_holds_by_org_unit_weight', + 'Holds: Use weight-based hold targeting', + 'Use library weight based hold targeting', + 'bool' +); + +INSERT INTO config.org_unit_setting_type (name, label, description, datatype) VALUES ( + 'circ.holds.max_org_unit_target_loops', + 'Holds: Maximum library target attempts', + 'When this value is set and greater than 0, the system will only attempt to find a copy at each possible branch the configured number of times', + 'integer' +); + diff --git a/Open-ILS/src/sql/Pg/upgrade_1.6_trunk/0001.data.config.org_unit_setting_type.sql b/Open-ILS/src/sql/Pg/upgrade/0001.data.config.org_unit_setting_type.sql similarity index 100% rename from Open-ILS/src/sql/Pg/upgrade_1.6_trunk/0001.data.config.org_unit_setting_type.sql rename to Open-ILS/src/sql/Pg/upgrade/0001.data.config.org_unit_setting_type.sql -- 2.43.2