SF Patch #1455107 - MetadataValue Database Index

git-svn-id: http://scm.dspace.org/svn/repo/trunk@1465 9c30dcfa-912a-0410-8fc2-9e0234be79fd
This commit is contained in:
Scott Yeadon
2006-03-27 04:54:58 +00:00
parent 417fbb551c
commit 6737f4c329
5 changed files with 21 additions and 5 deletions

View File

@@ -1,5 +1,8 @@
1.4 beta 1 1.4 beta 1
========== ==========
(Martin Hald)
- SF Patch #1455107 - MetadataValue Database Index
(Phillip Franks) (Phillip Franks)
- SF Patch #1456173 - updated database_schema.sql for Oracle (partially fixes SF bug #1455290) - SF Patch #1456173 - updated database_schema.sql for Oracle (partially fixes SF bug #1455290)

View File

@@ -285,7 +285,7 @@ CREATE TABLE MetadataFieldRegistry
( (
metadata_field_id INTEGER PRIMARY KEY DEFAULT NEXTVAL('metadatafieldregistry_seq'), metadata_field_id INTEGER PRIMARY KEY DEFAULT NEXTVAL('metadatafieldregistry_seq'),
metadata_schema_id INTEGER NOT NULL REFERENCES MetadataSchemaRegistry(metadata_schema_id), metadata_schema_id INTEGER NOT NULL REFERENCES MetadataSchemaRegistry(metadata_schema_id),
element VARCHAR(64), element VARCHAR(64) UNIQUE,
qualifier VARCHAR(64), qualifier VARCHAR(64),
scope_note TEXT scope_note TEXT
); );
@@ -316,8 +316,9 @@ CREATE VIEW dcvalue AS
-- instantiating the item object, which grabs all values -- instantiating the item object, which grabs all values
-- related to that item -- related to that item
CREATE INDEX metadatavalue_item_idx ON MetadataValue(item_id); CREATE INDEX metadatavalue_item_idx ON MetadataValue(item_id);
CREATE INDEX metadatavalue_item_idx2 ON MetadataValue(item_id,metadata_field_id);
CREATE INDEX metadatafield_schema_idx ON MetadataFieldRegistry(metadata_schema_id); CREATE INDEX metadatafield_schema_idx ON MetadataFieldRegistry(metadata_schema_id);
------------------------------------------------------- -------------------------------------------------------
-- Community table -- Community table
------------------------------------------------------- -------------------------------------------------------

View File

@@ -88,7 +88,7 @@ CREATE SEQUENCE metadatavalue_seq;
CREATE TABLE MetadataSchemaRegistry CREATE TABLE MetadataSchemaRegistry
( (
metadata_schema_id INTEGER PRIMARY KEY DEFAULT NEXTVAL('metadataschemaregistry_seq'), metadata_schema_id INTEGER PRIMARY KEY DEFAULT NEXTVAL('metadataschemaregistry_seq'),
namespace VARCHAR(256), namespace VARCHAR(256) UNIQUE,
short_id VARCHAR(32) short_id VARCHAR(32)
); );
@@ -113,6 +113,11 @@ CREATE TABLE MetadataValue
place INTEGER place INTEGER
); );
-- Create the Metadata table indexes
CREATE INDEX metadatavalue_item_idx ON MetadataValue(item_id);
CREATE INDEX metadatavalue_item_idx2 ON MetadataValue(item_id,metadata_field_id);
CREATE INDEX metadatafield_schema_idx ON MetadataFieldRegistry(metadata_schema_id);
-- Create the DC schema -- Create the DC schema
INSERT INTO MetadataSchemaRegistry VALUES (1,'http://dublincore.org/documents/dcmi-terms/','dc'); INSERT INTO MetadataSchemaRegistry VALUES (1,'http://dublincore.org/documents/dcmi-terms/','dc');

View File

@@ -238,7 +238,7 @@ CREATE INDEX bundle2bitstream_bundle_idx ON Bundle2Bitstream(bundle_id);
CREATE TABLE MetadataSchemaRegistry CREATE TABLE MetadataSchemaRegistry
( (
metadata_schema_id INTEGER PRIMARY KEY, metadata_schema_id INTEGER PRIMARY KEY,
namespace VARCHAR(256), namespace VARCHAR(256) UNIQUE,
short_id VARCHAR(32) short_id VARCHAR(32)
); );
@@ -277,6 +277,7 @@ CREATE VIEW dcvalue AS
-- instantiating the item object, which grabs all values -- instantiating the item object, which grabs all values
-- related to that item -- related to that item
CREATE INDEX metadatavalue_item_idx ON MetadataValue(item_id); CREATE INDEX metadatavalue_item_idx ON MetadataValue(item_id);
CREATE INDEX metadatavalue_item_idx2 ON MetadataValue(item_id,metadata_field_id);
CREATE INDEX metadatafield_schema_idx ON MetadataFieldRegistry(metadata_schema_id); CREATE INDEX metadatafield_schema_idx ON MetadataFieldRegistry(metadata_schema_id);
------------------------------------------------------- -------------------------------------------------------

View File

@@ -88,7 +88,7 @@ CREATE SEQUENCE metadatavalue_seq;
CREATE TABLE MetadataSchemaRegistry CREATE TABLE MetadataSchemaRegistry
( (
metadata_schema_id INTEGER PRIMARY KEY, metadata_schema_id INTEGER PRIMARY KEY,
namespace VARCHAR(256), namespace VARCHAR(256) UNIQUE,
short_id VARCHAR(32) short_id VARCHAR(32)
); );
@@ -141,6 +141,12 @@ SELECT setval('metadataschemaregistry_seq', max(metadata_schema_id)) FROM metada
DROP TABLE dctyperegistry; DROP TABLE dctyperegistry;
-- create indexes for the metadata tables
CREATE INDEX metadatavalue_item_idx ON MetadataValue(item_id);
CREATE INDEX metadatavalue_item_idx2 ON MetadataValue(item_id,metadata_field_id);
CREATE INDEX metadatafield_schema_idx ON MetadataFieldRegistry(metadata_schema_id);
------------------------------------------------------- -------------------------------------------------------
-- Create the checksum checker tables -- Create the checksum checker tables
------------------------------------------------------- -------------------------------------------------------