]> git.decadent.org.uk Git - dak.git/blobdiff - init_pool.sql
added upgrade-report and installation-report pseudo packages
[dak.git] / init_pool.sql
index e7bfb87da1c89950b7833b31014476e97a46f689..6d3b6e4913c1bb1bae818c4b26b02cb022bb88a4 100644 (file)
@@ -24,7 +24,7 @@ CREATE TABLE architecture (
 );
 
 CREATE TABLE maintainer (
-       id SERIAL PRIMARY KEY, 
+       id SERIAL PRIMARY KEY,
        name TEXT UNIQUE NOT NULL
 );
 
@@ -74,25 +74,25 @@ CREATE TABLE binaries (
        file INT4 UNIQUE NOT NULL, -- REFERENCES files,
        type TEXT NOT NULL,
 -- joeyh@ doesn't want .udebs and .debs with the same name, which is why the unique () doesn't mention type
-       unique (package, version, source, architecture)
+       unique (package, version, architecture)
 );
 
 CREATE TABLE suite (
        id SERIAL PRIMARY KEY,
        suite_name TEXT NOT NULL,
-       version TEXT NOT NULL,
+       version TEXT,
        origin TEXT,
        label TEXT,
        policy_engine TEXT,
        description TEXT
 );
-  
+
 CREATE TABLE suite_architectures (
        suite INT4 NOT NULL, -- REFERENCES suite
        architecture INT4 NOT NULL, -- REFERENCES architecture
        unique (suite, architecture)
 );
-            
+
 CREATE TABLE bin_associations (
        id SERIAL PRIMARY KEY,
        suite INT4 NOT NULL, -- REFERENCES suite
@@ -106,3 +106,38 @@ CREATE TABLE src_associations (
        source INT4 NOT NULL, -- REFERENCES source
        unique (suite, source)
 );
+
+CREATE TABLE section (
+       id SERIAL PRIMARY KEY,
+       section TEXT UNIQUE NOT NULL
+);
+
+CREATE TABLE priority (
+       id SERIAL PRIMARY KEY,
+       priority TEXT UNIQUE NOT NULL,
+       level INT4 UNIQUE NOT NULL
+);
+
+CREATE TABLE override_type (
+       id SERIAL PRIMARY KEY,
+       type TEXT UNIQUE NOT NULL
+);
+
+CREATE TABLE override (
+       package TEXT NOT NULL,
+       suite INT4 NOT NULL, -- references suite
+       component INT4 NOT NULL, -- references component
+       priority INT4, -- references priority
+       section INT4 NOT NULL, -- references section
+       type INT4 NOT NULL, -- references override_type
+       maintainer TEXT,
+       unique (suite, component, package, type)
+);
+
+-- Critical indexes
+
+CREATE INDEX bin_associations_bin ON bin_associations (bin);
+CREATE INDEX src_associations_source ON src_associations (source);
+CREATE INDEX source_maintainer ON source (maintainer);
+CREATE INDEX binaries_maintainer ON binaries (maintainer);
+CREATE INDEX dsc_files_file ON dsc_files (file);