lib/CrashTest/Plugin/Storage/Sql/migrations_pg.sql
changeset 88 c82f5589db11
parent 78 0ebef32c34af
child 97 f68abe1d7358
equal deleted inserted replaced
87:03caeafba2ff 88:c82f5589db11
    57         )->>'function' AS functions
    57         )->>'function' AS functions
    58     ) AS frames
    58     ) AS frames
    59 $$
    59 $$
    60 LANGUAGE sql IMMUTABLE;
    60 LANGUAGE sql IMMUTABLE;
    61 
    61 
    62 -- This extension is the contrib modules
    62 -- This extension is in contrib/
    63 CREATE EXTENSION IF NOT EXISTS pg_trgm;
    63 CREATE EXTENSION IF NOT EXISTS pg_trgm;
    64 
    64 
    65 CREATE INDEX crash_report_datas_idx_extract_crashing_functions ON crash_report_datas USING gist (
    65 CREATE INDEX crash_report_datas_idx_extract_crashing_functions ON crash_report_datas USING gist (
    66     extract_crashing_functions(processed) gist_trgm_ops
    66     extract_crashing_functions(processed) gist_trgm_ops
    67 );
    67 );
    73 DROP TABLE crash_reports CASCADE;
    73 DROP TABLE crash_reports CASCADE;
    74 DROP TABLE products CASCADE;
    74 DROP TABLE products CASCADE;
    75 DROP TABLE crash_users CASCADE;
    75 DROP TABLE crash_users CASCADE;
    76 DROP FUNCTION extract_crashing_functions (processed_json jsonb);
    76 DROP FUNCTION extract_crashing_functions (processed_json jsonb);
    77 
    77 
       
    78 -- ###########################################################################
       
    79 -- 2 up
       
    80 -- ###########################################################################
       
    81 
       
    82 CREATE TABLE "crash_groups" (
       
    83     "id" serial NOT NULL,
       
    84     "uuid" uuid NOT NULL,
       
    85     "title" character varying NOT NULL,
       
    86     "crash_thread_signature_bt" text NOT NULL,
       
    87     CONSTRAINT "crash_groups_uuid_idx" UNIQUE ("uuid"),
       
    88     PRIMARY KEY ("id")
       
    89 );
       
    90 
       
    91 DROP INDEX crash_report_datas_idx_extract_crashing_functions;
       
    92 CREATE INDEX crash_groups_idx_crash_thread_signature_bt ON crash_groups USING gist (
       
    93     crash_thread_signature_bt gist_trgm_ops
       
    94 );
       
    95 
       
    96 ALTER TABLE "crash_reports" ADD COLUMN crash_group_id integer;
       
    97 ALTER TABLE "crash_reports" ADD COLUMN crash_group_distance real;
       
    98 ALTER TABLE "crash_reports" ADD CONSTRAINT "crash_reports_fk_crash_group_id" FOREIGN KEY ("crash_group_id")
       
    99   REFERENCES "crash_groups" ("id") ON DELETE CASCADE ON UPDATE CASCADE DEFERRABLE;
       
   100 
       
   101 -- ###########################################################################
       
   102 -- 2 down
       
   103 -- ###########################################################################
       
   104 
       
   105 ALTER TABLE "crash_reports" DROP COLUMN crash_group_id;
       
   106 ALTER TABLE "crash_reports" DROP COLUMN crash_group_distance;
       
   107 DROP TABLE "crash_groups" CASCADE;
    78 
   108 
    79 -- vim:ft=pgsql:
   109 -- vim:ft=pgsql: