aboutsummaryrefslogtreecommitdiffstats
path: root/workflow-designer-init/src/main/docker/create_tables.cql
blob: ad9a5cb45e2aa52082397871980636f16ee8dc99 (plain)
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
USE WORKFLOW;

CREATE TABLE IF NOT EXISTS UNIQUE_VALUE (
	TYPE TEXT,
	VALUE TEXT,
	PRIMARY KEY (( TYPE, VALUE ))
);

USE ZUSAMMEN_WORKFLOW;

CREATE TABLE IF NOT EXISTS ITEM (
	ITEM_ID TEXT PRIMARY KEY,
	ITEM_INFO TEXT,
	CREATION_TIME TIMESTAMP,
	MODIFICATION_TIME TIMESTAMP
);

CREATE TABLE IF NOT EXISTS VERSION (
	SPACE TEXT,
	ITEM_ID TEXT,
	VERSION_ID TEXT,
	BASE_VERSION_ID TEXT,
	INFO TEXT,
	RELATIONS TEXT,
	CREATION_TIME TIMESTAMP,
	MODIFICATION_TIME TIMESTAMP,
	PRIMARY KEY (( SPACE, ITEM_ID ), VERSION_ID)
);

CREATE TABLE IF NOT EXISTS VERSION_ELEMENTS (
	SPACE TEXT,
	ITEM_ID TEXT,
	VERSION_ID TEXT,
	REVISION_ID TEXT,
	ELEMENT_IDS MAP<TEXT, TEXT>,
	DIRTY_ELEMENT_IDS SET<TEXT>,
	STAGE_ELEMENT_IDS SET<TEXT>,
	CONFLICT_ELEMENT_IDS SET<TEXT>,
	PUBLISH_TIME TIMESTAMP,
	USER TEXT,
	MESSAGE TEXT,
	PRIMARY KEY (( SPACE, ITEM_ID, VERSION_ID ), REVISION_ID)
);

CREATE TABLE IF NOT EXISTS ELEMENT_NAMESPACE (
	ITEM_ID TEXT,
	ELEMENT_ID TEXT,
	NAMESPACE TEXT,
	PRIMARY KEY (( ITEM_ID, ELEMENT_ID ))
);

CREATE TABLE IF NOT EXISTS ELEMENT (
	SPACE TEXT,
	ITEM_ID TEXT,
	VERSION_ID TEXT,
	ELEMENT_ID TEXT,
	REVISION_ID TEXT,
	PARENT_ID TEXT,
	NAMESPACE TEXT,
	INFO TEXT,
	RELATIONS TEXT,
	DATA BLOB,
	SEARCHABLE_DATA BLOB,
	VISUALIZATION BLOB,
	SUB_ELEMENT_IDS SET<TEXT>,
	ELEMENT_HASH TEXT,
	PRIMARY KEY (( SPACE, ITEM_ID, VERSION_ID, ELEMENT_ID ), REVISION_ID)
);

CREATE TABLE IF NOT EXISTS ELEMENT_SYNCHRONIZATION_STATE (
	SPACE TEXT,
	ITEM_ID TEXT,
	VERSION_ID TEXT,
	ELEMENT_ID TEXT,
	REVISION_ID TEXT,
	PUBLISH_TIME TIMESTAMP,
	DIRTY BOOLEAN,
	PRIMARY KEY (( SPACE, ITEM_ID, VERSION_ID ), ELEMENT_ID, REVISION_ID)
);

CREATE TABLE IF NOT EXISTS ELEMENT_STAGE (
	SPACE TEXT,
	ITEM_ID TEXT,
	VERSION_ID TEXT,
	ELEMENT_ID TEXT,
	PARENT_ID TEXT,
	NAMESPACE TEXT,
	INFO TEXT,
	RELATIONS TEXT,
	DATA BLOB,
	SEARCHABLE_DATA BLOB,
	VISUALIZATION BLOB,
	SUB_ELEMENT_IDS SET<TEXT>,
	ELEMENT_HASH TEXT,
	PUBLISH_TIME TIMESTAMP,
	ACTION TEXT,
	CONFLICTED BOOLEAN,
	CONFLICT_DEPENDENT_IDS SET<TEXT>,
	PRIMARY KEY (( SPACE, ITEM_ID, VERSION_ID, ELEMENT_ID ))
);

CREATE TABLE IF NOT EXISTS VERSION_STAGE (
	SPACE TEXT,
	ITEM_ID TEXT,
	VERSION_ID TEXT,
	BASE_VERSION_ID TEXT,
	CREATION_TIME TIMESTAMP,
	MODIFICATION_TIME TIMESTAMP,
	PUBLISH_TIME TIMESTAMP,
	ACTION TEXT,
	PRIMARY KEY (( SPACE, ITEM_ID ), VERSION_ID)
);