1--
2-- Table: build
3--
4CREATE TABLE "build" (
5  "id" serial NOT NULL,
6  "siteid" bigint DEFAULT '0' NOT NULL,
7  "projectid" bigint DEFAULT '0' NOT NULL,
8  "stamp" character varying(255) DEFAULT '' NOT NULL,
9  "name" character varying(255) DEFAULT '' NOT NULL,
10  "type" character varying(255) DEFAULT '' NOT NULL,
11  "generator" character varying(255) DEFAULT '' NOT NULL,
12  "starttime" timestamp(0) DEFAULT '1980-01-01 00:00:00' NOT NULL,
13  "endtime" timestamp(0) DEFAULT '1980-01-01 00:00:00' NOT NULL,
14  "submittime" timestamp(0) DEFAULT '1980-01-01 00:00:00' NOT NULL,
15  "command" text NOT NULL,
16  "log" text NOT NULL,
17  "builderrors" smallint DEFAULT '-1',
18  "buildwarnings" smallint DEFAULT '-1',
19  "testnotrun" smallint DEFAULT '-1',
20  "testfailed" smallint DEFAULT '-1',
21  "testpassed" smallint DEFAULT '-1',
22  "testtimestatusfailed" smallint DEFAULT '-1',
23  PRIMARY KEY ("id")
24);
25CREATE INDEX "projectid" on "build" ("projectid");
26CREATE INDEX "starttime" on "build" ("starttime");
27CREATE INDEX "submittime" on "build" ("submittime");
28CREATE INDEX "siteid" on "build" ("siteid");
29CREATE INDEX "stamp" on "build" ("stamp");
30CREATE INDEX "type" on "build" ("type");
31CREATE INDEX "name" on "build" ("name");
32
33--
34-- Table: buildgroup
35--
36CREATE TABLE "buildgroup" (
37  "id" serial NOT NULL,
38  "name" character varying(255) DEFAULT '' NOT NULL,
39  "projectid" bigint DEFAULT '0' NOT NULL,
40  "starttime" timestamp(0) DEFAULT '1980-01-01 00:00:00' NOT NULL,
41  "endtime" timestamp(0) DEFAULT '1980-01-01 00:00:00' NOT NULL,
42  "autoremovetimeframe" bigint DEFAULT '0',
43  "description" text DEFAULT '' NOT NULL,
44  "summaryemail" smallint DEFAULT '0',
45  "includesubprojectotal" smallint DEFAULT '1',
46  "emailcommitters" smallint DEFAULT '0',
47  PRIMARY KEY ("id")
48);
49CREATE INDEX "projectid2" on "buildgroup" ("projectid");
50CREATE INDEX "starttime2" on "buildgroup" ("starttime");
51CREATE INDEX "endtime" on "buildgroup" ("endtime");
52
53--
54-- Table: buildgroupposition
55--
56CREATE TABLE "buildgroupposition" (
57  "buildgroupid" bigint DEFAULT '0' NOT NULL,
58  "position" bigint DEFAULT '0' NOT NULL,
59  "starttime" timestamp(0) DEFAULT '1980-01-01 00:00:00' NOT NULL,
60  "endtime" timestamp(0) DEFAULT '1980-01-01 00:00:00' NOT NULL
61);
62CREATE INDEX "buildgroupid" on "buildgroupposition" ("buildgroupid");
63CREATE INDEX "endtime2" on "buildgroupposition" ("endtime");
64CREATE INDEX "starttime3" on "buildgroupposition" ("starttime");
65CREATE INDEX "position" on "buildgroupposition" ("position");
66
67--
68-- Table: build2group
69--
70CREATE TABLE "build2group" (
71  "groupid" bigint DEFAULT '0' NOT NULL,
72  "buildid" bigint DEFAULT '0' NOT NULL,
73  PRIMARY KEY ("buildid")
74);
75CREATE INDEX "groupid" on "build2group" ("groupid");
76
77--
78-- Table: build2grouprule
79--
80CREATE TABLE "build2grouprule" (
81  "groupid" bigint DEFAULT '0' NOT NULL,
82  "buildtype" character varying(20) DEFAULT '' NOT NULL,
83  "buildname" character varying(255) DEFAULT '' NOT NULL,
84  "siteid" bigint DEFAULT '0' NOT NULL,
85  "expected" smallint DEFAULT '0' NOT NULL,
86  "starttime" timestamp(0) DEFAULT '1980-01-01 00:00:00' NOT NULL,
87  "endtime" timestamp(0) DEFAULT '1980-01-01 00:00:00' NOT NULL
88);
89CREATE INDEX "groupid2" on "build2grouprule" ("groupid");
90CREATE INDEX "buildtype" on "build2grouprule" ("buildtype");
91CREATE INDEX "buildname" on "build2grouprule" ("buildname");
92CREATE INDEX "siteid2" on "build2grouprule" ("siteid");
93CREATE INDEX "expected" on "build2grouprule" ("expected");
94CREATE INDEX "starttime4" on "build2grouprule" ("starttime");
95CREATE INDEX "endtime3" on "build2grouprule" ("endtime");
96
97--
98-- Table: builderror
99--
100CREATE TABLE "builderror" (
101  "buildid" bigint DEFAULT '0' NOT NULL,
102  "type" smallint DEFAULT '0' NOT NULL,
103  "logline" bigint DEFAULT '0' NOT NULL,
104  "text" text NOT NULL,
105  "sourcefile" character varying(255) DEFAULT '' NOT NULL,
106  "sourceline" bigint DEFAULT '0' NOT NULL,
107  "precontext" text,
108  "postcontext" text,
109  "repeatcount" bigint DEFAULT '0' NOT NULL,
110  "crc32" bigint DEFAULT '0' NOT NULL,
111  "newstatus" smallint DEFAULT '0' NOT NULL
112);
113CREATE INDEX "buildid" on "builderror" ("buildid");
114CREATE INDEX "type2" on "builderror" ("type");
115CREATE INDEX "builderror_newstatus" on "builderror" ("newstatus");
116CREATE INDEX "builderror_crc32" on "builderror" ("crc32");
117
118
119--
120-- Table: buildupdate
121--
122CREATE TABLE "buildupdate" (
123  "id" SERIAL NOT NULL,
124  "starttime" timestamp(0) DEFAULT CURRENT_TIMESTAMP NOT NULL,
125  "endtime" timestamp(0) DEFAULT '1980-01-01 00:00:00' NOT NULL,
126  "command" text NOT NULL,
127  "type" character varying(4) DEFAULT '' NOT NULL,
128  "status" text NOT NULL,
129  "nfiles" smallint DEFAULT '-1',
130  "warnings" smallint DEFAULT '-1',
131  "revision" character varying(60) DEFAULT '0' NOT NULL,
132  "priorrevision" character varying(60) DEFAULT '0' NOT NULL,
133  "path" character varying(255) DEFAULT '' NOT NULL,
134   PRIMARY KEY ("id")
135);
136
137
138CREATE TABLE "build2update" (
139  "buildid" bigint NOT NULL,
140  "updateid" bigint NOT NULL,
141  PRIMARY KEY ("buildid")
142);
143CREATE INDEX "build2update_updateid" on "build2update" ("updateid");
144
145--
146-- Table: configure
147--
148CREATE TABLE "configure" (
149  "buildid" bigint DEFAULT '0' NOT NULL,
150  "starttime" timestamp(0) DEFAULT CURRENT_TIMESTAMP NOT NULL,
151  "endtime" timestamp(0) DEFAULT '1980-01-01 00:00:00' NOT NULL,
152  "command" text NOT NULL,
153  "log" text NOT NULL,
154  "status" smallint DEFAULT '0' NOT NULL,
155  "warnings" smallint DEFAULT '-1'
156);
157CREATE INDEX "buildid3" on "configure" ("buildid");
158
159--
160-- Table: coverage
161--
162CREATE TABLE "coverage" (
163  "buildid" bigint DEFAULT '0' NOT NULL,
164  "fileid" bigint DEFAULT '0' NOT NULL,
165  "covered" smallint DEFAULT '0' NOT NULL,
166  "loctested" bigint DEFAULT '0' NOT NULL,
167  "locuntested" bigint DEFAULT '0' NOT NULL,
168  "branchstested" bigint DEFAULT '0' NOT NULL,
169  "branchsuntested" bigint DEFAULT '0' NOT NULL,
170  "functionstested" bigint DEFAULT '0' NOT NULL,
171  "functionsuntested" bigint DEFAULT '0' NOT NULL
172);
173CREATE INDEX "buildid4" on "coverage" ("buildid");
174CREATE INDEX "fileid" on "coverage" ("fileid");
175CREATE INDEX "covered" on "coverage" ("covered");
176
177--
178-- Table: coveragefile
179--
180CREATE TABLE "coveragefile" (
181  "id" serial NOT NULL,
182  "fullpath" character varying(255) DEFAULT '' NOT NULL,
183  "file" bytea,
184  "crc32" bigint DEFAULT NULL,
185  PRIMARY KEY ("id")
186);
187CREATE INDEX "fullpath" on "coveragefile" ("fullpath");
188CREATE INDEX "crc32" on "coveragefile" ("crc32");
189
190--
191-- Table: coveragefilelog
192--
193CREATE TABLE "coveragefilelog" (
194  "buildid" bigint DEFAULT '0' NOT NULL,
195  "fileid" bigint DEFAULT '0' NOT NULL,
196  "log" bytea NOT NULL
197);
198CREATE INDEX "fileid2" on "coveragefilelog" ("fileid");
199CREATE INDEX "buildid5" on "coveragefilelog" ("buildid");
200
201--
202-- Table: coveragesummary
203--
204CREATE TABLE "coveragesummary" (
205  "buildid" bigint DEFAULT '0' NOT NULL,
206  "loctested" bigint DEFAULT '0' NOT NULL,
207  "locuntested" bigint DEFAULT '0' NOT NULL,
208  PRIMARY KEY ("buildid")
209);
210
211--
212-- Table: dynamicanalysis
213--
214CREATE TABLE "dynamicanalysis" (
215  "id" serial NOT NULL,
216  "buildid" bigint DEFAULT '0' NOT NULL,
217  "status" character varying(10) DEFAULT '' NOT NULL,
218  "checker" character varying(60) DEFAULT '' NOT NULL,
219  "name" character varying(255) DEFAULT '' NOT NULL,
220  "path" character varying(255) DEFAULT '' NOT NULL,
221  "fullcommandline" character varying(255) DEFAULT '' NOT NULL,
222  "log" text NOT NULL,
223  PRIMARY KEY ("id")
224);
225CREATE INDEX "buildid6" on "dynamicanalysis" ("buildid");
226
227--
228-- Table: dynamicanalysisdefect
229--
230CREATE TABLE "dynamicanalysisdefect" (
231  "dynamicanalysisid" bigint DEFAULT '0' NOT NULL,
232  "type" character varying(50) DEFAULT '' NOT NULL,
233  "value" bigint DEFAULT '0' NOT NULL
234);
235CREATE INDEX "buildid7" on "dynamicanalysisdefect" ("dynamicanalysisid");
236
237--
238-- Table: image
239--
240CREATE TABLE "image" (
241  "id" serial NOT NULL,
242  "img" bytea NOT NULL,
243  "extension" text NOT NULL,
244  "checksum" bigint NOT NULL,
245  CONSTRAINT "id" PRIMARY KEY ("id")
246);
247CREATE INDEX "checksum" on "image" ("checksum");
248
249--
250-- Table: test2image
251--
252CREATE TABLE "test2image" (
253  "id" serial NOT NULL,
254  "imgid" bigint NOT NULL,
255  "testid" bigint NOT NULL,
256  "role" text NOT NULL,
257   PRIMARY KEY ("id")
258);
259CREATE INDEX "imgid" on "test2image" ("imgid");
260CREATE INDEX "testid" on "test2image" ("testid");
261
262--
263-- Table: note
264--
265CREATE TABLE "note" (
266  "id" bigserial NOT NULL,
267  "text" text NOT NULL,
268  "name" character varying(255) NOT NULL,
269  "crc32" bigint NOT NULL,
270  PRIMARY KEY ("id")
271);
272CREATE INDEX "crc322" on "note" ("crc32");
273
274--
275-- Table: project
276--
277CREATE TABLE "project" (
278  "id" serial NOT NULL,
279  "name" character varying(255) DEFAULT '' NOT NULL,
280  "description" text NOT NULL,
281  "homeurl" character varying(255) DEFAULT '' NOT NULL,
282  "cvsurl" character varying(255) DEFAULT '' NOT NULL,
283  "bugtrackerurl" character varying(255) DEFAULT '' NOT NULL,
284  "bugtrackerfileurl" character varying(255) DEFAULT '' NOT NULL,
285  "documentationurl" character varying(255) DEFAULT '' NOT NULL,
286  "imageid" bigint DEFAULT '0' NOT NULL,
287  "public" smallint DEFAULT '1' NOT NULL,
288  "coveragethreshold" smallint DEFAULT '70' NOT NULL,
289  "testingdataurl" character varying(255) DEFAULT '' NOT NULL,
290  "nightlytime" character varying(50) DEFAULT '00:00:00' NOT NULL,
291  "googletracker" character varying(50) DEFAULT '' NOT NULL,
292  "emaillowcoverage" smallint DEFAULT '0' NOT NULL,
293  "emailtesttimingchanged" smallint DEFAULT '0' NOT NULL,
294  "emailbrokensubmission" smallint DEFAULT '1' NOT NULL,
295  "emailredundantfailures" smallint DEFAULT '0' NOT NULL,
296  "emailadministrator" smallint DEFAULT '1' NOT NULL,
297  "showipaddresses" smallint DEFAULT '1' NOT NULL,
298  "cvsviewertype" character varying(10) DEFAULT NULL,
299  "testtimestd" numeric(3,1) DEFAULT '4.0',
300  "testtimestdthreshold" numeric(3,1) DEFAULT '1.0',
301  "showtesttime" smallint DEFAULT '0',
302  "testtimemaxstatus" smallint DEFAULT '3',
303  "emailmaxitems" smallint DEFAULT '5',
304  "emailmaxchars" bigint DEFAULT '255',
305  "displaylabels" smallint default '1',
306  "autoremovetimeframe" bigint default '0',
307  "autoremovemaxbuilds" bigint default '300',
308  "uploadquota" bigint default '0',
309  "webapikey" character varying(40) DEFAULT '' NOT NULL,
310  "tokenduration" integer DEFAULT '0',
311  "showcoveragecode" smallint default '1',
312  PRIMARY KEY ("id")
313);
314CREATE INDEX "name2" on "project" ("name");
315CREATE INDEX "public" on "project" ("public");
316
317--
318-- Table: site
319--
320CREATE TABLE "site" (
321  "id" serial NOT NULL,
322  "name" character varying(255) DEFAULT '' NOT NULL,
323  "ip" character varying(255) DEFAULT '' NOT NULL,
324  "latitude" character varying(10) DEFAULT '' NOT NULL,
325  "longitude" character varying(10) DEFAULT '' NOT NULL,
326  "outoforder" smallint DEFAULT '0' NOT NULL,
327  PRIMARY KEY ("id")
328);
329CREATE INDEX "name3" on "site" ("name");
330
331--
332-- Table: siteinformation
333--
334CREATE TABLE "siteinformation" (
335  "siteid" bigint NOT NULL,
336  "timestamp" timestamp(0) DEFAULT '1980-01-01 00:00:00' NOT NULL,
337  "processoris64bits" smallint DEFAULT '-1' NOT NULL,
338  "processorvendor" character varying(255) DEFAULT 'NA' NOT NULL,
339  "processorvendorid" character varying(255) DEFAULT 'NA' NOT NULL,
340  "processorfamilyid" bigint DEFAULT '-1' NOT NULL,
341  "processormodelid" bigint DEFAULT '-1' NOT NULL,
342  "processorcachesize" bigint DEFAULT '-1' NOT NULL,
343  "numberlogicalcpus" smallint DEFAULT '-1' NOT NULL,
344  "numberphysicalcpus" smallint DEFAULT '-1' NOT NULL,
345  "totalvirtualmemory" bigint DEFAULT '-1' NOT NULL,
346  "totalphysicalmemory" bigint DEFAULT '-1' NOT NULL,
347  "logicalprocessorsperphysical" bigint DEFAULT '-1' NOT NULL,
348  "processorclockfrequency" bigint DEFAULT '-1' NOT NULL,
349  "description" character varying(255) DEFAULT 'NA' NOT NULL
350);
351CREATE INDEX "siteid3" on "siteinformation" ("siteid", "timestamp");
352
353--
354-- Table: buildinformation
355--
356CREATE TABLE "buildinformation" (
357  "buildid" bigint NOT NULL,
358  "osname" character varying(255) NOT NULL,
359  "osplatform" character varying(255) NOT NULL,
360  "osrelease" character varying(255) NOT NULL,
361  "osversion" character varying(255) NOT NULL,
362  "compilername" character varying(255) NOT NULL,
363  "compilerversion" character varying(20) NOT NULL,
364  PRIMARY KEY ("buildid")
365);
366
367--
368-- Table: site2user
369--
370CREATE TABLE "site2user" (
371  "siteid" bigint DEFAULT '0' NOT NULL,
372  "userid" bigint DEFAULT '0' NOT NULL
373);
374CREATE INDEX "siteid4" on "site2user" ("siteid");
375CREATE INDEX "userid" on "site2user" ("userid");
376
377--
378-- Table: test
379--
380CREATE TABLE "test" (
381  "id" serial NOT NULL,
382  "projectid" bigint NOT NULL,
383  "crc32" bigint NOT NULL,
384  "name" character varying(255) DEFAULT '' NOT NULL,
385  "path" character varying(255) DEFAULT '' NOT NULL,
386  "command" text NOT NULL,
387  "details" text NOT NULL,
388  "output" bytea NOT NULL,
389  PRIMARY KEY ("id")
390);
391CREATE INDEX "crc323" on "test" ("crc32");
392CREATE INDEX "testprojectid" on "test" ("projectid");
393CREATE INDEX "name4" on "test" ("name");
394
395--
396-- Table: build2test
397--
398CREATE TABLE "build2test" (
399  "buildid" bigint DEFAULT '0' NOT NULL,
400  "testid" bigint DEFAULT '0' NOT NULL,
401  "status" character varying(10) DEFAULT '' NOT NULL,
402  "time" numeric(7,2) DEFAULT '0.00' NOT NULL,
403  "timemean" numeric(7,2) DEFAULT '0.00' NOT NULL,
404  "timestd" numeric(7,2) DEFAULT '0.00' NOT NULL,
405  "timestatus" smallint DEFAULT '0' NOT NULL,
406  "newstatus" smallint DEFAULT '0' NOT NULL
407);
408CREATE INDEX "buildid8" on "build2test" ("buildid");
409CREATE INDEX "testid2" on "build2test" ("testid");
410CREATE INDEX "status" on "build2test" ("status");
411CREATE INDEX "timestatus" on "build2test" ("timestatus");
412CREATE INDEX "newstatus" on "build2test" ("newstatus");
413
414--
415-- Table: buildtesttime
416--
417CREATE TABLE "buildtesttime" (
418  "buildid" bigint DEFAULT '0' NOT NULL,
419  "time" numeric(7,2) DEFAULT '0.00' NOT NULL,
420  PRIMARY KEY ("buildid")
421);
422
423--
424-- Table: updatefile
425--
426CREATE TABLE "updatefile" (
427  "updateid" bigint DEFAULT '0' NOT NULL,
428  "filename" character varying(255) DEFAULT '' NOT NULL,
429  "checkindate" timestamp(0) DEFAULT CURRENT_TIMESTAMP NOT NULL,
430  "author" character varying(255) DEFAULT '' NOT NULL,
431  "email" character varying(255) DEFAULT '' NOT NULL,
432  "committer" character varying(255) DEFAULT '' NOT NULL,
433  "committeremail" character varying(255) DEFAULT '' NOT NULL,
434  "log" text NOT NULL,
435  "revision" character varying(60) DEFAULT '0' NOT NULL,
436  "priorrevision" character varying(60) DEFAULT '0' NOT NULL,
437  "status" character varying(12) DEFAULT '' NOT NULL
438);
439CREATE INDEX "updatefile_updateid" on "updatefile" ("updateid");
440CREATE INDEX "updatefile_author" on "updatefile" ("author");
441
442--
443-- Table: user
444--
445CREATE TABLE "user" (
446  "id" serial NOT NULL,
447  "email" character varying(255) DEFAULT '' NOT NULL,
448  "password" character varying(255) DEFAULT '' NOT NULL,
449  "firstname" character varying(255) DEFAULT '' NOT NULL,
450  "lastname" character varying(255) DEFAULT '' NOT NULL,
451  "institution" character varying(255) DEFAULT '' NOT NULL,
452  "admin" smallint DEFAULT '0' NOT NULL,
453  "cookiekey" character varying(40)  DEFAULT '' NOT NULL,
454  PRIMARY KEY ("id")
455);
456CREATE INDEX "email" on "user" ("email");
457
458
459--
460-- Table: usertemp
461--
462CREATE TABLE "usertemp" (
463  "email" character varying(255) DEFAULT '' NOT NULL,
464  "password" character varying(255) DEFAULT '' NOT NULL,
465  "firstname" character varying(255) DEFAULT '' NOT NULL,
466  "lastname" character varying(255) DEFAULT '' NOT NULL,
467  "institution" character varying(255) DEFAULT '' NOT NULL,
468  "registrationdate" timestamp(0) DEFAULT CURRENT_TIMESTAMP NOT NULL,
469  "registrationkey" character varying(40)  DEFAULT '' NOT NULL,
470  PRIMARY KEY ("email")
471);
472CREATE INDEX "usertemp_registrationdate" on "usertemp" ("registrationdate");
473
474--
475-- Table: user2project
476--
477CREATE TABLE "user2project" (
478  "userid" bigint DEFAULT '0' NOT NULL,
479  "projectid" bigint DEFAULT '0' NOT NULL,
480  "role" bigint DEFAULT '0' NOT NULL,
481  "cvslogin" character varying(50) DEFAULT '' NOT NULL,
482  "emailtype" smallint DEFAULT '0' NOT NULL,
483  "emailcategory" smallint DEFAULT '62' NOT NULL,
484  "emailsuccess" smallint DEFAULT '0' NOT NULL,
485  "emailmissingsites" smallint DEFAULT '0' NOT NULL,
486  PRIMARY KEY ("userid", "projectid")
487);
488CREATE INDEX "cvslogin" on "user2project" ("cvslogin");
489CREATE INDEX "emailtype" on "user2project" ("emailtype");
490CREATE INDEX "emailsuccess" on "user2project" ("emailsuccess");
491CREATE INDEX "emailmissingsites" on "user2project" ("emailmissingsites");
492
493--
494-- Table: buildnote
495--
496CREATE TABLE "buildnote" (
497  "buildid" bigint NOT NULL,
498  "userid" bigint NOT NULL,
499  "note" text NOT NULL,
500  "timestamp" timestamp(0) NOT NULL,
501  "status" smallint DEFAULT '0' NOT NULL
502);
503CREATE INDEX "buildid10" on "buildnote" ("buildid");
504
505--
506-- Table: repositories
507--
508CREATE TABLE "repositories" (
509  "id" serial NOT NULL,
510  "url" character varying(255) NOT NULL,
511  "username" character varying(50) DEFAULT '' NOT NULL,
512  "password" character varying(50) DEFAULT '' NOT NULL,
513  "branch" character varying(60) DEFAULT '' NOT NULL,
514  PRIMARY KEY ("id")
515);
516
517--
518-- Table: project2repositories
519--
520CREATE TABLE "project2repositories" (
521  "projectid" bigint NOT NULL,
522  "repositoryid" bigint NOT NULL,
523  PRIMARY KEY ("projectid", "repositoryid")
524);
525
526--
527-- Table: testmeasurement
528--
529CREATE TABLE "testmeasurement" (
530  "id" serial NOT NULL,
531  "testid" bigint NOT NULL,
532  "name" character varying(70) NOT NULL,
533  "type" character varying(70) NOT NULL,
534  "value" text NOT NULL,
535   PRIMARY KEY ("id")
536);
537CREATE INDEX "testid3" on "testmeasurement" ("testid");
538
539--
540-- Table: dailyupdate
541--
542CREATE TABLE "dailyupdate" (
543  "id" serial NOT NULL,
544  "projectid" bigint NOT NULL,
545  "date" date NOT NULL,
546  "command" text NOT NULL,
547  "type" character varying(4) DEFAULT '' NOT NULL,
548  "status" smallint DEFAULT '0' NOT NULL,
549  "revision" character varying(60) DEFAULT '0' NOT NULL,
550  PRIMARY KEY ("id")
551);
552CREATE INDEX "date" on "dailyupdate" ("date");
553CREATE INDEX "projectid3" on "dailyupdate" ("projectid");
554
555--
556-- Table: dailyupdatefile
557--
558CREATE TABLE "dailyupdatefile" (
559  "dailyupdateid" bigint DEFAULT '0' NOT NULL,
560  "filename" character varying(255) DEFAULT '' NOT NULL,
561  "checkindate" timestamp(0) DEFAULT CURRENT_TIMESTAMP NOT NULL,
562  "author" character varying(255) DEFAULT '' NOT NULL,
563  "email" character varying(255) DEFAULT '' NOT NULL,
564  "log" text NOT NULL,
565  "revision" character varying(60) DEFAULT '0' NOT NULL,
566  "priorrevision" character varying(60) DEFAULT '0' NOT NULL
567);
568CREATE INDEX "buildid11" on "dailyupdatefile" ("dailyupdateid");
569CREATE INDEX "buildid11_2" on "dailyupdatefile" ("author");
570
571--
572-- Table: builderrordiff
573--
574CREATE TABLE "builderrordiff" (
575  "buildid" bigint NOT NULL,
576  "type" smallint NOT NULL,
577  "difference_positive" bigint NOT NULL,
578  "difference_negative" bigint NOT NULL
579);
580CREATE INDEX "builderrordiff_buildid" on "builderrordiff" ("buildid");
581CREATE INDEX "builderrordiff_type" on "builderrordiff" ("type");
582CREATE INDEX "builderrordiff_difference_positive" on "builderrordiff" ("difference_positive");
583CREATE INDEX "builderrordiff_difference_negative" on "builderrordiff" ("difference_negative");
584
585--
586-- Table: testdiff
587--
588CREATE TABLE "testdiff" (
589  "buildid" bigint NOT NULL,
590  "type" smallint NOT NULL,
591  "difference_positive" bigint NOT NULL,
592  "difference_negative" bigint NOT NULL
593);
594CREATE INDEX "buildid13" on "testdiff" ("buildid", "type");
595CREATE INDEX "testdiff_type" on "testdiff" ("type");
596CREATE INDEX "testdiff_difference_positive" on "testdiff" ("difference_positive");
597CREATE INDEX "testdiff_difference_negative" on "testdiff" ("difference_negative");
598
599--
600-- Table: build2note
601--
602CREATE TABLE "build2note" (
603  "buildid" bigint NOT NULL,
604  "noteid" bigint NOT NULL,
605  "time" timestamp(0) DEFAULT CURRENT_TIMESTAMP NOT NULL
606);
607CREATE INDEX "buildid14" on "build2note" ("buildid");
608CREATE INDEX "noteid" on "build2note" ("noteid");
609
610--
611-- Table: userstatistics
612--
613CREATE TABLE "userstatistics" (
614  "userid" bigint NOT NULL,
615  "projectid" smallint NOT NULL,
616  "checkindate" timestamp(0) DEFAULT CURRENT_TIMESTAMP NOT NULL,
617  "totalupdatedfiles" bigint NOT NULL,
618  "totalbuilds" bigint NOT NULL,
619  "nfixedwarnings" bigint NOT NULL,
620  "nfailedwarnings" bigint NOT NULL,
621  "nfixederrors" bigint NOT NULL,
622  "nfailederrors" bigint NOT NULL,
623  "nfixedtests" bigint NOT NULL,
624  "nfailedtests" bigint NOT NULL
625);
626CREATE INDEX "userid2" on "userstatistics" ("userid");
627CREATE INDEX "projectid4" on "userstatistics" ("projectid");
628CREATE INDEX "checkindate" on "userstatistics" ("checkindate");
629
630--
631-- Table: version
632--
633CREATE TABLE "version" (
634  "major" smallint NOT NULL,
635  "minor" smallint NOT NULL,
636  "patch" smallint NOT NULL
637);
638
639--
640-- Table: summaryemail
641--
642CREATE TABLE "summaryemail" (
643  "buildid" bigint NOT NULL,
644  "date" date NOT NULL,
645  "groupid" smallint NOT NULL
646);
647CREATE INDEX "date2" on "summaryemail" ("date");
648CREATE INDEX "groupid3" on "summaryemail" ("groupid");
649
650--
651-- Table: configureerror
652--
653CREATE TABLE "configureerror" (
654  "buildid" bigint NOT NULL,
655  "type" smallint NOT NULL,
656  "text" text NOT NULL
657);
658CREATE INDEX "buildid15" on "configureerror" ("buildid");
659CREATE INDEX "type3" on "configureerror" ("type");
660
661--
662-- Table: configureerrordiff
663--
664CREATE TABLE "configureerrordiff" (
665  "buildid" bigint NOT NULL,
666  "type" smallint NOT NULL,
667  "difference" bigint NOT NULL
668);
669CREATE INDEX "buildid16" on "configureerrordiff" ("buildid");
670CREATE INDEX "type4" on "configureerrordiff" ("type");
671
672--
673-- Table: coveragesummarydiff
674--
675CREATE TABLE "coveragesummarydiff" (
676  "buildid" bigint NOT NULL,
677  "loctested" bigint DEFAULT '0' NOT NULL,
678  "locuntested" bigint DEFAULT '0' NOT NULL,
679  PRIMARY KEY ("buildid")
680);
681
682--
683-- Table: banner
684--
685CREATE TABLE "banner" (
686  "projectid" bigint NOT NULL,
687  "text" character varying(500) NOT NULL,
688  PRIMARY KEY ("projectid")
689);
690
691--
692-- Table: coveragefile2user
693--
694CREATE TABLE "coveragefile2user" (
695  "fileid" bigint NOT NULL,
696  "userid" bigint NOT NULL,
697  "position" smallint NOT NULL
698);
699CREATE INDEX "coveragefileid" on "coveragefile2user" ("fileid");
700CREATE INDEX "userid3" on "coveragefile2user" ("userid");
701
702--
703-- Table: label
704--
705CREATE TABLE "label" (
706  "id" bigserial NOT NULL,
707  "text" character varying(255) NOT NULL,
708  PRIMARY KEY ("id"),
709  CONSTRAINT "text" UNIQUE ("text")
710);
711
712--
713-- Table: label2build
714--
715CREATE TABLE "label2build" (
716  "labelid" bigint NOT NULL,
717  "buildid" bigint NOT NULL,
718  PRIMARY KEY ("labelid", "buildid")
719);
720
721--
722-- Table: label2buildfailure
723--
724CREATE TABLE "label2buildfailure" (
725  "labelid" bigint NOT NULL,
726  "buildfailureid" bigint NOT NULL,
727  PRIMARY KEY ("labelid", "buildfailureid")
728);
729
730--
731-- Table: label2coveragefile
732--
733CREATE TABLE "label2coveragefile" (
734  "labelid" bigint NOT NULL,
735  "buildid" bigint NOT NULL,
736  "coveragefileid" bigint NOT NULL,
737  PRIMARY KEY ("labelid", "buildid", "coveragefileid")
738);
739
740--
741-- Table: label2dynamicanalysis
742--
743CREATE TABLE "label2dynamicanalysis" (
744  "labelid" bigint NOT NULL,
745  "dynamicanalysisid" bigint NOT NULL,
746  PRIMARY KEY ("labelid", "dynamicanalysisid")
747);
748
749--
750-- Table: label2test
751--
752CREATE TABLE "label2test" (
753  "labelid" bigint NOT NULL,
754  "buildid" bigint NOT NULL,
755  "testid" bigint NOT NULL,
756  PRIMARY KEY ("labelid", "buildid", "testid")
757);
758
759--
760-- Table: label2update
761--
762CREATE TABLE "label2update" (
763  "labelid" bigint NOT NULL,
764  "updateid" bigint NOT NULL,
765  PRIMARY KEY ("labelid", "updateid")
766);
767
768--
769-- Table: subproject
770--
771CREATE TABLE "subproject" (
772  "id" bigserial NOT NULL,
773  "name" character varying(255) NOT NULL,
774  "projectid" bigint NOT NULL,
775  "starttime" timestamp(0) DEFAULT '1980-01-01 00:00:00' NOT NULL,
776  "endtime" timestamp(0) DEFAULT '1980-01-01 00:00:00' NOT NULL,
777  PRIMARY KEY ("id")
778);
779CREATE INDEX "projectid5" on "subproject" ("projectid");
780
781--
782-- Table: subproject2subproject
783--
784CREATE TABLE "subproject2subproject" (
785  "subprojectid" bigint NOT NULL,
786  "dependsonid" bigint NOT NULL,
787  "starttime" timestamp(0) DEFAULT '1980-01-01 00:00:00' NOT NULL,
788  "endtime" timestamp(0) DEFAULT '1980-01-01 00:00:00' NOT NULL
789);
790CREATE INDEX "subprojectid" on "subproject2subproject" ("subprojectid");
791CREATE INDEX "dependsonid" on "subproject2subproject" ("dependsonid");
792
793--
794-- Table: subproject2build
795--
796CREATE TABLE "subproject2build" (
797  "subprojectid" bigint NOT NULL,
798  "buildid" bigint NOT NULL,
799  PRIMARY KEY ("buildid")
800);
801CREATE INDEX "subprojectid2" on "subproject2build" ("subprojectid");
802
803--
804-- Table: buildfailure
805--
806CREATE TABLE "buildfailure" (
807  "id" bigserial NOT NULL,
808  "buildid" bigint NOT NULL,
809  "type" smallint NOT NULL,
810  "workingdirectory" character varying(255) NOT NULL,
811  "stdoutput" text NOT NULL,
812  "stderror" text NOT NULL,
813  "exitcondition" character varying(255) NOT NULL,
814  "language" character varying(64) NOT NULL,
815  "targetname" character varying(255) NOT NULL,
816  "outputfile" character varying(255) NOT NULL,
817  "outputtype" character varying(255) NOT NULL,
818  "sourcefile" character varying(512) NOT NULL,
819  "crc32" bigint DEFAULT '0' NOT NULL,
820  "newstatus" smallint DEFAULT '0' NOT NULL,
821  PRIMARY KEY ("id")
822);
823CREATE INDEX "buildid17" on "buildfailure" ("buildid");
824CREATE INDEX "type5" on "buildfailure" ("type");
825CREATE INDEX "buildfailure_newstatus" on "buildfailure" ("newstatus");
826CREATE INDEX "buildfailure_crc32" on "buildfailure" ("crc32");
827
828--
829-- Table: buildfailureargument
830--
831CREATE TABLE "buildfailureargument" (
832  "id" bigserial NOT NULL,
833  "argument" character varying(255) NOT NULL,
834  PRIMARY KEY ("id")
835);
836CREATE INDEX "argument" on "buildfailureargument" ("argument");
837
838--
839-- Table: buildfailure2argument
840--
841CREATE TABLE "buildfailure2argument" (
842  "buildfailureid" bigint NOT NULL,
843  "argumentid" bigint NOT NULL,
844  "place" bigint NOT NULL
845);
846CREATE INDEX "argumentid" on "buildfailure2argument" ("argumentid");
847CREATE INDEX "buildfailureid" on "buildfailure2argument" ("buildfailureid");
848
849--
850-- Table: labelemail
851--
852CREATE TABLE "labelemail" (
853  "projectid" bigint NOT NULL,
854  "userid" bigint NOT NULL,
855  "labelid" bigint NOT NULL
856);
857CREATE INDEX "projectid6" on "labelemail" ("projectid");
858CREATE INDEX "userid4" on "labelemail" ("userid");
859
860--
861-- Table: buildemail
862--
863CREATE TABLE "buildemail" (
864  "userid" bigint NOT NULL,
865  "buildid" bigint NOT NULL,
866  "category" smallint NOT NULL,
867  "time" timestamp(0) DEFAULT '1980-01-01 00:00:00' NOT NULL
868);
869CREATE INDEX "buildemail_userid" on "buildemail" ("userid");
870CREATE INDEX "buildemail_buildid" on "buildemail" ("buildid");
871CREATE INDEX "buildemail_category" on "buildemail" ("category");
872CREATE INDEX "buildemail_time" on "buildemail" ("time");
873
874--
875-- Table: coveragefilepriority
876--
877CREATE TABLE "coveragefilepriority" (
878  "id" serial NOT NULL,
879  "priority" smallint NOT NULL,
880  "fullpath" character varying(255) DEFAULT '' NOT NULL,
881  "projectid" bigint  NOT NULL,
882  PRIMARY KEY ("id")
883);
884CREATE INDEX "coveragefilepriority_priority" on "coveragefilepriority" ("priority");
885CREATE INDEX "coveragefilepriority_fullpath" on "coveragefilepriority" ("fullpath");
886CREATE INDEX "coveragefilepriority_projectid" on "coveragefilepriority" ("projectid");
887
888
889--
890-- Table: submission
891--
892CREATE TABLE "submission" (
893  "id" serial NOT NULL,
894  "filename" character varying(500) DEFAULT '' NOT NULL,
895  "projectid" bigint  NOT NULL,
896  "status" smallint NOT NULL,
897  "attempts" bigint DEFAULT '0' NOT NULL,
898  "filesize" bigint DEFAULT '0' NOT NULL,
899  "filemd5sum" character varying(32) DEFAULT '' NOT NULL,
900  "lastupdated" timestamp(0) DEFAULT '1980-01-01 00:00:00' NOT NULL,
901  "created" timestamp(0) DEFAULT '1980-01-01 00:00:00' NOT NULL,
902  "started" timestamp(0) DEFAULT '1980-01-01 00:00:00' NOT NULL,
903  "finished" timestamp(0) DEFAULT '1980-01-01 00:00:00' NOT NULL,
904  PRIMARY KEY ("id")
905);
906CREATE INDEX "submission_projectid" on "submission" ("projectid");
907CREATE INDEX "submission_status" on "submission" ("status");
908CREATE INDEX "submission_finished" on "submission" ("finished");
909
910
911CREATE TABLE "blockbuild" (
912  "id" serial NOT NULL,
913  "projectid" bigint  NOT NULL,
914  "buildname" character varying(255) DEFAULT '' NOT NULL,
915  "sitename"  character varying(255) DEFAULT '' NOT NULL,
916  "ipaddress" character varying(255) DEFAULT '' NOT NULL,
917  PRIMARY KEY ("id")
918);
919CREATE INDEX "blockbuild_projectid" on "blockbuild" ("projectid");
920CREATE INDEX "blockbuild_buildname" on "blockbuild" ("buildname");
921CREATE INDEX "blockbuild_sitename" on "blockbuild" ("sitename");
922CREATE INDEX "blockbuild_ipaddress" on "blockbuild" ("ipaddress");
923
924
925--
926-- Table: client_cmake
927--
928CREATE TABLE "client_cmake" (
929  "id" serial NOT NULL,
930  "version" character varying(255) NOT NULL,
931  PRIMARY KEY ("id")
932);
933
934
935--
936-- Table: client_compiler
937--
938CREATE TABLE "client_compiler" (
939  "id" serial NOT NULL,
940  "name" character varying(255) NOT NULL,
941  "version" character varying(255) NOT NULL,
942  PRIMARY KEY ("id")
943);
944
945
946--
947-- Table: client_job
948--
949CREATE TABLE "client_job" (
950  "id" bigserial NOT NULL,
951  "scheduleid" bigint NOT NULL,
952  "osid" smallint NOT NULL,
953  "siteid" bigint DEFAULT NULL,
954  "startdate" timestamp(0) DEFAULT '1980-01-01 00:00:00' NOT NULL,
955  "enddate" timestamp(0) DEFAULT '1980-01-01 00:00:00' NOT NULL,
956  "status" bigint DEFAULT NULL,
957  "output" text,
958  "cmakeid" bigint NOT NULL,
959  "compilerid" bigint NOT NULL
960);
961CREATE INDEX "client_job_scheduleid" on "client_job" ("scheduleid");
962CREATE INDEX "client_job_startdate" on "client_job" ("startdate");
963CREATE INDEX "client_job_enddate" on "client_job" ("enddate");
964CREATE INDEX "client_job_status" on "client_job" ("status");
965
966
967--
968-- Table: client_jobschedule
969--
970CREATE TABLE "client_jobschedule" (
971  "id" bigserial NOT NULL,
972  "userid" bigint DEFAULT NULL,
973  "projectid" bigint DEFAULT NULL,
974  "cmakecache" text NOT NULL,
975  "clientscript" text default '',
976  "startdate" timestamp(0) DEFAULT '1980-01-01 00:00:00' NOT NULL,
977  "enddate" timestamp(0) DEFAULT '1980-01-01 00:00:00' NOT NULL,
978  "type" smallint NOT NULL,
979  "starttime" time DEFAULT '00:00:00' NOT NULL,
980  "repeattime" numeric(6,2) DEFAULT '0.00' NOT NULL,
981  "enable" smallint NOT NULL,
982  "lastrun" timestamp(0) DEFAULT '1980-01-01 00:00:00' NOT NULL,
983  "repository" character varying(512) default '',
984  "module" character varying(255) default '',
985  "buildnamesuffix" character varying(255) default '',
986  "tag" character varying(255) default '',
987  "buildconfiguration" smallint default '0',
988  "description" text default ''
989);
990CREATE INDEX "client_jobschedule_userid" on "client_jobschedule" ("userid");
991CREATE INDEX "client_jobschedule_projectid" on "client_jobschedule" ("projectid");
992CREATE INDEX "client_jobschedule_enable" on "client_jobschedule" ("enable");
993CREATE INDEX "client_jobschedule_starttime" on "client_jobschedule" ("starttime");
994CREATE INDEX "client_jobschedule_repeattime" on "client_jobschedule" ("repeattime");
995
996--
997-- Table: client_jobschedule2build
998--
999CREATE TABLE "client_jobschedule2build" (
1000  "scheduleid" bigint NOT NULL,
1001  "buildid" bigint NOT NULL,
1002  Constraint "scheduleid1" UNIQUE ("scheduleid", "buildid")
1003);
1004
1005--
1006-- Table: client_jobschedule2cmake
1007--
1008CREATE TABLE "client_jobschedule2cmake" (
1009  "scheduleid" bigint NOT NULL,
1010  "cmakeid" bigint NOT NULL,
1011  Constraint "scheduleid2" UNIQUE ("scheduleid", "cmakeid")
1012);
1013
1014--
1015-- Table: client_jobschedule2compiler
1016--
1017CREATE TABLE "client_jobschedule2compiler" (
1018  "scheduleid" bigint NOT NULL,
1019  "compilerid" bigint NOT NULL,
1020  Constraint "scheduleid3" UNIQUE ("scheduleid", "compilerid")
1021);
1022
1023--
1024-- Table: client_jobschedule2library
1025--
1026CREATE TABLE "client_jobschedule2library" (
1027  "scheduleid" bigint NOT NULL,
1028  "libraryid" bigint NOT NULL,
1029  Constraint "scheduleid4" UNIQUE ("scheduleid", "libraryid")
1030);
1031
1032
1033--
1034-- Table: client_jobschedule2os
1035--
1036CREATE TABLE "client_jobschedule2os" (
1037  "scheduleid" bigint NOT NULL,
1038  "osid" bigint NOT NULL,
1039  Constraint "scheduleid5" UNIQUE ("scheduleid", "osid")
1040);
1041
1042
1043--
1044-- Table: client_jobschedule2site
1045--
1046CREATE TABLE "client_jobschedule2site" (
1047  "scheduleid" bigint NOT NULL,
1048  "siteid" bigint NOT NULL,
1049  Constraint "scheduleid6" UNIQUE ("scheduleid", "siteid")
1050);
1051
1052--
1053-- Table client_jobschedule2submission
1054--
1055CREATE TABLE "client_jobschedule2submission" (
1056  "scheduleid" bigint NOT NULL UNIQUE,
1057  "submissionid" bigint NOT NULL UNIQUE
1058);
1059
1060
1061--
1062-- Table: client_library
1063--
1064CREATE TABLE "client_library" (
1065  "id" serial NOT NULL,
1066  "name" character varying(255) NOT NULL,
1067  "version" character varying(255) NOT NULL,
1068  PRIMARY KEY ("id")
1069);
1070
1071
1072
1073--
1074-- Table: client_os
1075--
1076CREATE TABLE "client_os" (
1077  "id" serial NOT NULL,
1078  "name" character varying(255) NOT NULL,
1079  "version" character varying(255) NOT NULL,
1080  "bits" smallint DEFAULT '32' NOT NULL,
1081  PRIMARY KEY ("id")
1082);
1083CREATE INDEX "client_os_name" on "client_os" ("name");
1084CREATE INDEX "client_os_version" on "client_os" ("version");
1085CREATE INDEX "client_os_bits" on "client_os" ("bits");
1086
1087
1088--
1089-- Table: client_site
1090--
1091CREATE TABLE "client_site" (
1092  "id" serial NOT NULL,
1093  "name" character varying(255) DEFAULT NULL,
1094  "osid" bigint DEFAULT NULL,
1095  "systemname" character varying(255) DEFAULT NULL,
1096  "host" character varying(255) DEFAULT NULL,
1097  "basedirectory" character varying(512) NOT NULL,
1098  "lastping" timestamp(0) DEFAULT '1980-01-01 00:00:00' NOT NULL,
1099  PRIMARY KEY ("id")
1100);
1101CREATE INDEX "client_site_name" on "client_site" ("name");
1102CREATE INDEX "client_site_system" on "client_site" ("osid");
1103CREATE INDEX "client_site_lastping" on "client_site" ("lastping");
1104
1105--
1106-- Table: client_site2cmake
1107--
1108CREATE TABLE "client_site2cmake" (
1109  "siteid" bigint DEFAULT NULL,
1110  "cmakeid" bigint DEFAULT NULL,
1111  "path" character varying(512) DEFAULT NULL
1112);
1113CREATE INDEX "client_site2cmake_siteid" on "client_site2cmake" ("siteid");
1114CREATE INDEX "client_site2cmake_version" on "client_site2cmake" ("cmakeid");
1115
1116
1117--
1118-- Table: client_site2compiler
1119--
1120CREATE TABLE "client_site2compiler" (
1121  "siteid" bigint DEFAULT NULL,
1122  "compilerid" bigint DEFAULT NULL,
1123  "command" character varying(512) DEFAULT NULL,
1124  "generator" character varying(255) NOT NULL
1125);
1126CREATE INDEX "client_site2compiler_siteid" on "client_site2compiler" ("siteid");
1127
1128
1129--
1130-- Table: client_site2library
1131--
1132CREATE TABLE "client_site2library" (
1133  "siteid" bigint DEFAULT NULL,
1134  "libraryid" bigint DEFAULT NULL,
1135  "path" character varying(512) DEFAULT NULL,
1136  "include" character varying(512) NOT NULL
1137);
1138CREATE INDEX "client_site2library_siteid" on "client_site2library" ("siteid");
1139
1140--
1141-- Table: client_site2program
1142--
1143CREATE TABLE "client_site2program" (
1144  "siteid" bigint  NOT NULL,
1145  "name" character varying(30) NOT NULL,
1146  "version" character varying(30) NOT NULL,
1147  "path" character varying(512) NOT NULL
1148);
1149CREATE INDEX "client_site2program_siteid" on "client_site2program" ("siteid");
1150
1151--
1152-- Table: client_site2project
1153--
1154CREATE TABLE "client_site2project" (
1155  "projectid" bigint DEFAULT NULL,
1156  "siteid" bigint DEFAULT NULL
1157);
1158CREATE INDEX "client_site2project_siteid" on "client_site2project" ("siteid");
1159
1160--
1161-- Table structure for table projectrobot
1162--
1163CREATE TABLE "projectrobot" (
1164  "projectid" bigint NOT NULL,
1165  "robotname" character varying(255) NOT NULL,
1166  "authorregex" character varying(512) NOT NULL
1167);
1168CREATE INDEX "projectrobot_projectid" on "projectrobot" ("projectid");
1169CREATE INDEX "projectrobot_robotname" on "projectrobot" ("robotname");
1170
1171--
1172-- Table structure for table `filesum`
1173--
1174
1175CREATE TABLE "filesum" (
1176  "id" serial NOT NULL,
1177  "md5sum" character varying(32) NOT NULL,
1178  "contents" bytea,
1179  PRIMARY KEY ("id")
1180);
1181CREATE INDEX "filesum_md5sum" on "filesum" ("md5sum");
1182
1183--
1184-- Table: projectjobscript
1185--
1186CREATE TABLE "projectjobscript" (
1187  "id" serial NOT NULL,
1188  "projectid" bigint NOT NULL,
1189  "script" text NOT NULL,
1190  PRIMARY KEY ("id")
1191);
1192CREATE INDEX "projectjobscript_projectid" on "projectjobscript" ("projectid");
1193
1194--
1195-- Table: errorlog
1196--
1197CREATE TABLE "errorlog" (
1198  "id" serial NOT NULL,
1199  "projectid" bigint NOT NULL,
1200  "buildid" bigint NOT NULL,
1201  "date" timestamp(0) DEFAULT '1980-01-01 00:00:00' NOT NULL,
1202  "type" smallint  NOT NULL,
1203  "description" text NOT NULL,
1204  "resourcetype" smallint NOT NULL DEFAULT '0',
1205  "resourceid" bigint  NOT NULL
1206);
1207CREATE INDEX "errorlog_resourceid" on "errorlog" ("resourceid");
1208CREATE INDEX "errorlog_date" on "errorlog" ("date");
1209CREATE INDEX "errorlog_resourcetype" on "errorlog" ("resourcetype");
1210CREATE INDEX "errorlog_projectid" on "errorlog" ("projectid");
1211CREATE INDEX "errorlog_buildid" on "errorlog" ("buildid");
1212
1213--
1214-- Table: submissionprocessor
1215--
1216CREATE TABLE "submissionprocessor" (
1217  "projectid" bigint NOT NULL,
1218  "pid" bigint NOT NULL,
1219  "lastupdated" timestamp(0) DEFAULT '1980-01-01 00:00:00' NOT NULL,
1220  "locked" timestamp(0) DEFAULT '1980-01-01 00:00:00' NOT NULL,
1221  PRIMARY KEY ("projectid")
1222);
1223
1224--
1225-- Table: user2repository
1226--
1227CREATE TABLE "user2repository" (
1228  "userid" bigint NOT NULL,
1229  "credential" character varying(512) NOT NULL,
1230  "projectid" bigint NOT NULL DEFAULT '0'
1231);
1232CREATE INDEX "user2repository_userid" on "user2repository" ("userid");
1233CREATE INDEX "user2repository_credential" on "user2repository" ("credential");
1234CREATE INDEX "user2repository_projectid" on "user2repository" ("projectid");
1235
1236CREATE TABLE "apitoken" (
1237  "projectid" bigint NOT NULL,
1238  "token" character varying(40),
1239  "expiration_date" timestamp(0) DEFAULT '1980-01-01 00:00:00' NOT NULL
1240);
1241CREATE INDEX "apitoken_token" on "apitoken" ("token");
1242
1243--
1244-- Table: uploadfile
1245--
1246CREATE TABLE "uploadfile" (
1247  "id" serial NOT NULL,
1248  "filename" character varying(255) NOT NULL,
1249  "filesize" bigint NOT NULL DEFAULT '0',
1250  "sha1sum" character varying(40) NOT NULL,
1251  "isurl" smallint NOT NULL DEFAULT '0',
1252  PRIMARY KEY("id")
1253);
1254CREATE INDEX "uploadfile_sha1sum" on "uploadfile" ("sha1sum");
1255
1256--
1257-- Table: build2uploadfile
1258--
1259CREATE TABLE "build2uploadfile" (
1260  "fileid" bigint NOT NULL,
1261  "buildid" bigint NOT NULL
1262);
1263CREATE INDEX "build2uploadfile_fileid" on "build2uploadfile" ("fileid");
1264CREATE INDEX "build2uploadfile_buildid" on "build2uploadfile" ("buildid");
1265
1266--
1267-- Table: submission2ip
1268--
1269CREATE TABLE "submission2ip" (
1270  "submissionid" bigint NOT NULL UNIQUE,
1271  "ip" character varying(255) DEFAULT '' NOT NULL,
1272  PRIMARY KEY("submissionid")
1273);
1274
1275CREATE TABLE "measurement" (
1276  "id" serial NOT NULL,
1277  "projectid" bigint NOT NULL,
1278  "name" character varying(40) NOT NULL,
1279  "testpage" smallint NOT NULL DEFAULT '0',
1280  "summarypage" smallint NOT NULL DEFAULT '0',
1281  PRIMARY KEY("id")
1282);
1283CREATE INDEX "measurement_projectid" on "measurement" ("projectid");
1284CREATE INDEX "measurement_name" on "measurement" ("name");
1285
1286
1287CREATE TABLE "feed" (
1288  "id" serial NOT NULL,
1289  "projectid" bigint NOT NULL,
1290  "date" timestamp(0) DEFAULT '1980-01-01 00:00:00' NOT NULL,
1291  "buildid" bigint NOT NULL DEFAULT '0',
1292  "type" bigint NOT NULL DEFAULT '0',
1293  "description" character varying(255) NOT NULL,
1294  PRIMARY KEY ("id")
1295);
1296CREATE INDEX "feed_projectid" on "feed" ("projectid");
1297CREATE INDEX "feed_date" on "feed" ("date");
1298
1299
1300