aboutsummaryrefslogtreecommitdiffstats
path: root/code/api/sql/quartz-create.sql
blob: d0dc29899073042add404ac25ec7d2c61b6aab18 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
CREATE TABLE IF NOT EXISTS qrtz_job_details
(
    sched_name        TEXT  NOT NULL,
    job_name          TEXT  NOT NULL,
    job_group         TEXT  NOT NULL,
    description       TEXT  NULL,
    job_class_name    TEXT  NOT NULL,
    is_durable        BOOL  NOT NULL,
    is_nonconcurrent  BOOL  NOT NULL,
    is_update_data    BOOL  NOT NULL,
    requests_recovery BOOL  NOT NULL,
    job_data          BYTEA NULL,
    PRIMARY KEY (sched_name, job_name, job_group)
);

CREATE TABLE IF NOT EXISTS qrtz_triggers
(
    sched_name     TEXT     NOT NULL,
    trigger_name   TEXT     NOT NULL,
    trigger_group  TEXT     NOT NULL,
    job_name       TEXT     NOT NULL,
    job_group      TEXT     NOT NULL,
    description    TEXT     NULL,
    next_fire_time BIGINT   NULL,
    prev_fire_time BIGINT   NULL,
    priority       INTEGER  NULL,
    trigger_state  TEXT     NOT NULL,
    trigger_type   TEXT     NOT NULL,
    start_time     BIGINT   NOT NULL,
    end_time       BIGINT   NULL,
    calendar_name  TEXT     NULL,
    misfire_instr  SMALLINT NULL,
    job_data       BYTEA    NULL,
    PRIMARY KEY (sched_name, trigger_name, trigger_group),
    FOREIGN KEY (sched_name, job_name, job_group)
        REFERENCES qrtz_job_details (sched_name, job_name, job_group)
);

CREATE TABLE IF NOT EXISTS qrtz_simple_triggers
(
    sched_name      TEXT   NOT NULL,
    trigger_name    TEXT   NOT NULL,
    trigger_group   TEXT   NOT NULL,
    repeat_count    BIGINT NOT NULL,
    repeat_interval BIGINT NOT NULL,
    times_triggered BIGINT NOT NULL,
    PRIMARY KEY (sched_name, trigger_name, trigger_group),
    FOREIGN KEY (sched_name, trigger_name, trigger_group)
        REFERENCES qrtz_triggers (sched_name, trigger_name, trigger_group) ON DELETE CASCADE
);

CREATE TABLE IF NOT EXISTS QRTZ_SIMPROP_TRIGGERS
(
    sched_name    TEXT    NOT NULL,
    trigger_name  TEXT    NOT NULL,
    trigger_group TEXT    NOT NULL,
    str_prop_1    TEXT    NULL,
    str_prop_2    TEXT    NULL,
    str_prop_3    TEXT    NULL,
    int_prop_1    INTEGER NULL,
    int_prop_2    INTEGER NULL,
    long_prop_1   BIGINT  NULL,
    long_prop_2   BIGINT  NULL,
    dec_prop_1    NUMERIC NULL,
    dec_prop_2    NUMERIC NULL,
    bool_prop_1   BOOL    NULL,
    bool_prop_2   BOOL    NULL,
    time_zone_id  TEXT    NULL,
    PRIMARY KEY (sched_name, trigger_name, trigger_group),
    FOREIGN KEY (sched_name, trigger_name, trigger_group)
        REFERENCES qrtz_triggers (sched_name, trigger_name, trigger_group) ON DELETE CASCADE
);

CREATE TABLE IF NOT EXISTS qrtz_cron_triggers
(
    sched_name      TEXT NOT NULL,
    trigger_name    TEXT NOT NULL,
    trigger_group   TEXT NOT NULL,
    cron_expression TEXT NOT NULL,
    time_zone_id    TEXT,
    PRIMARY KEY (sched_name, trigger_name, trigger_group),
    FOREIGN KEY (sched_name, trigger_name, trigger_group)
        REFERENCES qrtz_triggers (sched_name, trigger_name, trigger_group) ON DELETE CASCADE
);

CREATE TABLE IF NOT EXISTS qrtz_blob_triggers
(
    sched_name    TEXT  NOT NULL,
    trigger_name  TEXT  NOT NULL,
    trigger_group TEXT  NOT NULL,
    blob_data     BYTEA NULL,
    PRIMARY KEY (sched_name, trigger_name, trigger_group),
    FOREIGN KEY (sched_name, trigger_name, trigger_group)
        REFERENCES qrtz_triggers (sched_name, trigger_name, trigger_group) ON DELETE CASCADE
);

CREATE TABLE IF NOT EXISTS qrtz_calendars
(
    sched_name    TEXT  NOT NULL,
    calendar_name TEXT  NOT NULL,
    calendar      BYTEA NOT NULL,
    PRIMARY KEY (sched_name, calendar_name)
);

CREATE TABLE IF NOT EXISTS qrtz_paused_trigger_grps
(
    sched_name    TEXT NOT NULL,
    trigger_group TEXT NOT NULL,
    PRIMARY KEY (sched_name, trigger_group)
);

CREATE TABLE IF NOT EXISTS qrtz_fired_triggers
(
    sched_name        TEXT    NOT NULL,
    entry_id          TEXT    NOT NULL,
    trigger_name      TEXT    NOT NULL,
    trigger_group     TEXT    NOT NULL,
    instance_name     TEXT    NOT NULL,
    fired_time        BIGINT  NOT NULL,
    sched_time        BIGINT  NOT NULL,
    priority          INTEGER NOT NULL,
    state             TEXT    NOT NULL,
    job_name          TEXT    NULL,
    job_group         TEXT    NULL,
    is_nonconcurrent  BOOL    NOT NULL,
    requests_recovery BOOL    NULL,
    PRIMARY KEY (sched_name, entry_id)
);

CREATE TABLE IF NOT EXISTS qrtz_scheduler_state
(
    sched_name        TEXT   NOT NULL,
    instance_name     TEXT   NOT NULL,
    last_checkin_time BIGINT NOT NULL,
    checkin_interval  BIGINT NOT NULL,
    PRIMARY KEY (sched_name, instance_name)
);

CREATE TABLE IF NOT EXISTS qrtz_locks
(
    sched_name TEXT NOT NULL,
    lock_name  TEXT NOT NULL,
    PRIMARY KEY (sched_name, lock_name)
);

CREATE INDEX IF NOT EXISTS idx_qrtz_j_req_recovery on qrtz_job_details (requests_recovery);
CREATE INDEX IF NOT EXISTS idx_qrtz_t_next_fire_time on qrtz_triggers (next_fire_time);
CREATE INDEX IF NOT EXISTS idx_qrtz_t_state on qrtz_triggers (trigger_state);
CREATE INDEX IF NOT EXISTS idx_qrtz_t_nft_st on qrtz_triggers (next_fire_time, trigger_state);
CREATE INDEX IF NOT EXISTS idx_qrtz_ft_trig_name on qrtz_fired_triggers (trigger_name);
CREATE INDEX IF NOT EXISTS idx_qrtz_ft_trig_group on qrtz_fired_triggers (trigger_group);
CREATE INDEX IF NOT EXISTS idx_qrtz_ft_trig_nm_gp on qrtz_fired_triggers (sched_name, trigger_name, trigger_group);
CREATE INDEX IF NOT EXISTS idx_qrtz_ft_trig_inst_name on qrtz_fired_triggers (instance_name);
CREATE INDEX IF NOT EXISTS idx_qrtz_ft_job_name on qrtz_fired_triggers (job_name);
CREATE INDEX IF NOT EXISTS idx_qrtz_ft_job_group on qrtz_fired_triggers (job_group);
CREATE INDEX IF NOT EXISTS idx_qrtz_ft_job_req_recovery on qrtz_fired_triggers (requests_recovery);