blob: 132681eef96c094ae87362eaba606cb124c459f5 [file] [log] [blame]
Matthias Andreas Benkard80fc4312020-06-13 16:59:04 +02001<?xml version="1.1" encoding="UTF-8" standalone="no"?>
2<databaseChangeLog
3 xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
4 xmlns:ext="http://www.liquibase.org/xml/ns/dbchangelog-ext"
5 xmlns:pro="http://www.liquibase.org/xml/ns/pro"
6 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
7 xsi:schemaLocation="
8 http://www.liquibase.org/xml/ns/dbchangelog-ext
9 http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-ext.xsd
10 http://www.liquibase.org/xml/ns/pro
11 http://www.liquibase.org/xml/ns/pro/liquibase-pro-3.9.xsd
12 http://www.liquibase.org/xml/ns/dbchangelog
13 http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.9.xsd">
14
15 <changeSet author="mulk (generated)" id="1592058325319-1">
16 <createTable tableName="article_types">
17 <column autoIncrement="true" name="id" type="INTEGER">
18 <constraints nullable="false" primaryKey="true" primaryKeyName="article_types_pkey"/>
19 </column>
20 <column name="name" type="VARCHAR"/>
21 <column name="page_template" type="VARCHAR"/>
22 </createTable>
23 </changeSet>
24
25 <changeSet author="mulk (generated)" id="1592058325319-2">
26 <createTable tableName="cached_pages">
27 <column name="alias" type="VARCHAR">
28 <constraints nullable="false" primaryKey="true" primaryKeyName="cached_pages_pkey"/>
29 </column>
30 <column name="characteristic_hash" type="INTEGER">
31 <constraints nullable="false" primaryKey="true" primaryKeyName="cached_pages_pkey"/>
32 </column>
33 <column defaultValueComputed="now()" name="date" type="TIMESTAMP WITHOUT TIME ZONE">
34 <constraints nullable="false"/>
35 </column>
36 <column name="content" type="VARCHAR">
37 <constraints nullable="false"/>
38 </column>
39 </createTable>
40 </changeSet>
41
42 <changeSet author="mulk (generated)" id="1592058325319-3">
43 <createTable tableName="used_transaction_keys">
44 <column name="key" type="BIGINT">
45 <constraints nullable="false" primaryKey="true"
46 primaryKeyName="used_transaction_keys_pkey"/>
47 </column>
48 </createTable>
49 </changeSet>
50
51 <changeSet author="mulk (generated)" id="1592058325319-4">
52 <createTable tableName="users">
53 <column autoIncrement="true" name="id" type="INTEGER">
54 <constraints nullable="false" primaryKey="true" primaryKeyName="users_pkey"/>
55 </column>
56 <column name="name" type="VARCHAR"/>
57 <column name="status" type="VARCHAR">
58 <constraints nullable="false"/>
59 </column>
60 <column name="email" type="VARCHAR"/>
61 <column name="website" type="VARCHAR"/>
62 </createTable>
63 </changeSet>
64
65 <changeSet author="mulk (generated)" id="1592058325319-5">
66 <createTable tableName="openids">
67 <column name="user" type="INTEGER">
68 <constraints nullable="false" primaryKey="true" primaryKeyName="openids_pkey"/>
69 </column>
70 <column name="openid" type="VARCHAR">
71 <constraints nullable="false" primaryKey="true" primaryKeyName="openids_pkey"/>
72 </column>
73 </createTable>
74 </changeSet>
75
76 <changeSet author="mulk (generated)" id="1592058325319-6">
77 <createTable tableName="passwords">
78 <column name="user" type="INTEGER">
79 <constraints nullable="false" primaryKey="true" primaryKeyName="passwords_pkey"/>
80 </column>
81 <column name="password" type="VARCHAR">
82 <constraints nullable="false" primaryKey="true" primaryKeyName="passwords_pkey"/>
83 </column>
84 </createTable>
85 </changeSet>
86
87 <changeSet author="mulk (generated)" id="1592058325319-7">
88 <createTable tableName="articles">
89 <column autoIncrement="true" name="id" type="INTEGER">
90 <constraints nullable="false" primaryKey="true" primaryKeyName="articles_pkey"/>
91 </column>
92 <column name="type" type="INTEGER">
93 <constraints nullable="false"/>
94 </column>
95 </createTable>
96 </changeSet>
97
98 <changeSet author="mulk (generated)" id="1592058325319-8">
99 <createTable tableName="journal_pingback">
100 <column autoIncrement="true" name="id" type="INTEGER">
101 <constraints nullable="false" primaryKey="true" primaryKeyName="journal_pingbackpk"/>
102 </column>
103 <column name="entry_id" type="INTEGER">
104 <constraints nullable="false"/>
105 </column>
106 <column name="uuid" type="CHAR(36)">
107 <constraints nullable="false"/>
108 </column>
109 <column name="date" type="BIGINT">
110 <constraints nullable="false"/>
111 </column>
112 <column name="url" type="TEXT"/>
113 <column name="spam_p" type="BOOLEAN"/>
114 <column name="submitter_ip" type="TEXT">
115 <constraints nullable="false"/>
116 </column>
117 <column name="submitter_user_agent" type="TEXT">
118 <constraints nullable="false"/>
119 </column>
120 </createTable>
121 </changeSet>
122
123 <changeSet author="mulk (generated)" id="1592058325319-9">
124 <createTable tableName="article_revisions">
125 <column autoIncrement="true" name="id" type="INTEGER">
126 <constraints nullable="false" primaryKey="true" primaryKeyName="article_revisions_pkey"/>
127 </column>
128 <column name="article" type="INTEGER">
129 <constraints nullable="false"/>
130 </column>
131 <column defaultValueComputed="now()" name="date" type="TIMESTAMP WITHOUT TIME ZONE"/>
132 <column name="title" type="VARCHAR">
133 <constraints nullable="false"/>
134 </column>
135 <column name="content" type="VARCHAR">
136 <constraints nullable="false"/>
137 </column>
138 <column name="author" type="INTEGER"/>
139 <column name="format" type="VARCHAR">
140 <constraints nullable="false"/>
141 </column>
142 <column name="status" type="VARCHAR">
143 <constraints nullable="false"/>
144 </column>
145 <column name="global_id" type="VARCHAR"/>
146 </createTable>
147 </changeSet>
148
149 <changeSet author="mulk (generated)" id="1592058325319-10">
150 <createTable tableName="article_revision_parenthood">
151 <column name="parent" type="INTEGER">
152 <constraints nullable="false" primaryKey="true"
153 primaryKeyName="article_revision_parenthood_pkey"/>
154 </column>
155 <column name="child" type="INTEGER">
156 <constraints nullable="false" primaryKey="true"
157 primaryKeyName="article_revision_parenthood_pkey"/>
158 </column>
159 </createTable>
160 </changeSet>
161
162 <changeSet author="mulk (generated)" id="1592058325319-11">
163 <createTable tableName="journal_comment">
164 <column autoIncrement="true" name="id" type="INTEGER">
165 <constraints nullable="false" primaryKey="true" primaryKeyName="JOURNAL_COMMENTPK"/>
166 </column>
167 <column name="entry_id" type="INTEGER">
168 <constraints nullable="false"/>
169 </column>
170 <column name="uuid" type="CHAR(36)">
171 <constraints nullable="false"/>
172 </column>
173 <column name="date" type="BIGINT">
174 <constraints nullable="false"/>
175 </column>
176 <column name="body" type="TEXT">
177 <constraints nullable="false"/>
178 </column>
179 <column name="author" type="TEXT"/>
180 <column name="email" type="TEXT"/>
181 <column name="website" type="TEXT"/>
182 <column name="spam_p" type="BOOLEAN"/>
183 <column defaultValue="0.0.0.0" name="submitter_ip" type="TEXT">
184 <constraints nullable="false"/>
185 </column>
186 <column name="submitter_user_agent" type="TEXT">
187 <constraints nullable="false"/>
188 </column>
189 </createTable>
190 </changeSet>
191
192 <changeSet author="mulk (generated)" id="1592058325319-12">
193 <createTable tableName="user_permissions">
194 <column name="user" type="INTEGER">
195 <constraints nullable="false" primaryKey="true" primaryKeyName="user_permissions_pkey"/>
196 </column>
197 <column name="permission" type="VARCHAR">
198 <constraints nullable="false" primaryKey="true" primaryKeyName="user_permissions_pkey"/>
199 </column>
200 <column name="status" type="BOOLEAN"/>
201 </createTable>
202 </changeSet>
203
204 <changeSet author="mulk (generated)" id="1592058325319-13">
205 <createTable tableName="journal_category">
206 <column autoIncrement="true" name="id" type="INTEGER">
207 <constraints nullable="false" primaryKey="true" primaryKeyName="journal_categorypk"/>
208 </column>
209 <column name="uuid" type="CHAR(36)">
210 <constraints nullable="false"/>
211 </column>
212 </createTable>
213 </changeSet>
214
215 <changeSet author="mulk (generated)" id="1592058325319-14">
216 <createTable tableName="journals">
217 <column name="id" type="INTEGER">
218 <constraints nullable="false" primaryKey="true" primaryKeyName="journals_pkey"/>
219 </column>
220 <column name="path_prefix" type="VARCHAR"/>
221 </createTable>
222 </changeSet>
223
224 <changeSet author="mulk (generated)" id="1592058325319-15">
225 <createTable tableName="category_inclusions">
226 <column name="category" type="INTEGER">
227 <constraints nullable="false" primaryKey="true" primaryKeyName="category_inclusions_pkey"/>
228 </column>
229 <column name="supercategory" type="INTEGER">
230 <constraints nullable="false" primaryKey="true" primaryKeyName="category_inclusions_pkey"/>
231 </column>
232 </createTable>
233 </changeSet>
234
235 <changeSet author="mulk (generated)" id="1592058325319-16">
236 <createTable tableName="journal_entry">
237 <column autoIncrement="true" name="id" type="INTEGER">
238 <constraints nullable="false" primaryKey="true" primaryKeyName="journal_entrypk"/>
239 </column>
240 <column name="uuid" type="CHAR(36)">
241 <constraints nullable="false"/>
242 </column>
243 <column name="title" type="TEXT">
244 <constraints nullable="false"/>
245 </column>
246 <column name="date" type="BIGINT">
247 <constraints nullable="false"/>
248 </column>
249 <column name="last_modification" type="BIGINT"/>
250 <column name="body" type="TEXT">
251 <constraints nullable="false"/>
252 </column>
253 <column defaultValue="markdown" name="type" type="TEXT">
254 <constraints nullable="false"/>
255 </column>
256 </createTable>
257 </changeSet>
258
259 <changeSet author="mulk (generated)" id="1592058325319-17">
260 <createTable tableName="journal_trackback">
261 <column autoIncrement="true" name="id" type="INTEGER">
262 <constraints nullable="false" primaryKey="true" primaryKeyName="journal_trackbackpk"/>
263 </column>
264 <column name="entry_id" type="INTEGER">
265 <constraints nullable="false"/>
266 </column>
267 <column name="uuid" type="CHAR(36)">
268 <constraints nullable="false"/>
269 </column>
270 <column name="date" type="BIGINT">
271 <constraints nullable="false"/>
272 </column>
273 <column name="excerpt" type="TEXT">
274 <constraints nullable="false"/>
275 </column>
276 <column name="title" type="TEXT"/>
277 <column name="blog_name" type="TEXT"/>
278 <column name="url" type="TEXT"/>
279 <column name="spam_p" type="BOOLEAN"/>
280 <column name="submitter_ip" type="TEXT">
281 <constraints nullable="false"/>
282 </column>
283 <column name="submitter_user_agent" type="TEXT">
284 <constraints nullable="false"/>
285 </column>
286 </createTable>
287 </changeSet>
288
289 <changeSet author="mulk (generated)" id="1592058325319-18">
290 <createTable tableName="user_settings">
291 <column name="user" type="INTEGER">
292 <constraints nullable="false" primaryKey="true" primaryKeyName="user_settings_pkey"/>
293 </column>
294 <column name="setting" type="VARCHAR">
295 <constraints nullable="false" primaryKey="true" primaryKeyName="user_settings_pkey"/>
296 </column>
297 <column name="value" type="VARCHAR"/>
298 </createTable>
299 </changeSet>
300
301 <changeSet author="mulk (generated)" id="1592058325319-19">
302 <createTable tableName="article_category_memberships">
303 <column name="article" type="INTEGER">
304 <constraints nullable="false" primaryKey="true"
305 primaryKeyName="article_category_memberships_pkey"/>
306 </column>
307 <column name="category" type="VARCHAR">
308 <constraints nullable="false" primaryKey="true"
309 primaryKeyName="article_category_memberships_pkey"/>
310 </column>
311 </createTable>
312 </changeSet>
313
314 <changeSet author="mulk (generated)" id="1592058325319-20">
315 <createTable tableName="categories">
316 <column autoIncrement="true" name="id" type="INTEGER">
317 <constraints nullable="false" primaryKey="true" primaryKeyName="categories_pkey"/>
318 </column>
319 <column name="name" type="VARCHAR">
320 <constraints nullable="false"/>
321 </column>
322 </createTable>
323 </changeSet>
324
325 <changeSet author="mulk (generated)" id="1592058325319-21">
326 <createTable tableName="journal_entries">
327 <column name="journal" type="INTEGER">
328 <constraints nullable="false" primaryKey="true" primaryKeyName="journal_entries_pkey"/>
329 </column>
330 <column name="index" type="INTEGER">
331 <constraints nullable="false" primaryKey="true" primaryKeyName="journal_entries_pkey"/>
332 </column>
333 <column name="article" type="INTEGER">
334 <constraints nullable="false"/>
335 </column>
336 </createTable>
337 </changeSet>
338
339 <changeSet author="mulk (generated)" id="1592058325319-22">
340 <createTable tableName="article_aliases">
341 <column name="alias" type="VARCHAR">
342 <constraints nullable="false" primaryKey="true" primaryKeyName="article_aliases_pkey"/>
343 </column>
344 <column name="article" type="INTEGER">
345 <constraints nullable="false"/>
346 </column>
347 </createTable>
348 </changeSet>
349
350 <changeSet author="mulk (generated)" id="1592058325319-23">
351 <createTable tableName="comment_revisions">
352 <column autoIncrement="true" name="id" type="INTEGER">
353 <constraints nullable="false" primaryKey="true" primaryKeyName="comment_revisions_pkey"/>
354 </column>
355 <column name="comment" type="INTEGER">
356 <constraints nullable="false"/>
357 </column>
358 <column defaultValueComputed="now()" name="date" type="TIMESTAMP WITHOUT TIME ZONE"/>
359 <column name="content" type="VARCHAR">
360 <constraints nullable="false"/>
361 </column>
362 <column name="author" type="INTEGER"/>
363 <column name="format" type="VARCHAR">
364 <constraints nullable="false"/>
365 </column>
366 <column name="status" type="VARCHAR">
367 <constraints nullable="false"/>
368 </column>
369 <column name="article_revision" type="INTEGER"/>
370 <column name="submitter_ip" type="INET"/>
371 <column name="submitter_user_agent" type="VARCHAR"/>
372 </createTable>
373 </changeSet>
374
375 <changeSet author="mulk (generated)" id="1592058325319-24">
376 <createTable tableName="article_revision_characteristics">
377 <column name="revision" type="INTEGER">
378 <constraints nullable="false"/>
379 </column>
380 <column name="characteristic" type="VARCHAR">
381 <constraints nullable="false"/>
382 </column>
383 <column name="value" type="VARCHAR"/>
384 </createTable>
385 </changeSet>
386
387 <changeSet author="mulk (generated)" id="1592058325319-25">
388 <createTable tableName="comments">
389 <column autoIncrement="true" name="id" type="INTEGER">
390 <constraints nullable="false" primaryKey="true" primaryKeyName="comments_pkey"/>
391 </column>
392 <column name="article" type="INTEGER">
393 <constraints nullable="false"/>
394 </column>
395 <column name="global_id" type="VARCHAR"/>
396 </createTable>
397 </changeSet>
398
399 <changeSet author="mulk (generated)" id="1592058325319-26">
400 <createTable tableName="login_certificates">
401 <column name="user" type="INTEGER">
402 <constraints nullable="false" primaryKey="true" primaryKeyName="login_certificates_pkey"/>
403 </column>
404 <column name="certificate" type="BYTEA">
405 <constraints nullable="false" primaryKey="true" primaryKeyName="login_certificates_pkey"/>
406 </column>
407 </createTable>
408 </changeSet>
409
410 <changeSet author="mulk (generated)" id="1592058325319-27">
411 <addForeignKeyConstraint baseColumnNames="type" baseTableName="articles"
412 constraintName="articles_type_fkey" deferrable="false" initiallyDeferred="false"
413 onDelete="NO ACTION" onUpdate="NO ACTION" referencedColumnNames="id"
414 referencedTableName="article_types" validate="true"/>
415 </changeSet>
416
417 <changeSet author="mulk (generated)" id="1592058325319-28">
418 <addForeignKeyConstraint baseColumnNames="user" baseTableName="openids"
419 constraintName="openids_user_fkey" deferrable="false" initiallyDeferred="false"
420 onDelete="NO ACTION" onUpdate="NO ACTION" referencedColumnNames="id"
421 referencedTableName="users" validate="true"/>
422 </changeSet>
423
424 <changeSet author="mulk (generated)" id="1592058325319-29">
425 <addForeignKeyConstraint baseColumnNames="user" baseTableName="passwords"
426 constraintName="passwords_user_fkey" deferrable="false" initiallyDeferred="false"
427 onDelete="NO ACTION" onUpdate="NO ACTION" referencedColumnNames="id"
428 referencedTableName="users" validate="true"/>
429 </changeSet>
430
Matthias Andreas Benkard4eca0392023-12-02 13:46:54 +0100431 <changeSet author="mulk (generated)" id="1592058325319-30" runOnChange="true">
432 <createView replaceIfExists="true" fullDefinition="false" viewName="article_comment_counts">SELECT a.id AS article,
Matthias Andreas Benkard80fc4312020-06-13 16:59:04 +0200433 count(c.*) AS comment_count
434 FROM (articles a
435 LEFT JOIN comments c ON (((c.article = a.id) AND (EXISTS ( SELECT comment_revisions.id,
436 comment_revisions.comment,
437 comment_revisions.date,
438 comment_revisions.content,
439 comment_revisions.author,
440 comment_revisions.format,
441 comment_revisions.status,
442 comment_revisions.article_revision,
443 comment_revisions.submitter_ip,
444 comment_revisions.submitter_user_agent
445 FROM comment_revisions
446 WHERE ((comment_revisions.comment = c.id) AND ((comment_revisions.status)::text = ANY
447 (ARRAY[('approved'::character varying)::text, ('trusted'::character varying)::text]))))))))
448 GROUP BY a.id;
449 </createView>
450 </changeSet>
451
452 <changeSet author="mulk (generated)" id="1592058325319-31">
453 <addForeignKeyConstraint baseColumnNames="article" baseTableName="comments"
454 constraintName="comments_article_fkey" deferrable="false" initiallyDeferred="false"
455 onDelete="NO ACTION" onUpdate="NO ACTION" referencedColumnNames="id"
456 referencedTableName="articles" validate="true"/>
457 </changeSet>
458
459 <changeSet author="mulk (generated)" id="1592058325319-32">
460 <addForeignKeyConstraint baseColumnNames="article" baseTableName="journal_entries"
461 constraintName="journal_entries_article_fkey" deferrable="false" initiallyDeferred="false"
462 onDelete="NO ACTION" onUpdate="NO ACTION" referencedColumnNames="id"
463 referencedTableName="articles" validate="true"/>
464 </changeSet>
465
Matthias Andreas Benkard4eca0392023-12-02 13:46:54 +0100466 <changeSet author="mulk (generated)" id="1592058325319-33" runOnChange="true">
467 <createView replaceIfExists="true" fullDefinition="false" viewName="article_branch_tips">SELECT
Matthias Andreas Benkard80fc4312020-06-13 16:59:04 +0200468 article_revisions.article,
469 article_revisions.id AS revision
470 FROM (( SELECT article_revisions_1.id
471 FROM article_revisions article_revisions_1
472 EXCEPT
473 SELECT article_revision_parenthood.parent
474 FROM article_revision_parenthood) branch_tips
475 JOIN article_revisions USING (id));
476 </createView>
477 </changeSet>
478
Matthias Andreas Benkard4eca0392023-12-02 13:46:54 +0100479 <changeSet author="mulk (generated)" id="1592058325319-34" runOnChange="true">
480 <createView replaceIfExists="true" fullDefinition="false" viewName="article_publishing_dates">SELECT
Matthias Andreas Benkard80fc4312020-06-13 16:59:04 +0200481 article_revisions.article,
482 min(article_revisions.date) AS publishing_date
483 FROM article_revisions
484 WHERE ((article_revisions.status)::text = ANY (ARRAY[('published'::character varying)::text,
485 ('syndicated'::character varying)::text]))
486 GROUP BY article_revisions.article;
487 </createView>
488 </changeSet>
489
490 <changeSet author="mulk (generated)" id="1592058325319-35">
491 <addForeignKeyConstraint baseColumnNames="article" baseTableName="article_revisions"
492 constraintName="article_revisions_article_fkey" deferrable="false" initiallyDeferred="false"
493 onDelete="NO ACTION" onUpdate="NO ACTION" referencedColumnNames="id"
494 referencedTableName="articles" validate="true"/>
495 </changeSet>
496
497 <changeSet author="mulk (generated)" id="1592058325319-36">
498 <addForeignKeyConstraint baseColumnNames="author" baseTableName="article_revisions"
499 constraintName="article_revisions_author_fkey" deferrable="false" initiallyDeferred="false"
500 onDelete="NO ACTION" onUpdate="NO ACTION" referencedColumnNames="id"
501 referencedTableName="users" validate="true"/>
502 </changeSet>
503
Matthias Andreas Benkard4eca0392023-12-02 13:46:54 +0100504 <changeSet author="mulk (generated)" id="1592058325319-37" runOnChange="false">
Matthias Andreas Benkard8c858382023-12-02 14:09:19 +0100505 <validCheckSum>8:d3297cb8b06a3c8e0c2df40bb21ba4d3</validCheckSum>
Matthias Andreas Benkard4eca0392023-12-02 13:46:54 +0100506 <validCheckSum>9:1ddb31e4daad9a3e759f908348d585df</validCheckSum>
Matthias Andreas Benkard80fc4312020-06-13 16:59:04 +0200507 <createIndex indexName="article_revisions_english_ts_idx" tableName="article_revisions">
508 <column computed="true"
Matthias Andreas Benkard4eca0392023-12-02 13:46:54 +0100509 name="((setweight(to_tsvector('english'::regconfig, (title)::text), 'A'::&quot;char&quot;) || setweight(to_tsvector('english'::regconfig, (content)::text), 'D'::&quot;char&quot;)))"/>
Matthias Andreas Benkard80fc4312020-06-13 16:59:04 +0200510 </createIndex>
511 </changeSet>
512
Matthias Andreas Benkard4eca0392023-12-02 13:46:54 +0100513 <changeSet author="mulk (generated)" id="1592058325319-38" runOnChange="false">
Matthias Andreas Benkard8c858382023-12-02 14:09:19 +0100514 <validCheckSum>8:4916246f4404e8621541c84fbc770427</validCheckSum>
Matthias Andreas Benkard4eca0392023-12-02 13:46:54 +0100515 <validCheckSum>9:8e65575f838c89b5963c00deb9d41ca9</validCheckSum>
Matthias Andreas Benkard80fc4312020-06-13 16:59:04 +0200516 <createIndex indexName="article_revisions_french_ts_idx" tableName="article_revisions">
517 <column computed="true"
Matthias Andreas Benkard4eca0392023-12-02 13:46:54 +0100518 name="((setweight(to_tsvector('french'::regconfig, (title)::text), 'A'::&quot;char&quot;) || setweight(to_tsvector('french'::regconfig, (content)::text), 'D'::&quot;char&quot;)))"/>
Matthias Andreas Benkard80fc4312020-06-13 16:59:04 +0200519 </createIndex>
520 </changeSet>
521
Matthias Andreas Benkard4eca0392023-12-02 13:46:54 +0100522 <changeSet author="mulk (generated)" id="1592058325319-39" runOnChange="false">
Matthias Andreas Benkard8c858382023-12-02 14:09:19 +0100523 <validCheckSum>8:8193d6d6df241e604e3cd54cd7584229</validCheckSum>
Matthias Andreas Benkard4eca0392023-12-02 13:46:54 +0100524 <validCheckSum>9:b388ba620250e303e711546b7e8c79a7</validCheckSum>
Matthias Andreas Benkard80fc4312020-06-13 16:59:04 +0200525 <createIndex indexName="article_revisions_german_ts_idx" tableName="article_revisions">
526 <column computed="true"
Matthias Andreas Benkard4eca0392023-12-02 13:46:54 +0100527 name="((setweight(to_tsvector('german'::regconfig, (title)::text), 'A'::&quot;char&quot;) || setweight(to_tsvector('german'::regconfig, (content)::text), 'D'::&quot;char&quot;)))"/>
Matthias Andreas Benkard80fc4312020-06-13 16:59:04 +0200528 </createIndex>
529 </changeSet>
530
531 <changeSet author="mulk (generated)" id="1592058325319-40">
532 <addUniqueConstraint columnNames="global_id" constraintName="article_revisions_global_id_key"
533 tableName="article_revisions"/>
534 </changeSet>
535
536 <changeSet author="mulk (generated)" id="1592058325319-41">
537 <addForeignKeyConstraint baseColumnNames="child" baseTableName="article_revision_parenthood"
538 constraintName="article_revision_parenthood_child_fkey" deferrable="false"
539 initiallyDeferred="false" onDelete="NO ACTION" onUpdate="NO ACTION" referencedColumnNames="id"
540 referencedTableName="article_revisions" validate="true"/>
541 </changeSet>
542
543 <changeSet author="mulk (generated)" id="1592058325319-42">
544 <addForeignKeyConstraint baseColumnNames="parent" baseTableName="article_revision_parenthood"
545 constraintName="article_revision_parenthood_parent_fkey" deferrable="false"
546 initiallyDeferred="false" onDelete="NO ACTION" onUpdate="NO ACTION" referencedColumnNames="id"
547 referencedTableName="article_revisions" validate="true"/>
548 </changeSet>
549
550 <changeSet author="mulk (generated)" id="1592058325319-43">
551 <addForeignKeyConstraint baseColumnNames="user" baseTableName="user_permissions"
552 constraintName="user_permissions_user_fkey" deferrable="false" initiallyDeferred="false"
553 onDelete="NO ACTION" onUpdate="NO ACTION" referencedColumnNames="id"
554 referencedTableName="users" validate="true"/>
555 </changeSet>
556
557 <changeSet author="mulk (generated)" id="1592058325319-44">
558 <addForeignKeyConstraint baseColumnNames="entry_id" baseTableName="journal_pingback"
559 constraintName="journal_pingback_journal_entryfk" deferrable="false" initiallyDeferred="false"
560 onDelete="NO ACTION" onUpdate="NO ACTION" referencedColumnNames="id"
561 referencedTableName="journal_entry" validate="true"/>
562 </changeSet>
563
564 <changeSet author="mulk (generated)" id="1592058325319-45">
565 <addForeignKeyConstraint baseColumnNames="entry_id" baseTableName="journal_trackback"
566 constraintName="journal_trackback_journal_entryfk" deferrable="false"
567 initiallyDeferred="false" onDelete="NO ACTION" onUpdate="NO ACTION" referencedColumnNames="id"
568 referencedTableName="journal_entry" validate="true"/>
569 </changeSet>
570
571 <changeSet author="mulk (generated)" id="1592058325319-46">
572 <addForeignKeyConstraint baseColumnNames="user" baseTableName="user_settings"
573 constraintName="user_settings_user_fkey" deferrable="false" initiallyDeferred="false"
574 onDelete="NO ACTION" onUpdate="NO ACTION" referencedColumnNames="id"
575 referencedTableName="users" validate="true"/>
576 </changeSet>
577
578 <changeSet author="mulk (generated)" id="1592058325319-47">
579 <addForeignKeyConstraint baseColumnNames="article" baseTableName="article_category_memberships"
580 constraintName="article_category_memberships_article_fkey" deferrable="false"
581 initiallyDeferred="false" onDelete="NO ACTION" onUpdate="NO ACTION" referencedColumnNames="id"
582 referencedTableName="articles" validate="true"/>
583 </changeSet>
584
585 <changeSet author="mulk (generated)" id="1592058325319-48">
586 <addForeignKeyConstraint baseColumnNames="category" baseTableName="category_inclusions"
587 constraintName="category_inclusions_category_fkey" deferrable="false"
588 initiallyDeferred="false" onDelete="NO ACTION" onUpdate="NO ACTION" referencedColumnNames="id"
589 referencedTableName="categories" validate="true"/>
590 </changeSet>
591
592 <changeSet author="mulk (generated)" id="1592058325319-49">
593 <addForeignKeyConstraint baseColumnNames="supercategory" baseTableName="category_inclusions"
594 constraintName="category_inclusions_supercategory_fkey" deferrable="false"
595 initiallyDeferred="false" onDelete="NO ACTION" onUpdate="NO ACTION" referencedColumnNames="id"
596 referencedTableName="categories" validate="true"/>
597 </changeSet>
598
599 <changeSet author="mulk (generated)" id="1592058325319-50">
600 <addForeignKeyConstraint baseColumnNames="journal" baseTableName="journal_entries"
601 constraintName="journal_entries_journal_fkey" deferrable="false" initiallyDeferred="false"
602 onDelete="NO ACTION" onUpdate="NO ACTION" referencedColumnNames="id"
603 referencedTableName="journals" validate="true"/>
604 </changeSet>
605
606 <changeSet author="mulk (generated)" id="1592058325319-51">
607 <addForeignKeyConstraint baseColumnNames="article" baseTableName="article_aliases"
608 constraintName="article_aliases_article_fkey" deferrable="false" initiallyDeferred="false"
609 onDelete="NO ACTION" onUpdate="NO ACTION" referencedColumnNames="id"
610 referencedTableName="articles" validate="true"/>
611 </changeSet>
612
613 <changeSet author="mulk (generated)" id="1592058325319-52">
614 <addForeignKeyConstraint baseColumnNames="author" baseTableName="comment_revisions"
615 constraintName="comment_revisions_author_fkey" deferrable="false" initiallyDeferred="false"
616 onDelete="NO ACTION" onUpdate="NO ACTION" referencedColumnNames="id"
617 referencedTableName="users" validate="true"/>
618 </changeSet>
619
620 <changeSet author="mulk (generated)" id="1592058325319-53">
621 <addForeignKeyConstraint baseColumnNames="revision"
622 baseTableName="article_revision_characteristics"
623 constraintName="article_revision_characteristics_revision_fkey" deferrable="false"
624 initiallyDeferred="false" onDelete="NO ACTION" onUpdate="NO ACTION" referencedColumnNames="id"
625 referencedTableName="article_revisions" validate="true"/>
626 </changeSet>
627
628 <changeSet author="mulk (generated)" id="1592058325319-54">
629 <addUniqueConstraint columnNames="revision, characteristic, value"
630 constraintName="article_revision_characteristics_revision_key"
631 tableName="article_revision_characteristics"/>
632 </changeSet>
633
634 <changeSet author="mulk (generated)" id="1592058325319-55">
635 <addForeignKeyConstraint baseColumnNames="user" baseTableName="login_certificates"
636 constraintName="login_certificates_user_fkey" deferrable="false" initiallyDeferred="false"
637 onDelete="NO ACTION" onUpdate="NO ACTION" referencedColumnNames="id"
638 referencedTableName="users" validate="true"/>
639 </changeSet>
640
641 <changeSet author="mulk (generated)" id="1592058325319-56">
642 <addForeignKeyConstraint baseColumnNames="entry_id" baseTableName="journal_comment"
643 constraintName="journal_comment_journal_entryfk" deferrable="false" initiallyDeferred="false"
644 onDelete="NO ACTION" onUpdate="NO ACTION" referencedColumnNames="id"
645 referencedTableName="journal_entry" validate="true"/>
646 </changeSet>
647
648 <changeSet author="mulk (generated)" id="1592058325319-57">
649 <addForeignKeyConstraint baseColumnNames="comment" baseTableName="comment_revisions"
650 constraintName="comment_revisions_comment_fkey" deferrable="false" initiallyDeferred="false"
651 onDelete="NO ACTION" onUpdate="NO ACTION" referencedColumnNames="id"
652 referencedTableName="comments" validate="true"/>
653 </changeSet>
654
655 <changeSet author="mulk (generated)" id="1592058325319-58">
656 <createSequence cacheSize="1" cycle="false" dataType="bigint" incrementBy="1"
657 maxValue="9223372036854775807" minValue="1" sequenceName="transaction_key_seq"
658 startValue="1"/>
659 </changeSet>
660
Matthias Andreas Benkard8c858382023-12-02 14:09:19 +0100661 <changeSet author="mulk" id="1592059602097-0" runOnChange="true">
Matthias Andreas Benkard4eca0392023-12-02 13:46:54 +0100662 <sql dbms="postgresql" endDelimiter=";">
Matthias Andreas Benkard8c858382023-12-02 14:09:19 +0100663 CREATE SCHEMA IF NOT EXISTS benki
Matthias Andreas Benkard4eca0392023-12-02 13:46:54 +0100664 </sql>
665 </changeSet>
666
Matthias Andreas Benkard80fc4312020-06-13 16:59:04 +0200667 <changeSet author="mulk (generated)" id="1592059602097-1">
668 <createTable schemaName="benki" tableName="openids">
669 <column name="user" type="INTEGER">
670 <constraints nullable="false"/>
671 </column>
672 <column name="openid" type="VARCHAR">
673 <constraints nullable="false" primaryKey="true" primaryKeyName="openids_pkey"/>
674 </column>
675 </createTable>
676 </changeSet>
677
678 <changeSet author="mulk (generated)" id="1592059602097-2">
679 <createTable schemaName="benki" tableName="lazychat_references">
680 <column name="referrer" type="INTEGER">
681 <constraints nullable="false" primaryKey="true" primaryKeyName="lazychat_references_pkey"/>
682 </column>
683 <column name="referee" type="INTEGER">
684 <constraints nullable="false" primaryKey="true" primaryKeyName="lazychat_references_pkey"/>
685 </column>
686 </createTable>
687 </changeSet>
688
689 <changeSet author="mulk (generated)" id="1592059602097-3">
690 <createTable schemaName="benki" tableName="rsa_keys">
691 <column name="modulus" type="numeric">
692 <constraints nullable="false" primaryKey="true" primaryKeyName="rsa_keys_pkey"/>
693 </column>
694 <column name="exponent" type="numeric">
695 <constraints nullable="false" primaryKey="true" primaryKeyName="rsa_keys_pkey"/>
696 </column>
697 </createTable>
698 </changeSet>
699
700 <changeSet author="mulk (generated)" id="1592059602097-4">
701 <createTable schemaName="benki" tableName="user_jids">
702 <column name="user" type="INTEGER">
703 <constraints nullable="false" primaryKey="true" primaryKeyName="user_jids_pkey"/>
704 </column>
705 <column name="jid" type="VARCHAR">
706 <constraints nullable="false" primaryKey="true" primaryKeyName="user_jids_pkey"/>
707 </column>
708 </createTable>
709 </changeSet>
710
711 <changeSet author="mulk (generated)" id="1592059602097-5">
712 <createTable schemaName="benki" tableName="wiki_page_revisions">
713 <column autoIncrement="true" name="id" type="INTEGER">
714 <constraints nullable="false" primaryKey="true" primaryKeyName="wiki_page_revisions_pkey"/>
715 </column>
716 <column name="page" type="INTEGER">
717 <constraints nullable="false"/>
718 </column>
719 <column defaultValueComputed="now()" name="date" type="TIMESTAMP WITH TIME ZONE"/>
720 <column name="title" type="VARCHAR"/>
721 <column name="content" type="VARCHAR"/>
722 <column name="author" type="INTEGER"/>
723 <column name="format" type="VARCHAR"/>
724 </createTable>
725 </changeSet>
726
727 <changeSet author="mulk (generated)" id="1592059602097-6">
728 <createTable schemaName="benki" tableName="user_roles">
729 <column name="user" type="INTEGER">
730 <constraints nullable="false" primaryKey="true" primaryKeyName="user_roles_pkey"/>
731 </column>
732 <column name="role" type="INTEGER">
733 <constraints nullable="false" primaryKey="true" primaryKeyName="user_roles_pkey"/>
734 </column>
735 </createTable>
736 </changeSet>
737
738 <changeSet author="mulk (generated)" id="1592059602097-7">
739 <createTable schemaName="benki" tableName="post_targets">
740 <column name="message" type="INTEGER">
741 <constraints nullable="false" primaryKey="true" primaryKeyName="lazychat_targets_pkey"/>
742 </column>
743 <column name="target" type="INTEGER">
744 <constraints nullable="false" primaryKey="true" primaryKeyName="lazychat_targets_pkey"/>
745 </column>
746 </createTable>
747 </changeSet>
748
749 <changeSet author="mulk (generated)" id="1592059602097-8">
750 <createTable schemaName="benki" tableName="user_nicknames">
751 <column name="user" type="INTEGER">
752 <constraints nullable="false"/>
753 </column>
754 <column name="nickname" type="VARCHAR">
755 <constraints nullable="false" primaryKey="true" primaryKeyName="user_nicknames_pkey"/>
756 </column>
757 </createTable>
758 </changeSet>
759
760 <changeSet author="mulk (generated)" id="1592059602097-9">
761 <createTable schemaName="benki" tableName="posts">
762 <column autoIncrement="true" name="id" type="INTEGER">
763 <constraints nullable="false" primaryKey="true" primaryKeyName="posts_pkey"/>
764 </column>
765 <column name="owner" type="INTEGER"/>
766 <column defaultValueComputed="now()" name="date" type="TIMESTAMP WITH TIME ZONE"/>
767 </createTable>
768 </changeSet>
769
770 <changeSet author="mulk (generated)" id="1592059602097-10">
771 <createTable schemaName="benki" tableName="users">
772 <column autoIncrement="true" name="id" type="INTEGER">
773 <constraints nullable="false" primaryKey="true" primaryKeyName="users_pkey"/>
774 </column>
775 <column name="first_name" type="VARCHAR"/>
776 <column name="middle_names" type="VARCHAR"/>
777 <column name="last_name" type="VARCHAR"/>
778 <column name="email" type="VARCHAR"/>
779 <column name="website" type="VARCHAR"/>
780 <column name="status" type="VARCHAR"/>
781 <column name="role" type="INTEGER">
782 <constraints nullable="false"/>
783 </column>
784 </createTable>
785 </changeSet>
786
787 <changeSet author="mulk (generated)" id="1592059602097-11">
788 <createTable schemaName="benki" tableName="webids">
789 <column name="user" type="INTEGER">
790 <constraints nullable="false"/>
791 </column>
792 <column name="webid" type="VARCHAR">
793 <constraints nullable="false" primaryKey="true" primaryKeyName="webids_pkey"/>
794 </column>
795 </createTable>
796 </changeSet>
797
798 <changeSet author="mulk (generated)" id="1592059602097-12">
799 <createTable schemaName="benki" tableName="page_keys">
800 <column name="user" type="INTEGER">
801 <constraints nullable="false"/>
802 </column>
803 <column name="page" type="VARCHAR">
804 <constraints nullable="false" primaryKey="true" primaryKeyName="page_keys_pkey"/>
805 </column>
806 <column name="key" type="numeric">
807 <constraints nullable="false" primaryKey="true" primaryKeyName="page_keys_pkey"/>
808 </column>
809 </createTable>
810 </changeSet>
811
812 <changeSet author="mulk (generated)" id="1592059602097-13">
813 <createTable schemaName="benki" tableName="role_tags">
814 <column name="role" type="INTEGER">
815 <constraints nullable="false" primaryKey="true" primaryKeyName="role_tags_pkey"/>
816 </column>
817 <column name="tag" type="VARCHAR">
818 <constraints nullable="false" primaryKey="true" primaryKeyName="role_tags_pkey"/>
819 </column>
820 </createTable>
821 </changeSet>
822
823 <changeSet author="mulk (generated)" id="1592059602097-14">
824 <createTable schemaName="benki" tableName="user_rsa_keys">
825 <column name="user" type="INTEGER">
826 <constraints nullable="false" primaryKey="true" primaryKeyName="user_rsa_keys_pkey"/>
827 </column>
828 <column name="modulus" type="numeric">
829 <constraints nullable="false" primaryKey="true" primaryKeyName="user_rsa_keys_pkey"/>
830 </column>
831 <column name="exponent" type="numeric">
832 <constraints nullable="false" primaryKey="true" primaryKeyName="user_rsa_keys_pkey"/>
833 </column>
834 </createTable>
835 </changeSet>
836
837 <changeSet author="mulk (generated)" id="1592059602097-15">
838 <createTable schemaName="benki" tableName="user_email_addresses">
839 <column name="user" type="INTEGER">
840 <constraints nullable="false"/>
841 </column>
842 <column name="email" type="VARCHAR">
843 <constraints nullable="false" primaryKey="true" primaryKeyName="user_email_addresses_pkey"/>
844 </column>
845 </createTable>
846 </changeSet>
847
848 <changeSet author="mulk (generated)" id="1592059602097-16">
849 <createTable schemaName="benki" tableName="role_subroles">
850 <column name="superrole" type="INTEGER">
851 <constraints nullable="false" primaryKey="true" primaryKeyName="role_subroles_pkey"/>
852 </column>
853 <column name="subrole" type="INTEGER">
854 <constraints nullable="false" primaryKey="true" primaryKeyName="role_subroles_pkey"/>
855 </column>
856 </createTable>
857 </changeSet>
858
859 <changeSet author="mulk (generated)" id="1592059602097-17">
860 <createTable schemaName="benki" tableName="roles">
861 <column autoIncrement="true" name="id" type="INTEGER">
862 <constraints nullable="false" primaryKey="true" primaryKeyName="roles_pkey"/>
863 </column>
864 <column name="name" type="VARCHAR"/>
865 </createTable>
866 </changeSet>
867
868 <changeSet author="mulk (generated)" id="1592059602097-18">
869 <createTable schemaName="benki" tableName="bookmark_tags">
870 <column name="bookmark" type="INTEGER">
871 <constraints nullable="false" primaryKey="true" primaryKeyName="bookmark_tags_pkey"/>
872 </column>
873 <column name="tag" type="VARCHAR">
874 <constraints nullable="false" primaryKey="true" primaryKeyName="bookmark_tags_pkey"/>
875 </column>
876 </createTable>
877 </changeSet>
878
879 <changeSet author="mulk (generated)" id="1592059602097-19">
880 <createTable schemaName="benki" tableName="user_default_target">
881 <column name="user" type="INTEGER">
882 <constraints nullable="false" primaryKey="true" primaryKeyName="user_default_target_pkey"/>
883 </column>
884 <column name="target" type="INTEGER">
885 <constraints nullable="false" primaryKey="true" primaryKeyName="user_default_target_pkey"/>
886 </column>
887 </createTable>
888 </changeSet>
889
890 <changeSet author="mulk (generated)" id="1592059602097-20">
891 <createTable schemaName="benki" tableName="wiki_pages">
892 <column autoIncrement="true" name="id" type="INTEGER">
893 <constraints nullable="false" primaryKey="true" primaryKeyName="wiki_pages_pkey"/>
894 </column>
895 </createTable>
896 </changeSet>
897
898 <changeSet author="mulk (generated)" id="1592059602097-21">
899 <addForeignKeyConstraint baseColumnNames="modulus,exponent" baseTableName="user_rsa_keys"
900 baseTableSchemaName="benki" constraintName="user_rsa_keys_modulus_fkey" deferrable="false"
901 initiallyDeferred="false" onDelete="NO ACTION" onUpdate="NO ACTION"
902 referencedColumnNames="modulus,exponent" referencedTableName="rsa_keys"
903 referencedTableSchemaName="benki" validate="true"/>
904 </changeSet>
905
906 <changeSet author="mulk (generated)" id="1592059602097-22">
907 <createIndex indexName="user_jids_user" schemaName="benki" tableName="user_jids">
908 <column name="user"/>
909 </createIndex>
910 </changeSet>
911
912 <changeSet author="mulk (generated)" id="1592059602097-23">
913 <createIndex indexName="user_nicknames_user" schemaName="benki" tableName="user_nicknames">
914 <column name="user"/>
915 </createIndex>
916 </changeSet>
917
918 <changeSet author="mulk (generated)" id="1592059602097-24">
919 <createTable schemaName="benki" tableName="bookmarks">
920 <column autoIncrement="true" name="id" type="INTEGER">
921 <constraints nullable="false" primaryKey="true" primaryKeyName="bookmarks_pkey"/>
922 </column>
923 <column name="owner" type="INTEGER"/>
924 <column defaultValueComputed="now()" name="date" type="TIMESTAMP WITH TIME ZONE"/>
925 <column name="uri" type="VARCHAR">
926 <constraints nullable="false"/>
927 </column>
928 <column name="title" type="VARCHAR"/>
929 <column name="description" type="VARCHAR"/>
930 </createTable>
931 </changeSet>
932
933 <changeSet author="mulk (generated)" id="1592059602097-25">
934 <createTable schemaName="benki" tableName="lazychat_messages">
935 <column autoIncrement="true" name="id" type="INTEGER">
936 <constraints nullable="false" primaryKey="true" primaryKeyName="lazychat_messages_pkey"/>
937 </column>
938 <column name="owner" type="INTEGER"/>
939 <column defaultValueComputed="now()" name="date" type="TIMESTAMP WITH TIME ZONE"/>
940 <column name="content" type="VARCHAR"/>
941 <column name="format" type="VARCHAR">
942 <constraints nullable="false"/>
943 </column>
944 </createTable>
945 </changeSet>
946
947 <changeSet author="mulk (generated)" id="1592059602097-26">
948 <addForeignKeyConstraint baseColumnNames="user" baseTableName="webids"
949 baseTableSchemaName="benki" constraintName="webids_user_fkey" deferrable="false"
950 initiallyDeferred="false" onDelete="NO ACTION" onUpdate="NO ACTION" referencedColumnNames="id"
951 referencedTableName="users" referencedTableSchemaName="benki" validate="true"/>
952 </changeSet>
953
954 <changeSet author="mulk (generated)" id="1592059602097-27">
955 <addForeignKeyConstraint baseColumnNames="author" baseTableName="wiki_page_revisions"
956 baseTableSchemaName="benki" constraintName="wiki_page_revisions_author_fkey"
957 deferrable="false" initiallyDeferred="false" onDelete="NO ACTION" onUpdate="NO ACTION"
958 referencedColumnNames="id" referencedTableName="users" referencedTableSchemaName="benki"
959 validate="true"/>
960 </changeSet>
961
962 <changeSet author="mulk (generated)" id="1592059602097-28">
963 <addForeignKeyConstraint baseColumnNames="user" baseTableName="page_keys"
964 baseTableSchemaName="benki" constraintName="page_keys_user_fkey" deferrable="false"
965 initiallyDeferred="false" onDelete="NO ACTION" onUpdate="NO ACTION" referencedColumnNames="id"
966 referencedTableName="users" referencedTableSchemaName="benki" validate="true"/>
967 </changeSet>
968
969 <changeSet author="mulk (generated)" id="1592059602097-29">
970 <addForeignKeyConstraint baseColumnNames="user" baseTableName="user_rsa_keys"
971 baseTableSchemaName="benki" constraintName="user_rsa_keys_user_fkey" deferrable="false"
972 initiallyDeferred="false" onDelete="NO ACTION" onUpdate="NO ACTION" referencedColumnNames="id"
973 referencedTableName="users" referencedTableSchemaName="benki" validate="true"/>
974 </changeSet>
975
976 <changeSet author="mulk (generated)" id="1592059602097-30">
977 <addForeignKeyConstraint baseColumnNames="user" baseTableName="user_email_addresses"
978 baseTableSchemaName="benki" constraintName="user_email_addresses_user_fkey" deferrable="false"
979 initiallyDeferred="false" onDelete="NO ACTION" onUpdate="NO ACTION" referencedColumnNames="id"
980 referencedTableName="users" referencedTableSchemaName="benki" validate="true"/>
981 </changeSet>
982
Matthias Andreas Benkard4eca0392023-12-02 13:46:54 +0100983 <changeSet author="mulk (generated)" id="1592059602097-31" runOnChange="true">
984 <createView replaceIfExists="true" fullDefinition="false" schemaName="benki" viewName="effective_role_subroles">WITH
Matthias Andreas Benkard80fc4312020-06-13 16:59:04 +0200985 RECURSIVE t(superrole, subrole) AS (
986 SELECT roles.id,
987 roles.id
Matthias Andreas Benkard4eca0392023-12-02 13:46:54 +0100988 FROM benki.roles roles
Matthias Andreas Benkard80fc4312020-06-13 16:59:04 +0200989 UNION
990 SELECT t_1.superrole,
991 rs.subrole
992 FROM (t t_1
Matthias Andreas Benkard4eca0392023-12-02 13:46:54 +0100993 JOIN benki.role_subroles rs ON ((rs.superrole = t_1.subrole)))
Matthias Andreas Benkard80fc4312020-06-13 16:59:04 +0200994 )
995 SELECT t.superrole,
996 t.subrole
997 FROM t;
998 </createView>
999 </changeSet>
1000
1001 <changeSet author="mulk (generated)" id="1592059602097-32">
1002 <addForeignKeyConstraint baseColumnNames="target" baseTableName="user_default_target"
1003 baseTableSchemaName="benki" constraintName="user_default_target_target_fkey"
1004 deferrable="false" initiallyDeferred="false" onDelete="NO ACTION" onUpdate="NO ACTION"
1005 referencedColumnNames="id" referencedTableName="roles" referencedTableSchemaName="benki"
1006 validate="true"/>
1007 </changeSet>
1008
1009 <changeSet author="mulk (generated)" id="1592059602097-33">
1010 <addForeignKeyConstraint baseColumnNames="role" baseTableName="user_roles"
1011 baseTableSchemaName="benki" constraintName="user_roles_role_fkey" deferrable="false"
1012 initiallyDeferred="false" onDelete="NO ACTION" onUpdate="NO ACTION" referencedColumnNames="id"
1013 referencedTableName="roles" referencedTableSchemaName="benki" validate="true"/>
1014 </changeSet>
1015
1016 <changeSet author="mulk (generated)" id="1592059602097-34">
1017 <addForeignKeyConstraint baseColumnNames="role" baseTableName="users"
1018 baseTableSchemaName="benki" constraintName="users_role_fkey" deferrable="false"
1019 initiallyDeferred="false" onDelete="NO ACTION" onUpdate="NO ACTION" referencedColumnNames="id"
1020 referencedTableName="roles" referencedTableSchemaName="benki" validate="true"/>
1021 </changeSet>
1022
1023 <changeSet author="mulk (generated)" id="1592059602097-35">
1024 <addForeignKeyConstraint baseColumnNames="user" baseTableName="user_default_target"
1025 baseTableSchemaName="benki" constraintName="user_default_target_user_fkey" deferrable="false"
1026 initiallyDeferred="false" onDelete="NO ACTION" onUpdate="NO ACTION" referencedColumnNames="id"
1027 referencedTableName="users" referencedTableSchemaName="benki" validate="true"/>
1028 </changeSet>
1029
1030 <changeSet author="mulk (generated)" id="1592059602097-36">
1031 <addForeignKeyConstraint baseColumnNames="user" baseTableName="openids"
1032 baseTableSchemaName="benki" constraintName="openids_user_fkey" deferrable="false"
1033 initiallyDeferred="false" onDelete="NO ACTION" onUpdate="NO ACTION" referencedColumnNames="id"
1034 referencedTableName="users" referencedTableSchemaName="benki" validate="true"/>
1035 </changeSet>
1036
1037 <changeSet author="mulk (generated)" id="1592059602097-37">
1038 <addForeignKeyConstraint baseColumnNames="user" baseTableName="user_jids"
1039 baseTableSchemaName="benki" constraintName="user_jids_user_fkey" deferrable="false"
1040 initiallyDeferred="false" onDelete="NO ACTION" onUpdate="NO ACTION" referencedColumnNames="id"
1041 referencedTableName="users" referencedTableSchemaName="benki" validate="true"/>
1042 </changeSet>
1043
1044 <changeSet author="mulk (generated)" id="1592059602097-38">
1045 <addForeignKeyConstraint baseColumnNames="page" baseTableName="wiki_page_revisions"
1046 baseTableSchemaName="benki" constraintName="wiki_page_revisions_page_fkey" deferrable="false"
1047 initiallyDeferred="false" onDelete="NO ACTION" onUpdate="NO ACTION" referencedColumnNames="id"
1048 referencedTableName="wiki_pages" referencedTableSchemaName="benki" validate="true"/>
1049 </changeSet>
1050
Matthias Andreas Benkard4eca0392023-12-02 13:46:54 +01001051 <changeSet author="mulk (generated)" id="1592059602097-39" runOnChange="true">
1052 <createView replaceIfExists="true" fullDefinition="false" schemaName="benki" viewName="effective_user_roles">SELECT
Matthias Andreas Benkard80fc4312020-06-13 16:59:04 +02001053 ur."user",
1054 er.subrole AS role
Matthias Andreas Benkard4eca0392023-12-02 13:46:54 +01001055 FROM (benki.user_roles ur
1056 JOIN benki.effective_role_subroles er ON ((er.superrole = ur.role)))
Matthias Andreas Benkard80fc4312020-06-13 16:59:04 +02001057 UNION
1058 SELECT u.id AS "user",
1059 rt.role
Matthias Andreas Benkard4eca0392023-12-02 13:46:54 +01001060 FROM benki.users u,
1061 benki.role_tags rt
Matthias Andreas Benkard80fc4312020-06-13 16:59:04 +02001062 WHERE ((rt.tag)::text = ANY (ARRAY[('everyone'::character varying)::text, ('world'::character
1063 varying)::text]))
1064 UNION
1065 SELECT NULL::integer AS "user",
1066 rt.role
Matthias Andreas Benkard4eca0392023-12-02 13:46:54 +01001067 FROM benki.role_tags rt
Matthias Andreas Benkard80fc4312020-06-13 16:59:04 +02001068 WHERE ((rt.tag)::text = 'world'::text);
1069 </createView>
1070 </changeSet>
1071
1072 <changeSet author="mulk (generated)" id="1592059602097-40">
1073 <addForeignKeyConstraint baseColumnNames="user" baseTableName="user_roles"
1074 baseTableSchemaName="benki" constraintName="user_roles_user_fkey" deferrable="false"
1075 initiallyDeferred="false" onDelete="NO ACTION" onUpdate="NO ACTION" referencedColumnNames="id"
1076 referencedTableName="users" referencedTableSchemaName="benki" validate="true"/>
1077 </changeSet>
1078
1079 <changeSet author="mulk (generated)" id="1592059602097-41">
1080 <addForeignKeyConstraint baseColumnNames="target" baseTableName="post_targets"
1081 baseTableSchemaName="benki" constraintName="lazychat_targets_target_fkey" deferrable="false"
1082 initiallyDeferred="false" onDelete="NO ACTION" onUpdate="NO ACTION" referencedColumnNames="id"
1083 referencedTableName="roles" referencedTableSchemaName="benki" validate="true"/>
1084 </changeSet>
1085
Matthias Andreas Benkard4eca0392023-12-02 13:46:54 +01001086 <changeSet author="mulk (generated)" id="1592059602097-42" runOnChange="true">
1087 <createView replaceIfExists="true" fullDefinition="false" schemaName="benki" viewName="user_visible_posts">SELECT
Matthias Andreas Benkard80fc4312020-06-13 16:59:04 +02001088 eur."user",
1089 t.message
Matthias Andreas Benkard4eca0392023-12-02 13:46:54 +01001090 FROM benki.effective_user_roles eur,
1091 benki.post_targets t
Matthias Andreas Benkard80fc4312020-06-13 16:59:04 +02001092 WHERE (t.target = eur.role)
1093 UNION
1094 SELECT m.owner AS "user",
1095 m.id AS message
Matthias Andreas Benkard4eca0392023-12-02 13:46:54 +01001096 FROM benki.posts m;
Matthias Andreas Benkard80fc4312020-06-13 16:59:04 +02001097 </createView>
1098 </changeSet>
1099
1100 <changeSet author="mulk (generated)" id="1592059602097-43">
1101 <addForeignKeyConstraint baseColumnNames="user" baseTableName="user_nicknames"
1102 baseTableSchemaName="benki" constraintName="user_nicknames_user_fkey" deferrable="false"
1103 initiallyDeferred="false" onDelete="NO ACTION" onUpdate="NO ACTION" referencedColumnNames="id"
1104 referencedTableName="users" referencedTableSchemaName="benki" validate="true"/>
1105 </changeSet>
1106
1107 <changeSet author="mulk (generated)" id="1592059602097-44">
1108 <addForeignKeyConstraint baseColumnNames="owner" baseTableName="bookmarks"
1109 baseTableSchemaName="benki" constraintName="bookmarks_owner_fkey" deferrable="false"
1110 initiallyDeferred="false" onDelete="NO ACTION" onUpdate="NO ACTION" referencedColumnNames="id"
1111 referencedTableName="users" referencedTableSchemaName="benki" validate="true"/>
1112 </changeSet>
1113
Matthias Andreas Benkard4eca0392023-12-02 13:46:54 +01001114 <changeSet author="mulk (generated)" id="1592059602097-45" runOnChange="true">
1115 <createView replaceIfExists="true" fullDefinition="false" schemaName="benki" viewName="user_visible_bookmarks">SELECT
Matthias Andreas Benkard80fc4312020-06-13 16:59:04 +02001116 uvp."user",
1117 uvp.message
Matthias Andreas Benkard4eca0392023-12-02 13:46:54 +01001118 FROM (benki.user_visible_posts uvp
1119 JOIN benki.bookmarks bm ON ((bm.id = uvp.message)));
Matthias Andreas Benkard80fc4312020-06-13 16:59:04 +02001120 </createView>
1121 </changeSet>
1122
1123 <changeSet author="mulk (generated)" id="1592059602097-46">
1124 <addForeignKeyConstraint baseColumnNames="owner" baseTableName="lazychat_messages"
1125 baseTableSchemaName="benki" constraintName="lazychat_messages_author_fkey" deferrable="false"
1126 initiallyDeferred="false" onDelete="NO ACTION" onUpdate="NO ACTION" referencedColumnNames="id"
1127 referencedTableName="users" referencedTableSchemaName="benki" validate="true"/>
1128 </changeSet>
1129
1130 <changeSet author="mulk (generated)" id="1592059602097-47">
1131 <addForeignKeyConstraint baseColumnNames="referrer" baseTableName="lazychat_references"
1132 baseTableSchemaName="benki" constraintName="lazychat_references_referrer_fkey"
1133 deferrable="false" initiallyDeferred="false" onDelete="NO ACTION" onUpdate="NO ACTION"
1134 referencedColumnNames="id" referencedTableName="lazychat_messages"
1135 referencedTableSchemaName="benki" validate="true"/>
1136 </changeSet>
1137
Matthias Andreas Benkard4eca0392023-12-02 13:46:54 +01001138 <changeSet author="mulk (generated)" id="1592059602097-48" runOnChange="true">
1139 <createView replaceIfExists="true" fullDefinition="false" schemaName="benki" viewName="user_visible_lazychat_messages">
Matthias Andreas Benkard80fc4312020-06-13 16:59:04 +02001140 SELECT uvp."user",
1141 uvp.message
Matthias Andreas Benkard4eca0392023-12-02 13:46:54 +01001142 FROM (benki.user_visible_posts uvp
1143 JOIN benki.lazychat_messages lm ON ((lm.id = uvp.message)));
Matthias Andreas Benkard80fc4312020-06-13 16:59:04 +02001144 </createView>
1145 </changeSet>
1146
1147 <changeSet author="mulk (generated)" id="1592059602097-49">
1148 <addForeignKeyConstraint baseColumnNames="owner" baseTableName="posts"
1149 baseTableSchemaName="benki" constraintName="posts_owner_fkey" deferrable="false"
1150 initiallyDeferred="false" onDelete="NO ACTION" onUpdate="NO ACTION" referencedColumnNames="id"
1151 referencedTableName="users" referencedTableSchemaName="benki" validate="true"/>
1152 </changeSet>
1153
1154 <changeSet author="mulk (generated)" id="1592059602097-50">
1155 <addForeignKeyConstraint baseColumnNames="subrole" baseTableName="role_subroles"
1156 baseTableSchemaName="benki" constraintName="role_subroles_subrole_fkey" deferrable="false"
1157 initiallyDeferred="false" onDelete="NO ACTION" onUpdate="NO ACTION" referencedColumnNames="id"
1158 referencedTableName="roles" referencedTableSchemaName="benki" validate="true"/>
1159 </changeSet>
1160
1161 <changeSet author="mulk (generated)" id="1592059602097-51">
1162 <addForeignKeyConstraint baseColumnNames="superrole" baseTableName="role_subroles"
1163 baseTableSchemaName="benki" constraintName="role_subroles_superrole_fkey" deferrable="false"
1164 initiallyDeferred="false" onDelete="NO ACTION" onUpdate="NO ACTION" referencedColumnNames="id"
1165 referencedTableName="roles" referencedTableSchemaName="benki" validate="true"/>
1166 </changeSet>
1167
1168 <changeSet author="mulk (generated)" id="1592059602097-52">
1169 <addForeignKeyConstraint baseColumnNames="bookmark" baseTableName="bookmark_tags"
1170 baseTableSchemaName="benki" constraintName="bookmark_tags_bookmark_fkey" deferrable="false"
1171 initiallyDeferred="false" onDelete="NO ACTION" onUpdate="CASCADE" referencedColumnNames="id"
1172 referencedTableName="bookmarks" referencedTableSchemaName="benki" validate="true"/>
1173 </changeSet>
1174
1175</databaseChangeLog>