· 4 years ago · Aug 25, 2021, 12:36 PM
1create table if not exists rrbpm.detached_task_payload
2(
3 id bigint default nextval('rrbpm.detached_task_payload_id_seq'::regclass) not null,
4 task_id varchar(128) not null,
5 task_topic_id smallint not null
6 constraint detached_task_payload_workers_kafka_topics_id_fk
7 references rrbpm.workers_kafka_topics,
8 task_partition smallint not null,
9 task_offset bigint not null,
10 state task_state_type default 'ACQUIRED'::task_state_type not null,
11 server_id smallint not null,
12 acquired_ts timestamp,
13 task_type_id smallint
14 constraint detached_task_payload_task_type_id_fk
15 references rrbpm.task_type,
16 task_payload jsonb,
17 outcome jsonb
18)
19 partition by LIST (task_type_id);
20
21comment on table rrbpm.detached_task_payload is 'сущность для хранения контекста задачи';
22
23comment on column rrbpm.detached_task_payload.task_topic_id is 'тип задачи';
24
25comment on column rrbpm.detached_task_payload.state is 'статус задачи';
26
27comment on column rrbpm.detached_task_payload.server_id is 'SERVER-ID воркера захватившего задачу на себя';
28
29comment on column rrbpm.detached_task_payload.outcome is 'результат выполнения задачи';
30
31alter table rrbpm.detached_task_payload
32 owner to postgres;
33
34create table if not exists rrbpm.phd_task_payload
35 partition of rrbpm.detached_task_payload
36 (
37 constraint detached_task_payload_task_type_id_fk
38 foreign key (task_type_id) references rrbpm.task_type,
39 constraint detached_task_payload_workers_kafka_topics_id_fk
40 foreign key (task_topic_id) references rrbpm.workers_kafka_topics
41 )
42 FOR VALUES IN ('1')
43 partition by LIST (state);
44
45alter table rrbpm.phd_task_payload
46 owner to postgres;
47
48create table if not exists rrbpm.bpmn_task_payload
49 partition of rrbpm.detached_task_payload
50 (
51 constraint detached_task_payload_task_type_id_fk
52 foreign key (task_type_id) references rrbpm.task_type,
53 constraint detached_task_payload_workers_kafka_topics_id_fk
54 foreign key (task_topic_id) references rrbpm.workers_kafka_topics
55 )
56 FOR VALUES IN ('2')
57 partition by LIST (state);
58
59alter table rrbpm.bpmn_task_payload
60 owner to postgres;
61
62create table if not exists rrbpm.task_payload_default
63 partition of rrbpm.detached_task_payload
64 (
65 constraint detached_task_payload_task_type_id_fk
66 foreign key (task_type_id) references rrbpm.task_type,
67 constraint detached_task_payload_workers_kafka_topics_id_fk
68 foreign key (task_topic_id) references rrbpm.workers_kafka_topics
69 )
70 DEFAULT;
71
72alter table rrbpm.task_payload_default
73 owner to postgres;
74
75create table if not exists rrbpm.phd_task_payload_done
76 partition of rrbpm.phd_task_payload
77 (
78 constraint detached_task_payload_task_type_id_fk
79 foreign key (task_type_id) references rrbpm.task_type,
80 constraint detached_task_payload_workers_kafka_topics_id_fk
81 foreign key (task_topic_id) references rrbpm.workers_kafka_topics
82 )
83 FOR VALUES IN ('DONE');
84
85alter table rrbpm.phd_task_payload_done
86 owner to postgres;
87
88create table if not exists rrbpm.bpmn_task_payload_done
89 partition of rrbpm.bpmn_task_payload
90 (
91 constraint detached_task_payload_task_type_id_fk
92 foreign key (task_type_id) references rrbpm.task_type,
93 constraint detached_task_payload_workers_kafka_topics_id_fk
94 foreign key (task_topic_id) references rrbpm.workers_kafka_topics
95 )
96 FOR VALUES IN ('DONE');
97
98alter table rrbpm.bpmn_task_payload_done
99 owner to postgres;
100
101create table if not exists rrbpm.phd_task_payload_other
102 partition of rrbpm.phd_task_payload
103 (
104 constraint detached_task_payload_task_type_id_fk
105 foreign key (task_type_id) references rrbpm.task_type,
106 constraint detached_task_payload_workers_kafka_topics_id_fk
107 foreign key (task_topic_id) references rrbpm.workers_kafka_topics
108 )
109 DEFAULT;
110
111alter table rrbpm.phd_task_payload_other
112 owner to postgres;
113
114create table if not exists rrbpm.bpmn_task_payload_other
115 partition of rrbpm.bpmn_task_payload
116 (
117 constraint detached_task_payload_task_type_id_fk
118 foreign key (task_type_id) references rrbpm.task_type,
119 constraint detached_task_payload_workers_kafka_topics_id_fk
120 foreign key (task_topic_id) references rrbpm.workers_kafka_topics
121 )
122 DEFAULT;
123
124alter table rrbpm.bpmn_task_payload_other
125 owner to postgres;
126
127