diff database/schema/config.sql @ 10:1720f45dd495

Replace insane handling of states with something more likely workable.
author David A. Holland
date Sun, 19 Feb 2012 20:21:51 -0500
parents 68cc276ac118
children d42c0db81e28
line wrap: on
line diff
--- a/database/schema/config.sql	Sun Feb 19 19:55:32 2012 -0500
+++ b/database/schema/config.sql	Sun Feb 19 20:21:51 2012 -0500
@@ -24,16 +24,40 @@
 WITHOUT OIDS;
 
 -- Types of bugs (sw-bug, doc-bug, etc.)
-create table classes (
+CREATE TABLE classes (
 	name text		primary key,
 	obsolete boolean	not null,
 	description text
-) without oids;
+) WITHOUT OIDS;
 
 -- Categories of bugs (bin, kern, pkg, etc.)
-create table categories (
+CREATE TABLE categories (
 	name text		primary key,
 	obsolete boolean	not null,
 	description text	
-) without oids;
+) WITHOUT OIDS;
 
+-- States of bugs
+--
+-- The additional booleans govern the semantics of the defined states.
+--    closed		resolved (one way or another)
+--    nagresponsible	the "responsible" users should get nag-mail
+--    nagsubmitter	the "submitter" users should get nag-mail
+--
+-- It is reasonable for multiple states to have the same settings;
+-- such states presumably mean different things in ways the database
+-- doesn't need to know about.
+--
+-- For example: "open" might be defined as
+--     ("open", false, "bug is unresolved", false, true, false)
+-- and "feedback" as
+--     ("feedback", false, "awaiting submitter feedback", false, false, true)
+--
+CREATE TABLE states (
+       name text		primary key,
+       obsolete boolean		not null,
+       description text		,
+       closed boolean		not null,
+       nagresponsible boolean	not null,
+       nagsubmitter boolean	not null
+) WITHOUT OIDS;