From cd8ba53d268ea4464fcba22b4e736cde3d3653e1 Mon Sep 17 00:00:00 2001 From: dbs Date: Wed, 24 Nov 2010 03:32:44 +0000 Subject: [PATCH] Add an index on asset.copy(create_date) for item-age browse Running an item-age browse against a database with a reasonable number of entries in asset.copy is dog-slow without an index like this. git-svn-id: svn://svn.open-ils.org/ILS/branches/rel_2_0@18843 dcc99617-32d9-48b4-a31d-7c20da2025e4 --- Open-ILS/src/sql/Pg/002.schema.config.sql | 2 +- Open-ILS/src/sql/Pg/040.schema.asset.sql | 1 + .../Pg/upgrade/0466.schema.asset-copy-add-create-date-index.sql | 8 ++++++++ 3 files changed, 10 insertions(+), 1 deletion(-) create mode 100644 Open-ILS/src/sql/Pg/upgrade/0466.schema.asset-copy-add-create-date-index.sql diff --git a/Open-ILS/src/sql/Pg/002.schema.config.sql b/Open-ILS/src/sql/Pg/002.schema.config.sql index d64150cfca..b2f36e9253 100644 --- a/Open-ILS/src/sql/Pg/002.schema.config.sql +++ b/Open-ILS/src/sql/Pg/002.schema.config.sql @@ -70,7 +70,7 @@ CREATE TABLE config.upgrade_log ( install_date TIMESTAMP WITH TIME ZONE NOT NULL DEFAULT NOW() ); -INSERT INTO config.upgrade_log (version) VALUES ('0465'); -- dbs +INSERT INTO config.upgrade_log (version) VALUES ('0466'); -- dbs CREATE TABLE config.bib_source ( id SERIAL PRIMARY KEY, diff --git a/Open-ILS/src/sql/Pg/040.schema.asset.sql b/Open-ILS/src/sql/Pg/040.schema.asset.sql index 767f46e9ed..c453619f34 100644 --- a/Open-ILS/src/sql/Pg/040.schema.asset.sql +++ b/Open-ILS/src/sql/Pg/040.schema.asset.sql @@ -88,6 +88,7 @@ CREATE INDEX cp_cn_idx ON asset.copy (call_number); CREATE INDEX cp_avail_cn_idx ON asset.copy (call_number); CREATE INDEX cp_creator_idx ON asset.copy ( creator ); CREATE INDEX cp_editor_idx ON asset.copy ( editor ); +CREATE INDEX cp_create_date ON asset.copy (create_date); CREATE RULE protect_copy_delete AS ON DELETE TO asset.copy DO INSTEAD UPDATE asset.copy SET deleted = TRUE WHERE OLD.id = asset.copy.id; CREATE TABLE asset.opac_visible_copies ( diff --git a/Open-ILS/src/sql/Pg/upgrade/0466.schema.asset-copy-add-create-date-index.sql b/Open-ILS/src/sql/Pg/upgrade/0466.schema.asset-copy-add-create-date-index.sql new file mode 100644 index 0000000000..813b215b69 --- /dev/null +++ b/Open-ILS/src/sql/Pg/upgrade/0466.schema.asset-copy-add-create-date-index.sql @@ -0,0 +1,8 @@ + +BEGIN; + +INSERT INTO config.upgrade_log (version) VALUES ('0466'); -- dbs + +CREATE INDEX cp_create_date ON asset.copy (create_date); + +COMMIT; -- 2.11.0