X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=rt%2Fetc%2Fschema.Pg;h=48525c8d7bd3b4f5175b7ffcdb204c4112c3da37;hb=8d6987f81d3d5667b00b428580a05e7ac973279a;hp=ba0d6fc6caf9f164dcba3c5330ebad0162ccc3a8;hpb=5fc8c5edf574ab024d4646914b6432d458e2ffbd;p=freeside.git diff --git a/rt/etc/schema.Pg b/rt/etc/schema.Pg index ba0d6fc6c..48525c8d7 100755 --- a/rt/etc/schema.Pg +++ b/rt/etc/schema.Pg @@ -3,9 +3,6 @@ -- ------------------------------------------------------------------ -BEGIN; - - -- @@ -60,7 +57,7 @@ CREATE TABLE Queues ( Created TIMESTAMP NULL , LastUpdatedBy integer NOT NULL DEFAULT 0 , LastUpdated TIMESTAMP NULL , - Disabled int2 NOT NULL DEFAULT 0 , + Disabled integer NOT NULL DEFAULT 0 , PRIMARY KEY (id) ); @@ -93,6 +90,7 @@ CREATE TABLE Links ( ); CREATE UNIQUE INDEX Links1 ON Links (Base, Target, Type) ; +CREATE INDEX Links4 ON Links(Type,LocalBase); -- }}} @@ -110,7 +108,7 @@ CREATE TABLE Principals ( id INTEGER DEFAULT nextval('principals_id_seq') not null, PrincipalType VARCHAR(16) not null, ObjectId integer, - Disabled int2 NOT NULL DEFAULT 0 , + Disabled integer NOT NULL DEFAULT 0 , PRIMARY KEY (id) ); @@ -136,7 +134,7 @@ CREATE TABLE Groups ( Description varchar(255) NULL , Domain varchar(64), Type varchar(64), - Instance varchar(64), + Instance integer, PRIMARY KEY (id) ); @@ -185,22 +183,24 @@ CREATE SEQUENCE transactions_id_seq; CREATE TABLE Transactions ( id INTEGER DEFAULT nextval('transactions_id_seq'), - EffectiveTicket integer NOT NULL DEFAULT 0 , - Ticket integer NOT NULL DEFAULT 0 , + ObjectType varchar(255) NOT NULL , + ObjectId integer NOT NULL DEFAULT 0 , TimeTaken integer NOT NULL DEFAULT 0 , Type varchar(20) NULL , Field varchar(40) NULL , OldValue varchar(255) NULL , NewValue varchar(255) NULL , - Data varchar(100) NULL , + ReferenceType varchar(255) NULL, + OldReference integer NULL , + NewReference integer NULL , + Data varchar(255) NULL , Creator integer NOT NULL DEFAULT 0 , Created TIMESTAMP NULL , PRIMARY KEY (id) ); -CREATE INDEX Transactions1 ON Transactions (Ticket); -CREATE INDEX Transactions2 ON Transactions (EffectiveTicket); +CREATE INDEX Transactions1 ON Transactions (ObjectType, ObjectId); -- }}} @@ -283,6 +283,8 @@ CREATE TABLE GroupMembers ( ); +CREATE UNIQUE INDEX GroupMembers1 ON GroupMembers(GroupId, MemberId); + -- }}} -- {{{ GroupMembersCache @@ -301,7 +303,7 @@ CREATE TABLE CachedGroupMembers ( MemberId int, Via int, ImmediateParentId int, - Disabled int2 NOT NULL DEFAULT 0 , + Disabled integer NOT NULL DEFAULT 0 , PRIMARY KEY (id) ); @@ -364,7 +366,6 @@ CREATE TABLE Users ( CREATE UNIQUE INDEX Users1 ON Users (Name) ; -CREATE INDEX Users2 ON Users (Name); CREATE INDEX Users3 ON Users (id, EmailAddress); CREATE INDEX Users4 ON Users (EmailAddress); @@ -408,7 +409,7 @@ CREATE TABLE Tickets ( LastUpdated TIMESTAMP NULL , Creator integer NOT NULL DEFAULT 0 , Created TIMESTAMP NULL , - Disabled int2 NOT NULL DEFAULT 0 , + Disabled integer NOT NULL DEFAULT 0 , PRIMARY KEY (id) ); @@ -476,7 +477,7 @@ CREATE TABLE Templates ( -- }}} --- {{{ TicketCustomFieldValues +-- {{{ ObjectCustomFieldValues @@ -484,22 +485,32 @@ CREATE TABLE Templates ( -- Sequences for table TICKETCUSTOMFIELDVALUES -- -CREATE SEQUENCE ticketcustomfieldvalues_id_s; +CREATE SEQUENCE objectcustomfieldvalues_id_s; -CREATE TABLE TicketCustomFieldValues ( - id INTEGER DEFAULT nextval('ticketcustomfieldvalues_id_s'), - Ticket int NOT NULL , +CREATE TABLE ObjectCustomFieldValues ( + id INTEGER DEFAULT nextval('objectcustomfieldvalues_id_s'), CustomField int NOT NULL , + ObjectType varchar(255) NULL , + ObjectId int NOT NULL , + SortOrder integer NOT NULL DEFAULT 0 , + Content varchar(255) NULL , + LargeContent text NULL, + ContentType varchar(80) NULL, + ContentEncoding varchar(80) NULL , Creator integer NOT NULL DEFAULT 0 , Created TIMESTAMP NULL , LastUpdatedBy integer NOT NULL DEFAULT 0 , LastUpdated TIMESTAMP NULL , + Disabled integer NOT NULL DEFAULT 0 , PRIMARY KEY (id) ); +CREATE INDEX ObjectCustomFieldValues1 ON ObjectCustomFieldValues (CustomField,ObjectType,ObjectId,Content); +CREATE INDEX ObjectCustomFieldValues2 ON ObjectCustomFieldValues (CustomField,ObjectType,ObjectId); + -- }}} -- {{{ CustomFields @@ -516,7 +527,10 @@ CREATE TABLE CustomFields ( id INTEGER DEFAULT nextval('customfields_id_seq'), Name varchar(200) NULL , Type varchar(200) NULL , - Queue integer NOT NULL DEFAULT 0 , + MaxValues integer NOT NULL DEFAULT 0 , + Repeated integer NOT NULL DEFAULT 0 , + Pattern varchar(65536) NULL , + LookupType varchar(255) NOT NULL , Description varchar(255) NULL , SortOrder integer NOT NULL DEFAULT 0 , @@ -524,7 +538,27 @@ CREATE TABLE CustomFields ( Created TIMESTAMP NULL , LastUpdatedBy integer NOT NULL DEFAULT 0 , LastUpdated TIMESTAMP NULL , - Disabled int2 NOT NULL DEFAULT 0 , + Disabled integer NOT NULL DEFAULT 0 , + PRIMARY KEY (id) + +); + +-- }}} + +-- {{{ ObjectCustomFields + +CREATE SEQUENCE objectcustomfields_id_s; + +CREATE TABLE ObjectCustomFields ( + id INTEGER DEFAULT nextval('objectcustomfields_id_s'), + CustomField integer NOT NULL, + ObjectId integer NOT NULL, + SortOrder integer NOT NULL DEFAULT 0 , + + Creator integer NOT NULL DEFAULT 0 , + Created TIMESTAMP NULL , + LastUpdatedBy integer NOT NULL DEFAULT 0 , + LastUpdated TIMESTAMP NULL , PRIMARY KEY (id) ); @@ -556,6 +590,34 @@ CREATE TABLE CustomFieldValues ( ); +CREATE INDEX CustomFieldValues1 ON CustomFieldValues (CustomField); + +-- }}} + + +-- {{{ Attributes + +CREATE SEQUENCE attributes_id_seq; + +CREATE TABLE Attributes ( + id INTEGER DEFAULT nextval('attributes_id_seq'), + Name varchar(255) NOT NULL , + Description varchar(255) NULL , + Content text, + ContentType varchar(16), + ObjectType varchar(64), + ObjectId integer, + Creator integer NOT NULL DEFAULT 0 , + Created TIMESTAMP NULL , + LastUpdatedBy integer NOT NULL DEFAULT 0 , + LastUpdated TIMESTAMP NULL , + PRIMARY KEY (id) + +); + +CREATE INDEX Attributes1 on Attributes(Name); +CREATE INDEX Attributes2 on Attributes(ObjectType, ObjectId); + -- }}} -- {{{ Sessions @@ -573,6 +635,3 @@ CREATE TABLE sessions ( -- }}} - - -COMMIT;