@@ -57,11 +57,10 @@ CREATE INDEX i_rosteru_jid ON rosterusers USING btree (jid);
57
57
CREATE TABLE rostergroups (
58
58
username text NOT NULL ,
59
59
jid text NOT NULL ,
60
- grp text NOT NULL
60
+ grp text NOT NULL ,
61
+ PRIMARY KEY (username, jid)
61
62
);
62
63
63
- CREATE INDEX pk_rosterg_user_jid ON rostergroups USING btree (username, jid);
64
-
65
64
CREATE TABLE sr_group (
66
65
name text NOT NULL ,
67
66
opts text NOT NULL ,
@@ -82,7 +81,7 @@ CREATE INDEX i_sr_user_grp ON sr_user USING btree (grp);
82
81
CREATE TABLE spool (
83
82
username text NOT NULL ,
84
83
xml text NOT NULL ,
85
- seq BIGSERIAL ,
84
+ seq BIGSERIAL PRIMARY KEY ,
86
85
created_at TIMESTAMP NOT NULL DEFAULT now()
87
86
);
88
87
@@ -95,7 +94,7 @@ CREATE TABLE archive (
95
94
bare_peer text NOT NULL ,
96
95
xml text NOT NULL ,
97
96
txt text ,
98
- id BIGSERIAL ,
97
+ id BIGSERIAL PRIMARY KEY ,
99
98
kind text ,
100
99
nick text ,
101
100
created_at TIMESTAMP NOT NULL DEFAULT now()
@@ -174,7 +173,7 @@ CREATE TABLE privacy_list (
174
173
CREATE UNIQUE INDEX i_privacy_list_username_name ON privacy_list USING btree (username, name);
175
174
176
175
CREATE TABLE privacy_list_data (
177
- id bigint REFERENCES privacy_list(id) ON DELETE CASCADE ,
176
+ id bigint PRIMARY KEY REFERENCES privacy_list(id) ON DELETE CASCADE ,
178
177
t character(1 ) NOT NULL ,
179
178
value text NOT NULL ,
180
179
action character(1 ) NOT NULL ,
@@ -186,8 +185,6 @@ CREATE TABLE privacy_list_data (
186
185
match_presence_out boolean NOT NULL
187
186
);
188
187
189
- CREATE INDEX i_privacy_list_data_id ON privacy_list_data USING btree (id);
190
-
191
188
CREATE TABLE private_storage (
192
189
username text NOT NULL ,
193
190
namespace text NOT NULL ,
@@ -226,17 +223,15 @@ CREATE INDEX i_pubsub_node_parent ON pubsub_node USING btree (parent);
226
223
CREATE UNIQUE INDEX i_pubsub_node_tuple ON pubsub_node USING btree (host, node);
227
224
228
225
CREATE TABLE pubsub_node_option (
229
- nodeid bigint REFERENCES pubsub_node(nodeid) ON DELETE CASCADE ,
226
+ nodeid bigint PRIMARY KEY REFERENCES pubsub_node(nodeid) ON DELETE CASCADE ,
230
227
name text NOT NULL ,
231
228
val text NOT NULL
232
229
);
233
- CREATE INDEX i_pubsub_node_option_nodeid ON pubsub_node_option USING btree (nodeid);
234
230
235
231
CREATE TABLE pubsub_node_owner (
236
- nodeid bigint REFERENCES pubsub_node(nodeid) ON DELETE CASCADE ,
232
+ nodeid bigint PRIMARY KEY REFERENCES pubsub_node(nodeid) ON DELETE CASCADE ,
237
233
owner text NOT NULL
238
234
);
239
- CREATE INDEX i_pubsub_node_owner_nodeid ON pubsub_node_owner USING btree (nodeid);
240
235
241
236
CREATE TABLE pubsub_state (
242
237
nodeid bigint REFERENCES pubsub_node(nodeid) ON DELETE CASCADE ,
@@ -329,11 +324,10 @@ CREATE TABLE caps_features (
329
324
node text NOT NULL ,
330
325
subnode text NOT NULL ,
331
326
feature text ,
332
- created_at TIMESTAMP NOT NULL DEFAULT now()
327
+ created_at TIMESTAMP NOT NULL DEFAULT now(),
328
+ PRIMARY KEY (node, subnode, feature)
333
329
);
334
330
335
- CREATE INDEX i_caps_features_node_subnode ON caps_features USING btree (node, subnode);
336
-
337
331
CREATE TABLE sm (
338
332
usec bigint NOT NULL ,
339
333
pid text NOT NULL ,
0 commit comments