dbicdh/PostgreSQL/deploy/1/001-auto.sql
changeset 59 4f4f8a52a874
equal deleted inserted replaced
58:a3e856c4d161 59:4f4f8a52a874
       
     1 -- 
       
     2 -- Created by SQL::Translator::Producer::PostgreSQL
       
     3 -- Created on Sun Feb  1 19:58:35 2015
       
     4 -- 
       
     5 ;
       
     6 --
       
     7 -- Table: crash_users.
       
     8 --
       
     9 CREATE TABLE "crash_users" (
       
    10   "id" serial NOT NULL,
       
    11   "user_id" character varying(40) NOT NULL,
       
    12   "os" character varying(40),
       
    13   "cpu_arch" character varying(10),
       
    14   "cpu_count" integer,
       
    15   "extra_info" text,
       
    16   PRIMARY KEY ("id")
       
    17 );
       
    18 
       
    19 ;
       
    20 --
       
    21 -- Table: modules.
       
    22 --
       
    23 CREATE TABLE "modules" (
       
    24   "id" serial NOT NULL,
       
    25   "debug_id" character varying(33) NOT NULL,
       
    26   "filename" character varying(128) NOT NULL,
       
    27   "version" character varying(64),
       
    28   PRIMARY KEY ("id"),
       
    29   CONSTRAINT "module_id" UNIQUE ("debug_id", "filename")
       
    30 );
       
    31 
       
    32 ;
       
    33 --
       
    34 -- Table: products.
       
    35 --
       
    36 CREATE TABLE "products" (
       
    37   "id" serial NOT NULL,
       
    38   "distributor" character varying(40),
       
    39   "name" character varying(40),
       
    40   "version" character varying(16),
       
    41   "release_channel" character varying,
       
    42   PRIMARY KEY ("id")
       
    43 );
       
    44 
       
    45 ;
       
    46 --
       
    47 -- Table: crash_reports.
       
    48 --
       
    49 CREATE TABLE "crash_reports" (
       
    50   "id" serial NOT NULL,
       
    51   "start_time" timestamp,
       
    52   "crash_time" timestamp,
       
    53   "uuid" character varying(36) NOT NULL,
       
    54   "bug_reference" character varying(20),
       
    55   "crash_user_id" integer NOT NULL,
       
    56   "product_id" integer NOT NULL,
       
    57   PRIMARY KEY ("id")
       
    58 );
       
    59 CREATE INDEX "crash_reports_idx_crash_user_id" on "crash_reports" ("crash_user_id");
       
    60 CREATE INDEX "crash_reports_idx_product_id" on "crash_reports" ("product_id");
       
    61 
       
    62 ;
       
    63 --
       
    64 -- Table: crash_threads.
       
    65 --
       
    66 CREATE TABLE "crash_threads" (
       
    67   "id" serial NOT NULL,
       
    68   "number" integer NOT NULL,
       
    69   "crashed" bool NOT NULL,
       
    70   "crash_report_id" integer NOT NULL,
       
    71   PRIMARY KEY ("id")
       
    72 );
       
    73 CREATE INDEX "crash_threads_idx_crash_report_id" on "crash_threads" ("crash_report_id");
       
    74 
       
    75 ;
       
    76 --
       
    77 -- Table: crash_frames.
       
    78 --
       
    79 CREATE TABLE "crash_frames" (
       
    80   "id" serial NOT NULL,
       
    81   "number" integer NOT NULL,
       
    82   "function" character varying(128),
       
    83   "source_file" character varying(128),
       
    84   "source_line" integer,
       
    85   "stack_walk_mode" character varying(10),
       
    86   "crash_thread_id" integer NOT NULL,
       
    87   "module_id" integer NOT NULL,
       
    88   PRIMARY KEY ("id")
       
    89 );
       
    90 CREATE INDEX "crash_frames_idx_crash_thread_id" on "crash_frames" ("crash_thread_id");
       
    91 CREATE INDEX "crash_frames_idx_module_id" on "crash_frames" ("module_id");
       
    92 
       
    93 ;
       
    94 --
       
    95 -- Foreign Key Definitions
       
    96 --
       
    97 
       
    98 ;
       
    99 ALTER TABLE "crash_reports" ADD CONSTRAINT "crash_reports_fk_crash_user_id" FOREIGN KEY ("crash_user_id")
       
   100   REFERENCES "crash_users" ("id") DEFERRABLE;
       
   101 
       
   102 ;
       
   103 ALTER TABLE "crash_reports" ADD CONSTRAINT "crash_reports_fk_product_id" FOREIGN KEY ("product_id")
       
   104   REFERENCES "products" ("id") DEFERRABLE;
       
   105 
       
   106 ;
       
   107 ALTER TABLE "crash_threads" ADD CONSTRAINT "crash_threads_fk_crash_report_id" FOREIGN KEY ("crash_report_id")
       
   108   REFERENCES "crash_reports" ("id") DEFERRABLE;
       
   109 
       
   110 ;
       
   111 ALTER TABLE "crash_frames" ADD CONSTRAINT "crash_frames_fk_crash_thread_id" FOREIGN KEY ("crash_thread_id")
       
   112   REFERENCES "crash_threads" ("id") DEFERRABLE;
       
   113 
       
   114 ;
       
   115 ALTER TABLE "crash_frames" ADD CONSTRAINT "crash_frames_fk_module_id" FOREIGN KEY ("module_id")
       
   116   REFERENCES "modules" ("id") DEFERRABLE;
       
   117 
       
   118 ;