[pkg-bioc] svn commit r339 r339 - /trunk/tools-ng/database_schema

psychedelys-guest at users.alioth.debian.org psychedelys-guest at users.alioth.debian.org
Sat Oct 6 03:49:06 UTC 2007


Author: psychedelys-guest
Date: Sat Oct  6 03:49:05 2007
New Revision: 339

URL: http://svn.debian.org/wsvn/pkg-bioc/?sc=1&rev=339
Log:
updated databases schema

Modified:
    trunk/tools-ng/database_schema

Modified: trunk/tools-ng/database_schema
URL: http://svn.debian.org/wsvn/pkg-bioc/trunk/tools-ng/database_schema?rev=339&op=diff
==============================================================================
--- trunk/tools-ng/database_schema (original)
+++ trunk/tools-ng/database_schema Sat Oct  6 03:49:05 2007
@@ -12,33 +12,36 @@ TODO : rename some COLUMN to a more engl
 # Howto support the any category ?
 CREATE TABLE IF NOT EXISTS architectures (
   id INTEGER PRIMARY KEY AUTO_INCREMENT NOT NULL,
-  name TEXT UNIQUE,
+    name VARCHAR(10) UNIQUE
   );
 
 CREATE TABLE IF NOT EXISTS tracking (
   id INTEGER PRIMARY KEY AUTO_INCREMENT NOT NULL,
-  deamon TEXT UNIQUE,
+    deamon VARCHAR(50) UNIQUE,
   version TEXT,
   last_start TIMESTAMP,
   last_stop TIMESTAMP,
-  toberun BOOLEAN,
+    toberun BOOLEAN
   );
 
 #every packages name is getting an uniq id
-CREATE TABLE IF NOT EXISTS packages_name (
+CREATE TABLE IF NOT EXISTS packagesname (
   id INTEGER PRIMARY KEY AUTO_INCREMENT NOT NULL,
-  name TEXT,
+    name  VARCHAR(70) UNIQUE
   );
 
 # each repository is getting an uniq id,
 # ext will refer to Debian package
 CREATE TABLE IF NOT EXISTS repository (
   id INTEGER PRIMARY KEY AUTO_INCREMENT NOT NULL,
-  name TEXT UNIQUE,
-  url TEXT,
+    name VARCHAR(20) UNIQUE,
+    url TEXT
   );
 
-
+CREATE TABLE IF NOT EXISTS anomalies (
+     id INTEGER PRIMARY KEY AUTO_INCREMENT NOT NULL,
+     name VARCHAR(100) UNIQUE
+     );
 
 === done in r_pkg_update ===
 
@@ -47,17 +50,32 @@ CREATE TABLE IF NOT EXISTS repository (
 # I just index, (repository, version)
 # last seen just tell me when last time I saw this revision on this repository.
 # size is the trunk of the size, who care about decimals! 
-CREATE TABLE IF NOT EXISTS packages_presence ( 
+CREATE TABLE IF NOT EXISTS packagesupdate ( 
   id INTEGER PRIMARY KEY AUTO_INCREMENT NOT NULL,
-  id.name NOT NULL FOREIGN KEY packages_name.id,
-  id.repo NOT NULL FOREIGN KEY repository.id,
+    packagesname_id INTEGER NOT NULL,
+    repository_id INTEGER NOT NULL,
   version TEXT,
   size INTEGER,
   lastseen TIMESTAMP,
-  UNIQUE (id.name, id.repo)
+    UNIQUE (packagesname_id, repository_id),
+    FOREIGN KEY (packagesname_id) REFERENCES packagesname(id),
+    FOREIGN KEY (repository_id) REFERENCES repository(id)
   );
 
 
+
+CREATE TABLE IF NOT EXISTS cannotbuild (
+    id  INTEGER PRIMARY KEY AUTO_INCREMENT NOT NULL,
+    packagesupdate_id INTEGER NOT NULL,
+    anomalies_id INTEGER NOT NULL,
+    lastcheck TIMESTAMP,
+    UNIQUE (packagesupdate_id, anomalies_id),
+    FOREIGN KEY (packagesupdate_id) REFERENCES packagesupdate(id),
+    FOREIGN KEY (anomalies_id) REFERENCES anomalies(id)
+    );
+
+
+
 === done in r_pkg_ordering ===
 
 # updated during r_pkg_ordering.
@@ -68,8 +86,8 @@ CREATE TABLE IF NOT EXISTS packages_pres
 #            unclean: something happen during the parsing, check the log to see what
 #
 CREATE TABLE IF NOT EXISTS packages (
-  id INTEGER PRIMARY KEY NOT NULL FOREIGN KEY packages_presence.id,
   #[...] all debian/control_fields
+    id INTEGER PRIMARY KEY NOT NULL,
   Author TEXT,
   Package TEXT,
   Date TEXT,
@@ -81,26 +99,33 @@ CREATE TABLE IF NOT EXISTS packages (
   biocViews TEXT,
   isBinary BOOLEAN,
   status ENUM('error','clean','unclean'), 
+    FOREIGN KEY (id) REFERENCES packagesupdate(id)
 )
 
 
 #list of dependencies of a package
 CREATE TABLE IF NOT EXISTS dependencies (
-  id INTEGER PRIMARY KEY NOT NULL FOREIGN KEY packages_presence.id,
-  depend.id NOT NULL FOREIGN KEY packages_presence.id,
+    id INTEGER PRIMARY KEY NOT NULL,
+    depend_id INTEGER NOT NULL,
+    FOREIGN KEY (id) REFERENCES packagesupdate(id),
+    FOREIGN KEY (depend_id) REFERENCES packagesupdate(id)
   );
 
 
 # list of suggestion for a package.
 CREATE TABLE IF NOT EXISTS Suggested (
-  id INTEGER PRIMARY KEY NOT NULL FOREIGN KEY packages_presence.id,
-  suggest.id NOT NULL FOREIGN KEY packages_presence.id,
+    id INTEGER PRIMARY KEY NOT NULL,
+    suggest_id INTEGER NOT NULL,
+    FOREIGN KEY (id) REFERENCES packagesupdate(id),
+    FOREIGN KEY (suggest_id) REFERENCES packagesupdate(id)
   );
 
 # list of recommanded for a package.
 CREATE TABLE IF NOT EXISTS Recommended (
-  id INTEGER PRIMARY KEY NOT NULL FOREIGN KEY packages_presence.id,
-  recommend.id NOT NULL FOREIGN KEY packages_presence.id,
+    id INTEGER PRIMARY KEY NOT NULL,
+    recommend_id INTEGER NOT NULL,
+    FOREIGN KEY (id) REFERENCES packagesupdate(id),
+    FOREIGN KEY (recommend_id) REFERENCES packagesupdate(id)
   );
 
 
@@ -108,11 +133,12 @@ CREATE TABLE IF NOT EXISTS Recommended (
 
 # information extracted from r_pkg_import_cran.pl
 CREATE TABLE IF NOT EXISTS externals_information (
-  id INTEGER PRIMARY KEY NOT NULL FOREIGN KEY packages_presence.id,
+    id INTEGER PRIMARY KEY NOT NULL,
   status_32 TEXT NOT NULL,
   url_32 TEXT,
   status_64 TEXT NOT NULL,
   url_64 TEXT,
+    FOREIGN KEY (id) REFERENCES packagesupdate(id)
 );
 
 
@@ -131,7 +157,7 @@ CREATE TABLE IF NOT EXISTS externals_inf
 
 # This table is needed to generate r_pkg_web
 CREATE TABLE IF NOT EXISTS debianized (
-  id INTEGER PRIMARY KEY NOT NULL FOREIGN KEY packages_presence.id,
+    id INTEGER PRIMARY KEY NOT NULL,
   debversion TEXT, 
   baseversion TEXT, 
   date TIMESTAMP, 
@@ -140,5 +166,6 @@ CREATE TABLE IF NOT EXISTS debianized (
   status_pkg ENUM('donotpackage','failed','deb') NOT NULL,
   status_qa  ENUM('ok','warning','error') NOT NULL,
   motif TEXT,
+    FOREIGN KEY (id) REFERENCES packagesupdate(id)
   );
 




More information about the pkg-bioc-devel mailing list