forked from Archives/Athou_commafeed
split client and server into maven modules
This commit is contained in:
@@ -0,0 +1,2 @@
|
||||
version=${project.version}
|
||||
git.commit=${git.commit.id.abbrev}
|
||||
31
commafeed-server/src/main/resources/banner.txt
Normal file
31
commafeed-server/src/main/resources/banner.txt
Normal file
@@ -0,0 +1,31 @@
|
||||
|
||||
.',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,..
|
||||
';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;.
|
||||
.;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;.
|
||||
';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;.
|
||||
';;;;;;;;;;;;;;;''''',,,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:;. .':clllc;.
|
||||
';;;;;;;;;;;;;. ..',;;;;;;;;;;;;;;;;;;;;;;;;;;:;. .:dd:'...,lxo.
|
||||
';;;;;;;;;;;:,. .',;;;;;;;;;;;;;;;;;;;;;;:;. .lx:. ,o: ..... . ... .... . .... ... .....
|
||||
';;;;;;;;;;;;;' .';;;;;;;;;;;;;;;;;;;;:;. ;ko ;oocccoo, .ooclcldd;:llcoxc. 'doclcldo;:lllod: .ldlccldc.
|
||||
';;;;;;;;;;;;;;;,'''.... .,;;;;;;;;;;;;;;;;;:;. ck: lx; :xc .dk; .dkc. cx; ,xx, 'xk:. .ox' ,:. ;x:
|
||||
';;;;;;;;;;;;;;;;;;;;;;;;;,.. .,;;;;;;;;;;;;;;;:;. :kc 'xl. .ox..do. .ox. ;x; ,xc .dd. cx, .':ccccok:
|
||||
';;;;;;;;;;;;;;,.....',,;;;;;;'. .;;;;;;;;;;;;;;:;. .dx' .cc.'xo. .ox..do. .ox. ;x; ,xc .dd. cx, .dd,. ;x:
|
||||
';;;;;;;;;;;;;. .',;;;;,. .,;;;;;;;;;;;;:;. 'dx:. .'ox; cx:. .:x: .do. .ox. ;x; ,xc .dd. cx, ;xc .ok:
|
||||
';;;;;;;;;;;;,. .';;;;,. .,;;;;;;;;;;;:;. .,lodooodoc. ,lolclol, .oc co. ,d, 'o: .ol. :d' .:dolllccdc
|
||||
';;;;;;;;;;;;;'. .';;;;. .,;;;;;;;;;;:;. ..... ... ...
|
||||
';;;;;;;;;;;;;;;;,,,'.. .;;;;' .;;;;;;;;;;:;.
|
||||
';;;;;;;;;;;;;;;;;;;;;;,. .;;;;. ';;;;;;;;;:;. .;ccccccccc:. .:.
|
||||
';;;;;;;;;;;;,'......';;;,. .;;;,. .;;;;;;;;;:;. .okc,'''''''' ;x:
|
||||
';;;;;;;;;;;. .,;;;. .,;;;. ,;;;;;;;;:;. .dx. .... .... .... ;x:
|
||||
';;;;;;;;;;' .;;;' ';;;' ';;;;;;;;:;. .dx. .;ol::coc. .coc::lo:. 'lolcccclx:
|
||||
';;;;;;;;;;. .,;;,. ,;;;,. ,;;;;;;;;:;. .dkdollllll:..od' .od. .do. 'do. ,xl. 'dk:
|
||||
';;;;;;;;;;,. .;;;;,. .';;;;;,. .,;;;;;;;;;:;. .dx' ;xxlcccccdx;.ckdlccccldd'.ox. ;x:
|
||||
';;;;;;;;;;;;'. .,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:;. .dx. ,xl........ :x:........ lx' :x:
|
||||
';;;;;;;;;;;;;;;'. .;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:;. .dx. .ld, .:l. .oo. .cc. ,xo. ,dk:
|
||||
';;;;;;;;;;;;;;,. .';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:;. .lo. .;oocclol' .:olccloc. .ldlcclccd;
|
||||
';;;;;;;;;;;;;;,,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:;. .... .... ...
|
||||
';;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:;.
|
||||
.;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,.
|
||||
.,;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;,.
|
||||
..''''''''''''''''''''''''''''''''''''''''''''''''...
|
||||
|
||||
@@ -0,0 +1,494 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.1.xsd">
|
||||
|
||||
<changeSet author="athou" id="create-app-settings">
|
||||
<validCheckSum>7:6d3ad493d25dd9c50067e804efc9ffcc</validCheckSum>
|
||||
<validCheckSum>7:896a68c1651397288c40f717ce0397b4</validCheckSum>
|
||||
<validCheckSum>8:1b0879c4739d483c3b1d779e08fe770b</validCheckSum>
|
||||
<preConditions onFail="MARK_RAN" onFailMessage="existing table skipping">
|
||||
<not>
|
||||
<tableExists tableName="APPLICATIONSETTINGS" />
|
||||
</not>
|
||||
</preConditions>
|
||||
<createTable tableName="APPLICATIONSETTINGS">
|
||||
<column name="id" type="BIGINT">
|
||||
<constraints nullable="false" primaryKey="true" />
|
||||
</column>
|
||||
<column name="allowRegistrations" type="BOOLEAN">
|
||||
<constraints nullable="false" />
|
||||
</column>
|
||||
<column name="backgroundThreads" type="INT">
|
||||
<constraints nullable="false" />
|
||||
</column>
|
||||
<column name="googleClientId" type="VARCHAR(255)" />
|
||||
<column name="googleClientSecret" type="VARCHAR(255)" />
|
||||
<column name="publicUrl" type="VARCHAR(255)" />
|
||||
<column name="smtpHost" type="VARCHAR(255)" />
|
||||
<column name="smtpPassword" type="VARCHAR(255)" />
|
||||
<column name="smtpPort" type="INT">
|
||||
<constraints nullable="false" />
|
||||
</column>
|
||||
<column name="smtpTls" type="BOOLEAN">
|
||||
<constraints nullable="false" />
|
||||
</column>
|
||||
<column name="smtpUserName" type="VARCHAR(255)" />
|
||||
<column name="googleAnalyticsDomainName" type="VARCHAR(255)" />
|
||||
<column name="googleAnalyticsTrackingCode" type="VARCHAR(255)" />
|
||||
<column name="announcement" type="VARCHAR(255)" />
|
||||
<column name="feedbackButton" type="BOOLEAN">
|
||||
<constraints nullable="false" />
|
||||
</column>
|
||||
<column name="heavyLoad" type="BOOLEAN">
|
||||
<constraints nullable="false" />
|
||||
</column>
|
||||
<column name="pubsubhubbub" type="BOOLEAN">
|
||||
<constraints nullable="false" />
|
||||
</column>
|
||||
<column name="databaseUpdateThreads" type="INT">
|
||||
<constraints nullable="false" />
|
||||
</column>
|
||||
<column name="logLevel" type="VARCHAR(255)" />
|
||||
</createTable>
|
||||
<modifySql dbms="mysql">
|
||||
<append value=" ENGINE INNODB CHARACTER SET utf8mb4" />
|
||||
</modifySql>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="create-ffe">
|
||||
<validCheckSum>7:eccd6b37116ab35ee963aa46152e1ae5</validCheckSum>
|
||||
<validCheckSum>7:ac622ab04aec79a7e5854d25511abaef</validCheckSum>
|
||||
<preConditions onFail="MARK_RAN" onFailMessage="existing table skipping">
|
||||
<not>
|
||||
<tableExists tableName="FEED_FEEDENTRIES" />
|
||||
</not>
|
||||
</preConditions>
|
||||
<createTable tableName="FEED_FEEDENTRIES">
|
||||
<column name="FEEDENTRY_ID" type="BIGINT">
|
||||
<constraints nullable="false" />
|
||||
</column>
|
||||
<column name="FEED_ID" type="BIGINT">
|
||||
<constraints nullable="false" />
|
||||
</column>
|
||||
</createTable>
|
||||
<modifySql dbms="mysql">
|
||||
<append value=" ENGINE INNODB CHARACTER SET utf8mb4" />
|
||||
</modifySql>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="create-cat">
|
||||
<validCheckSum>7:93155e15f0feabe936e1de35711bf85b</validCheckSum>
|
||||
<validCheckSum>7:c52f258e54d34156208cbfd2d8547fbd</validCheckSum>
|
||||
<validCheckSum>8:c59e763e4cc7d59ae58d843937cf4e77</validCheckSum>
|
||||
<preConditions onFail="MARK_RAN" onFailMessage="existing table skipping">
|
||||
<not>
|
||||
<tableExists tableName="FEEDCATEGORIES" />
|
||||
</not>
|
||||
</preConditions>
|
||||
<createTable tableName="FEEDCATEGORIES">
|
||||
<column name="id" type="BIGINT">
|
||||
<constraints nullable="false" primaryKey="true" />
|
||||
</column>
|
||||
<column name="collapsed" type="BOOLEAN">
|
||||
<constraints nullable="false" />
|
||||
</column>
|
||||
<column name="name" type="VARCHAR(128)">
|
||||
<constraints nullable="false" />
|
||||
</column>
|
||||
<column name="parent_id" type="BIGINT" />
|
||||
<column name="user_id" type="BIGINT">
|
||||
<constraints nullable="false" />
|
||||
</column>
|
||||
<column name="position" type="INT" />
|
||||
</createTable>
|
||||
<modifySql dbms="mysql">
|
||||
<append value=" ENGINE INNODB CHARACTER SET utf8mb4" />
|
||||
</modifySql>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="create-entries">
|
||||
<validCheckSum>7:2d9e82da5573ac551df31a13f3bc40e5</validCheckSum>
|
||||
<validCheckSum>7:c3cc179801e812635b53849301a1a1d1</validCheckSum>
|
||||
<preConditions onFail="MARK_RAN" onFailMessage="existing table skipping">
|
||||
<not>
|
||||
<tableExists tableName="FEEDENTRIES" />
|
||||
</not>
|
||||
</preConditions>
|
||||
<createTable tableName="FEEDENTRIES">
|
||||
<column name="id" type="BIGINT">
|
||||
<constraints nullable="false" primaryKey="true" />
|
||||
</column>
|
||||
<column name="guid" type="VARCHAR(2048)">
|
||||
<constraints nullable="false" />
|
||||
</column>
|
||||
<column name="guidHash" type="VARCHAR(40)">
|
||||
<constraints nullable="false" />
|
||||
</column>
|
||||
<column name="inserted" type="DATETIME" />
|
||||
<column name="updated" type="DATETIME" />
|
||||
<column name="url" type="VARCHAR(2048)" />
|
||||
<column name="content_id" type="BIGINT">
|
||||
<constraints nullable="false" />
|
||||
</column>
|
||||
</createTable>
|
||||
<modifySql dbms="mysql">
|
||||
<append value=" ENGINE INNODB CHARACTER SET utf8mb4" />
|
||||
</modifySql>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="create-contents">
|
||||
<validCheckSum>7:a2d83b0f7d1bf97a7553e94dd6100edf</validCheckSum>
|
||||
<validCheckSum>7:1c45f6b6a6e7583dd4c090a4a3930758</validCheckSum>
|
||||
<preConditions onFail="MARK_RAN" onFailMessage="existing table skipping">
|
||||
<not>
|
||||
<tableExists tableName="FEEDENTRYCONTENTS" />
|
||||
</not>
|
||||
</preConditions>
|
||||
<createTable tableName="FEEDENTRYCONTENTS">
|
||||
<column name="id" type="BIGINT">
|
||||
<constraints nullable="false" primaryKey="true" />
|
||||
</column>
|
||||
<column name="content" type="CLOB" />
|
||||
<column name="enclosureType" type="VARCHAR(255)" />
|
||||
<column name="enclosureUrl" type="VARCHAR(2048)" />
|
||||
<column name="title" type="VARCHAR(2048)" />
|
||||
</createTable>
|
||||
<modifySql dbms="mysql">
|
||||
<append value=" ENGINE INNODB CHARACTER SET utf8mb4" />
|
||||
</modifySql>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="create-statuses">
|
||||
<validCheckSum>7:a9cf194a01c16b937a897aea934f09ae</validCheckSum>
|
||||
<validCheckSum>7:6a386e0b08e98bdba9ce55e26ab90eba</validCheckSum>
|
||||
<validCheckSum>8:ccfbff3df6f16c8686229c2da514e8b1</validCheckSum>
|
||||
<preConditions onFail="MARK_RAN" onFailMessage="existing table skipping">
|
||||
<not>
|
||||
<tableExists tableName="FEEDENTRYSTATUSES" />
|
||||
</not>
|
||||
</preConditions>
|
||||
<createTable tableName="FEEDENTRYSTATUSES">
|
||||
<column name="id" type="BIGINT">
|
||||
<constraints nullable="false" primaryKey="true" />
|
||||
</column>
|
||||
<column name="read_status" type="BOOLEAN" />
|
||||
<column name="starred" type="BOOLEAN">
|
||||
<constraints nullable="false" />
|
||||
</column>
|
||||
<column name="entry_id" type="BIGINT">
|
||||
<constraints nullable="false" />
|
||||
</column>
|
||||
<column name="subscription_id" type="BIGINT">
|
||||
<constraints nullable="false" />
|
||||
</column>
|
||||
</createTable>
|
||||
<modifySql dbms="mysql">
|
||||
<append value=" ENGINE INNODB CHARACTER SET utf8mb4" />
|
||||
</modifySql>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="create-feeds">
|
||||
<validCheckSum>7:e3a44d2e0f774dcb4efe36702c8d5f3f</validCheckSum>
|
||||
<validCheckSum>7:604b2bb0b62b7f0529e50e63c2b2cf0c</validCheckSum>
|
||||
<preConditions onFail="MARK_RAN" onFailMessage="existing table skipping">
|
||||
<not>
|
||||
<tableExists tableName="FEEDS" />
|
||||
</not>
|
||||
</preConditions>
|
||||
<createTable tableName="FEEDS">
|
||||
<column name="id" type="BIGINT">
|
||||
<constraints nullable="false" primaryKey="true" />
|
||||
</column>
|
||||
<column name="disabledUntil" type="DATETIME" />
|
||||
<column name="errorCount" type="INT">
|
||||
<constraints nullable="false" />
|
||||
</column>
|
||||
<column name="lastUpdated" type="DATETIME" />
|
||||
<column name="link" type="CLOB" />
|
||||
<column name="message" type="CLOB" />
|
||||
<column name="url" type="CLOB">
|
||||
<constraints nullable="false" />
|
||||
</column>
|
||||
<column name="urlHash" type="VARCHAR(40)">
|
||||
<constraints nullable="false" />
|
||||
</column>
|
||||
<column name="etagHeader" type="VARCHAR(255)" />
|
||||
<column name="lastModifiedHeader" type="VARCHAR(64)" />
|
||||
<column name="lastUpdateSuccess" type="DATETIME" />
|
||||
<column name="pushHub" type="VARCHAR(2048)" />
|
||||
<column name="pushTopic" type="VARCHAR(2048)" />
|
||||
<column name="pushLastPing" type="DATETIME" />
|
||||
<column name="lastPublishedDate" type="DATETIME" />
|
||||
<column name="lastContentHash" type="VARCHAR(40)" />
|
||||
<column name="averageEntryInterval" type="BIGINT" />
|
||||
<column name="lastEntryDate" type="DATETIME" />
|
||||
</createTable>
|
||||
<modifySql dbms="mysql">
|
||||
<append value=" ENGINE INNODB CHARACTER SET utf8mb4" />
|
||||
</modifySql>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="create-subs">
|
||||
<validCheckSum>7:36e92eac052c7d2ce0ef75e3ec2cdf8d</validCheckSum>
|
||||
<validCheckSum>7:248affcafffd2243f8b0d16750e17af0</validCheckSum>
|
||||
<preConditions onFail="MARK_RAN" onFailMessage="existing table skipping">
|
||||
<not>
|
||||
<tableExists tableName="FEEDSUBSCRIPTIONS" />
|
||||
</not>
|
||||
</preConditions>
|
||||
<createTable tableName="FEEDSUBSCRIPTIONS">
|
||||
<column name="id" type="BIGINT">
|
||||
<constraints nullable="false" primaryKey="true" />
|
||||
</column>
|
||||
<column name="title" type="VARCHAR(128)">
|
||||
<constraints nullable="false" />
|
||||
</column>
|
||||
<column name="category_id" type="BIGINT" />
|
||||
<column name="feed_id" type="BIGINT">
|
||||
<constraints nullable="false" />
|
||||
</column>
|
||||
<column name="user_id" type="BIGINT">
|
||||
<constraints nullable="false" />
|
||||
</column>
|
||||
<column name="position" type="INT" />
|
||||
</createTable>
|
||||
<modifySql dbms="mysql">
|
||||
<append value=" ENGINE INNODB CHARACTER SET utf8mb4" />
|
||||
</modifySql>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="create-seq">
|
||||
<validCheckSum>7:6d68765b2116ba88680d69c03b3cefd2</validCheckSum>
|
||||
<validCheckSum>7:6112f92b437b4d0ecfcdf038fd04ed2f</validCheckSum>
|
||||
<preConditions onFail="MARK_RAN" onFailMessage="existing table skipping">
|
||||
<not>
|
||||
<tableExists tableName="hibernate_sequences" />
|
||||
</not>
|
||||
</preConditions>
|
||||
<createTable tableName="hibernate_sequences">
|
||||
<column name="sequence_name" type="VARCHAR(255)" />
|
||||
<column name="sequence_next_hi_value" type="INT" />
|
||||
</createTable>
|
||||
<modifySql dbms="mysql">
|
||||
<append value=" ENGINE INNODB CHARACTER SET utf8" />
|
||||
</modifySql>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="create-roles">
|
||||
<validCheckSum>7:eefc98cfa1b9bbf51fa6acd7a0d49c1b</validCheckSum>
|
||||
<validCheckSum>7:abbff58b88c8cebfb4548d17730a262d</validCheckSum>
|
||||
<preConditions onFail="MARK_RAN" onFailMessage="existing table skipping">
|
||||
<not>
|
||||
<tableExists tableName="USERROLES" />
|
||||
</not>
|
||||
</preConditions>
|
||||
<createTable tableName="USERROLES">
|
||||
<column name="id" type="BIGINT">
|
||||
<constraints nullable="false" primaryKey="true" />
|
||||
</column>
|
||||
<column name="roleName" type="VARCHAR(255)">
|
||||
<constraints nullable="false" />
|
||||
</column>
|
||||
<column name="user_id" type="BIGINT">
|
||||
<constraints nullable="false" />
|
||||
</column>
|
||||
</createTable>
|
||||
<modifySql dbms="mysql">
|
||||
<append value=" ENGINE INNODB CHARACTER SET utf8mb4" />
|
||||
</modifySql>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="create-users">
|
||||
<validCheckSum>7:750e0990a8edebd0252df7d4adc7aa7c</validCheckSum>
|
||||
<validCheckSum>8:dd1676f356c3c70822d69d5103947948</validCheckSum>
|
||||
<validCheckSum>8:ca2d6edef0263a78cab9cc0942972d50</validCheckSum>
|
||||
<preConditions onFail="MARK_RAN" onFailMessage="existing table skipping">
|
||||
<not>
|
||||
<tableExists tableName="USERS" />
|
||||
</not>
|
||||
</preConditions>
|
||||
<createTable tableName="USERS">
|
||||
<column name="id" type="BIGINT">
|
||||
<constraints nullable="false" primaryKey="true" />
|
||||
</column>
|
||||
<column name="disabled" type="BOOLEAN">
|
||||
<constraints nullable="false" />
|
||||
</column>
|
||||
<column name="email" type="VARCHAR(255)" />
|
||||
<column name="name" type="VARCHAR(32)">
|
||||
<constraints nullable="false" />
|
||||
</column>
|
||||
<column name="password" type="${blob_type}">
|
||||
<constraints nullable="false" />
|
||||
</column>
|
||||
<column name="salt" type="${blob_type}">
|
||||
<constraints nullable="false" />
|
||||
</column>
|
||||
<column name="lastLogin" type="DATETIME" />
|
||||
<column name="apiKey" type="VARCHAR(40)" />
|
||||
<column name="recoverPasswordToken" type="VARCHAR(40)" />
|
||||
<column name="recoverPasswordTokenDate" type="DATETIME" />
|
||||
</createTable>
|
||||
<modifySql dbms="mysql">
|
||||
<append value=" ENGINE INNODB CHARACTER SET utf8" />
|
||||
</modifySql>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="create-user-settings">
|
||||
<validCheckSum>7:985d6607a4350e032ea345d9a2f2f0c0</validCheckSum>
|
||||
<validCheckSum>7:722eaff49d04d43c5b26da0929d3f707</validCheckSum>
|
||||
<validCheckSum>8:451004f3bc72abac6a38d813881d3a87</validCheckSum>
|
||||
<preConditions onFail="MARK_RAN" onFailMessage="existing table skipping">
|
||||
<not>
|
||||
<tableExists tableName="USERSETTINGS" />
|
||||
</not>
|
||||
</preConditions>
|
||||
<createTable tableName="USERSETTINGS">
|
||||
<column name="id" type="BIGINT">
|
||||
<constraints nullable="false" primaryKey="true" />
|
||||
</column>
|
||||
<column name="customCss" type="CLOB" />
|
||||
<column name="readingMode" type="VARCHAR(255)">
|
||||
<constraints nullable="false" />
|
||||
</column>
|
||||
<column name="readingOrder" type="VARCHAR(255)">
|
||||
<constraints nullable="false" />
|
||||
</column>
|
||||
<column name="showRead" type="BOOLEAN">
|
||||
<constraints nullable="false" />
|
||||
</column>
|
||||
<column name="user_id" type="BIGINT">
|
||||
<constraints nullable="false" />
|
||||
</column>
|
||||
<column name="socialButtons" type="BOOLEAN">
|
||||
<constraints nullable="false" />
|
||||
</column>
|
||||
<column name="scrollMarks" type="BOOLEAN">
|
||||
<constraints nullable="false" />
|
||||
</column>
|
||||
<column name="viewMode" type="VARCHAR(255)">
|
||||
<constraints nullable="false" />
|
||||
</column>
|
||||
<column name="language" type="VARCHAR(4)" />
|
||||
<column name="theme" type="VARCHAR(32)" />
|
||||
</createTable>
|
||||
<modifySql dbms="mysql">
|
||||
<append value=" ENGINE INNODB CHARACTER SET utf8mb4" />
|
||||
</modifySql>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="add-keys">
|
||||
<preConditions onFail="MARK_RAN" onFailMessage="existing table skipping">
|
||||
<not>
|
||||
<primaryKeyExists tableName="FEED_FEEDENTRIES" />
|
||||
</not>
|
||||
</preConditions>
|
||||
<addPrimaryKey columnNames="FEEDENTRY_ID, FEED_ID"
|
||||
tableName="FEED_FEEDENTRIES" />
|
||||
|
||||
<addForeignKeyConstraint baseColumnNames="FEED_ID"
|
||||
baseTableName="FEED_FEEDENTRIES" constraintName="FKE50C03F13BFA4D81"
|
||||
referencedColumnNames="id" referencedTableName="FEEDS" />
|
||||
|
||||
<addForeignKeyConstraint baseColumnNames="FEEDENTRY_ID"
|
||||
baseTableName="FEED_FEEDENTRIES" constraintName="FKE50C03F1F21BCF3"
|
||||
referencedColumnNames="id" referencedTableName="FEEDENTRIES" />
|
||||
|
||||
<addForeignKeyConstraint baseColumnNames="parent_id"
|
||||
baseTableName="FEEDCATEGORIES" constraintName="FK15C8223AD60EB13"
|
||||
referencedColumnNames="id" referencedTableName="FEEDCATEGORIES" />
|
||||
|
||||
<addForeignKeyConstraint baseColumnNames="user_id"
|
||||
baseTableName="FEEDCATEGORIES" constraintName="FK15C8223A6D690261"
|
||||
referencedColumnNames="id" referencedTableName="USERS" />
|
||||
|
||||
<addForeignKeyConstraint baseColumnNames="content_id"
|
||||
baseTableName="FEEDENTRIES" constraintName="FKE8844512A0FBD10D"
|
||||
referencedColumnNames="id" referencedTableName="FEEDENTRYCONTENTS" />
|
||||
|
||||
<addForeignKeyConstraint baseColumnNames="entry_id"
|
||||
baseTableName="FEEDENTRYSTATUSES" constraintName="FKD6DCE994F46A5555"
|
||||
referencedColumnNames="id" referencedTableName="FEEDENTRIES" />
|
||||
|
||||
<addForeignKeyConstraint baseColumnNames="subscription_id"
|
||||
baseTableName="FEEDENTRYSTATUSES" constraintName="FKD6DCE994E181535F"
|
||||
referencedColumnNames="id" referencedTableName="FEEDSUBSCRIPTIONS" />
|
||||
|
||||
<addForeignKeyConstraint baseColumnNames="category_id"
|
||||
baseTableName="FEEDSUBSCRIPTIONS" constraintName="FK420395F8EDA2E63F"
|
||||
referencedColumnNames="id" referencedTableName="FEEDCATEGORIES" />
|
||||
|
||||
<addForeignKeyConstraint baseColumnNames="feed_id"
|
||||
baseTableName="FEEDSUBSCRIPTIONS" constraintName="FK420395F83BFA4D81"
|
||||
referencedColumnNames="id" referencedTableName="FEEDS" />
|
||||
|
||||
<addForeignKeyConstraint baseColumnNames="user_id"
|
||||
baseTableName="FEEDSUBSCRIPTIONS" constraintName="FK420395F86D690261"
|
||||
referencedColumnNames="id" referencedTableName="USERS" />
|
||||
|
||||
<addForeignKeyConstraint baseColumnNames="user_id"
|
||||
baseTableName="USERROLES" constraintName="FKBB5E59B26D690261"
|
||||
referencedColumnNames="id" referencedTableName="USERS" />
|
||||
|
||||
<addForeignKeyConstraint baseColumnNames="user_id"
|
||||
baseTableName="USERSETTINGS" constraintName="FKAE0194EE6D690261"
|
||||
referencedColumnNames="id" referencedTableName="USERS" />
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="create-indexes">
|
||||
<validCheckSum>7:6b97555d8c1a170b1c07d088e068ec95</validCheckSum>
|
||||
<preConditions onFail="MARK_RAN" onFailMessage="existing table skipping">
|
||||
<not>
|
||||
<indexExists tableName="FEEDENTRIES" indexName="updated_index" />
|
||||
</not>
|
||||
</preConditions>
|
||||
|
||||
<createIndex indexName="guidHash_index" tableName="FEEDENTRIES"
|
||||
unique="false">
|
||||
<column name="guidHash" />
|
||||
</createIndex>
|
||||
|
||||
<createIndex indexName="updated_index" tableName="FEEDENTRIES"
|
||||
unique="false">
|
||||
<column name="updated" />
|
||||
</createIndex>
|
||||
|
||||
<createIndex indexName="subscription_id" tableName="FEEDENTRYSTATUSES"
|
||||
unique="false">
|
||||
<column name="subscription_id" />
|
||||
<column name="read_status" />
|
||||
</createIndex>
|
||||
|
||||
<createIndex indexName="disabled_lastupdated_index"
|
||||
tableName="FEEDS" unique="false">
|
||||
<column name="disabledUntil" />
|
||||
<column name="lastUpdated" />
|
||||
</createIndex>
|
||||
|
||||
<createIndex indexName="disableduntil_index" tableName="FEEDS"
|
||||
unique="false">
|
||||
<column name="disabledUntil" />
|
||||
</createIndex>
|
||||
|
||||
<createIndex indexName="lastupdated_index" tableName="FEEDS"
|
||||
unique="false">
|
||||
<column name="lastUpdated" />
|
||||
</createIndex>
|
||||
|
||||
<createIndex indexName="urlHash_index" tableName="FEEDS"
|
||||
unique="false">
|
||||
<column name="urlHash" />
|
||||
</createIndex>
|
||||
|
||||
<createIndex indexName="useremail_index" tableName="USERS"
|
||||
unique="true">
|
||||
<column name="email" />
|
||||
</createIndex>
|
||||
|
||||
<createIndex indexName="username_index" tableName="USERS"
|
||||
unique="true">
|
||||
<column name="name" />
|
||||
</createIndex>
|
||||
</changeSet>
|
||||
</databaseChangeLog>
|
||||
@@ -0,0 +1,368 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.1.xsd">
|
||||
|
||||
<changeSet author="athou" id="recreate-fes-index">
|
||||
<preConditions onFail="MARK_RAN" onFailMessage="index already exists">
|
||||
<not>
|
||||
<indexExists tableName="FEEDENTRYSTATUSES" indexName="sub_entry_read_index" />
|
||||
</not>
|
||||
</preConditions>
|
||||
<createIndex indexName="sub_entry_read_index" tableName="FEEDENTRYSTATUSES"
|
||||
unique="false">
|
||||
<column name="subscription_id" />
|
||||
<column name="entry_id" />
|
||||
<column name="read_status" />
|
||||
</createIndex>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="drop-fes-index">
|
||||
<preConditions onFail="MARK_RAN" onFailMessage="index not found, skip drop index">
|
||||
<indexExists tableName="FEEDENTRYSTATUSES" indexName="subscription_id" />
|
||||
</preConditions>
|
||||
<dropIndex tableName="FEEDENTRYSTATUSES" indexName="subscription_id" />
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="drop-sequences">
|
||||
<preConditions onFail="MARK_RAN" onFailMessage="table does not exist">
|
||||
<tableExists tableName="hibernate_sequences" />
|
||||
</preConditions>
|
||||
<dropTable tableName="hibernate_sequences" />
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="recreate-sequences">
|
||||
<validCheckSum>7:094e881ed7e4fa14fb1f61147ce44acc</validCheckSum>
|
||||
<validCheckSum>7:f4bf2004a72bb41daa128df5771af902</validCheckSum>
|
||||
<preConditions onFail="MARK_RAN" onFailMessage="table already exists">
|
||||
<not>
|
||||
<tableExists tableName="hibernate_sequences" />
|
||||
</not>
|
||||
</preConditions>
|
||||
<createTable tableName="hibernate_sequences">
|
||||
<column name="sequence_name" type="VARCHAR(255)" />
|
||||
<column name="sequence_next_hi_value" type="INT" />
|
||||
</createTable>
|
||||
<sql>insert into hibernate_sequences(sequence_name, sequence_next_hi_value) select 'APPLICATIONSETTINGS', COALESCE(ceiling(max(id) / 1000 + 2), 1) from APPLICATIONSETTINGS</sql>
|
||||
<sql>insert into hibernate_sequences(sequence_name, sequence_next_hi_value) select 'FEEDCATEGORIES', COALESCE(ceiling(max(id) / 1000 + 2), 1) from FEEDCATEGORIES</sql>
|
||||
<sql>insert into hibernate_sequences(sequence_name, sequence_next_hi_value) select 'FEEDENTRIES', COALESCE(ceiling(max(id) / 1000 + 2), 1) from FEEDENTRIES</sql>
|
||||
<sql>insert into hibernate_sequences(sequence_name, sequence_next_hi_value) select 'FEEDENTRYCONTENTS', COALESCE(ceiling(max(id) / 1000 + 2), 1) from FEEDENTRYCONTENTS</sql>
|
||||
<sql>insert into hibernate_sequences(sequence_name, sequence_next_hi_value) select 'FEEDENTRYSTATUSES', COALESCE(ceiling(max(id) / 1000 + 2), 1) from FEEDENTRYSTATUSES</sql>
|
||||
<sql>insert into hibernate_sequences(sequence_name, sequence_next_hi_value) select 'FEEDS', COALESCE(ceiling(max(id) / 1000 + 2), 1) from FEEDS</sql>
|
||||
<sql>insert into hibernate_sequences(sequence_name, sequence_next_hi_value) select 'FEEDSUBSCRIPTIONS', COALESCE(ceiling(max(id) / 1000 + 2), 1) from FEEDSUBSCRIPTIONS</sql>
|
||||
<sql>insert into hibernate_sequences(sequence_name, sequence_next_hi_value) select 'USERROLES', COALESCE(ceiling(max(id) / 1000 + 2), 1) from USERROLES</sql>
|
||||
<sql>insert into hibernate_sequences(sequence_name, sequence_next_hi_value) select 'USERS', COALESCE(ceiling(max(id) / 1000 + 2), 1) from USERS</sql>
|
||||
<sql>insert into hibernate_sequences(sequence_name, sequence_next_hi_value) select 'USERSETTINGS', COALESCE(ceiling(max(id) / 1000 + 2), 1) from USERSETTINGS</sql>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="add-log-level">
|
||||
<preConditions onFail="MARK_RAN" onFailMessage="column already exists">
|
||||
<not>
|
||||
<columnExists tableName="APPLICATIONSETTINGS"
|
||||
columnName="logLevel" />
|
||||
</not>
|
||||
</preConditions>
|
||||
<addColumn tableName="APPLICATIONSETTINGS">
|
||||
<column name="logLevel" type="VARCHAR(255)" />
|
||||
</addColumn>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="add-push-hub">
|
||||
<preConditions onFail="MARK_RAN" onFailMessage="column already exists">
|
||||
<not>
|
||||
<columnExists tableName="FEEDS"
|
||||
columnName="pushHub" />
|
||||
</not>
|
||||
</preConditions>
|
||||
<addColumn tableName="FEEDS">
|
||||
<column name="pushHub" type="VARCHAR(2048)" />
|
||||
</addColumn>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="add-push-topic">
|
||||
<preConditions onFail="MARK_RAN" onFailMessage="column already exists">
|
||||
<not>
|
||||
<columnExists tableName="FEEDS"
|
||||
columnName="pushTopic" />
|
||||
</not>
|
||||
</preConditions>
|
||||
<addColumn tableName="FEEDS">
|
||||
<column name="pushTopic" type="VARCHAR(2048)" />
|
||||
</addColumn>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="add-push-lastping">
|
||||
<preConditions onFail="MARK_RAN" onFailMessage="column already exists">
|
||||
<not>
|
||||
<columnExists tableName="FEEDS"
|
||||
columnName="pushLastPing" />
|
||||
</not>
|
||||
</preConditions>
|
||||
<addColumn tableName="FEEDS">
|
||||
<column name="pushLastPing" type="DATETIME" />
|
||||
</addColumn>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="add-lastpublished">
|
||||
<preConditions onFail="MARK_RAN" onFailMessage="column already exists">
|
||||
<not>
|
||||
<columnExists tableName="FEEDS"
|
||||
columnName="lastPublishedDate" />
|
||||
</not>
|
||||
</preConditions>
|
||||
<addColumn tableName="FEEDS">
|
||||
<column name="lastPublishedDate" type="DATETIME" />
|
||||
</addColumn>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="add-lastcontenthash">
|
||||
<preConditions onFail="MARK_RAN" onFailMessage="column already exists">
|
||||
<not>
|
||||
<columnExists tableName="FEEDS"
|
||||
columnName="lastContentHash" />
|
||||
</not>
|
||||
</preConditions>
|
||||
<addColumn tableName="FEEDS">
|
||||
<column name="lastContentHash" type="VARCHAR(40)" />
|
||||
</addColumn>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="add-lastinterval">
|
||||
<preConditions onFail="MARK_RAN" onFailMessage="column already exists">
|
||||
<not>
|
||||
<columnExists tableName="FEEDS"
|
||||
columnName="averageEntryInterval" />
|
||||
</not>
|
||||
</preConditions>
|
||||
<addColumn tableName="FEEDS">
|
||||
<column name="averageEntryInterval" type="BIGINT" />
|
||||
</addColumn>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="add-lastentrydate">
|
||||
<preConditions onFail="MARK_RAN" onFailMessage="column already exists">
|
||||
<not>
|
||||
<columnExists tableName="FEEDS"
|
||||
columnName="lastEntryDate" />
|
||||
</not>
|
||||
</preConditions>
|
||||
<addColumn tableName="FEEDS">
|
||||
<column name="lastEntryDate" type="DATETIME" />
|
||||
</addColumn>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="add-cat-position">
|
||||
<preConditions onFail="MARK_RAN" onFailMessage="column already exists">
|
||||
<not>
|
||||
<columnExists tableName="FEEDCATEGORIES"
|
||||
columnName="position" />
|
||||
</not>
|
||||
</preConditions>
|
||||
<addColumn tableName="FEEDCATEGORIES">
|
||||
<column name="position" type="INT" />
|
||||
</addColumn>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="add-sub-position">
|
||||
<preConditions onFail="MARK_RAN" onFailMessage="column already exists">
|
||||
<not>
|
||||
<columnExists tableName="FEEDSUBSCRIPTIONS"
|
||||
columnName="position" />
|
||||
</not>
|
||||
</preConditions>
|
||||
<addColumn tableName="FEEDSUBSCRIPTIONS">
|
||||
<column name="position" type="INT" />
|
||||
</addColumn>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="drop-sequence">
|
||||
<preConditions onFail="MARK_RAN" onFailMessage="table does not exist">
|
||||
<tableExists tableName="hibernate_sequence" />
|
||||
</preConditions>
|
||||
<dropTable tableName="hibernate_sequence" />
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="drop-old-pushinfos">
|
||||
<preConditions onFail="MARK_RAN" onFailMessage="table does not exist">
|
||||
<tableExists tableName="FEEDPUSHINFOS" />
|
||||
</preConditions>
|
||||
<dropTable tableName="FEEDPUSHINFOS" />
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="add-topic-hash">
|
||||
<addColumn tableName="FEEDS">
|
||||
<column name="push_topic_hash" type="VARCHAR(40)" />
|
||||
</addColumn>
|
||||
|
||||
<createIndex tableName="FEEDS" indexName="push_topic_hash_index">
|
||||
<column name="push_topic_hash"></column>
|
||||
</createIndex>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="add-author">
|
||||
<addColumn tableName="FEEDENTRIES">
|
||||
<column name="author" type="VARCHAR(128)" />
|
||||
</addColumn>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="add-inserted-index">
|
||||
<createIndex tableName="FEEDENTRIES" indexName="inserted_index">
|
||||
<column name="inserted"></column>
|
||||
</createIndex>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="rename-lang">
|
||||
<renameColumn tableName="USERSETTINGS" oldColumnName="language" newColumnName="user_lang" columnDataType="VARCHAR(4)" />
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="norwegian-migration">
|
||||
<sql>update USERSETTINGS set user_lang='nb' where user_lang='no'</sql>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="add-user-created">
|
||||
<validCheckSum>3:b1bbf8d559ac25b785751704f2d24a91</validCheckSum>
|
||||
<validCheckSum>7:5bd8b28aadce012b56f003539ce99957</validCheckSum>
|
||||
<addColumn tableName="USERS">
|
||||
<column name="created" type="DATETIME" />
|
||||
</addColumn>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="add-proxy-setting">
|
||||
<validCheckSum>7:ffca06665d2dc182bd3cb718e62e98f0</validCheckSum>
|
||||
<validCheckSum>8:a1b2bfccb0b37fec8eb107220f76e3bd</validCheckSum>
|
||||
<addColumn tableName="APPLICATIONSETTINGS">
|
||||
<column name="imageProxyEnabled" type="BOOLEAN" />
|
||||
</addColumn>
|
||||
<update tableName="APPLICATIONSETTINGS">
|
||||
<column name="imageProxyEnabled" valueBoolean="false"></column>
|
||||
</update>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="add-query-timeout-setting">
|
||||
<addColumn tableName="APPLICATIONSETTINGS">
|
||||
<column name="queryTimeout" type="INT" />
|
||||
</addColumn>
|
||||
<update tableName="APPLICATIONSETTINGS">
|
||||
<column name="queryTimeout" valueNumeric="0"></column>
|
||||
</update>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="add-normalized-url">
|
||||
<addColumn tableName="FEEDS">
|
||||
<column name="normalizedUrl" type="VARCHAR(2048)" />
|
||||
</addColumn>
|
||||
<addColumn tableName="FEEDS">
|
||||
<column name="normalizedUrlHash" type="VARCHAR(40)" />
|
||||
</addColumn>
|
||||
<createIndex indexName="norm_url_hash_index" tableName="FEEDS"
|
||||
unique="false">
|
||||
<column name="normalizedUrlHash" />
|
||||
</createIndex>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="add-pause-crawling">
|
||||
<validCheckSum>8:4473505a94945268fcca0f2d77e4be4a</validCheckSum>
|
||||
<addColumn tableName="APPLICATIONSETTINGS">
|
||||
<column name="crawlingPaused" type="BOOLEAN" />
|
||||
</addColumn>
|
||||
<update tableName="APPLICATIONSETTINGS">
|
||||
<column name="crawlingPaused" valueBoolean="false"></column>
|
||||
</update>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="add-content-hash-index">
|
||||
<createIndex tableName="FEEDS" indexName="last_content_hash_index">
|
||||
<column name="lastContentHash"></column>
|
||||
</createIndex>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="create-settings-index">
|
||||
<createIndex tableName="USERSETTINGS" indexName="user_id_index" unique="true">
|
||||
<column name="user_id"></column>
|
||||
</createIndex>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="denormalize-statuses">
|
||||
<validCheckSum>7:c73f70fbcbc8bb30f9629028ec8ddb06</validCheckSum>
|
||||
<addColumn tableName="FEEDENTRYSTATUSES">
|
||||
<column name="user_id" type="BIGINT" defaultValue="1">
|
||||
<constraints nullable="false" />
|
||||
</column>
|
||||
<column name="entryInserted" type="DATETIME" />
|
||||
<column name="entryUpdated" type="DATETIME" />
|
||||
</addColumn>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="populate-status-dates">
|
||||
<validCheckSum>7:d6b5ab6920948b0a84e614870128e2f5</validCheckSum>
|
||||
<sql>update FEEDENTRYSTATUSES SET entryUpdated = (select e.updated from FEEDENTRIES e where e.id = FEEDENTRYSTATUSES.entry_id)</sql>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="populate-status-users">
|
||||
<validCheckSum>7:4227fdf2e7b9fe8e59544d536a7ee963</validCheckSum>
|
||||
<sql>update FEEDENTRYSTATUSES SET user_id = (select sub.user_id from FEEDSUBSCRIPTIONS sub where sub.id = FEEDENTRYSTATUSES.subscription_id)</sql>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="recreate-fes-index-2">
|
||||
<createIndex indexName="sub_entry_index" tableName="FEEDENTRYSTATUSES">
|
||||
<column name="subscription_id" />
|
||||
<column name="entry_id" />
|
||||
</createIndex>
|
||||
<createIndex indexName="sub_read_updated_index" tableName="FEEDENTRYSTATUSES">
|
||||
<column name="subscription_id" />
|
||||
<column name="read_status" />
|
||||
<column name="entryUpdated" />
|
||||
</createIndex>
|
||||
<createIndex indexName="user_read_updated_index" tableName="FEEDENTRYSTATUSES">
|
||||
<column name="user_id" />
|
||||
<column name="read_status" />
|
||||
<column name="entryUpdated" />
|
||||
</createIndex>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="drop-fes-index-2">
|
||||
<dropIndex tableName="FEEDENTRYSTATUSES" indexName="sub_entry_read_index" />
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="add-entry-updated-to-ffe">
|
||||
<addColumn tableName="FEED_FEEDENTRIES">
|
||||
<column name="entryUpdated" type="DATETIME"></column>
|
||||
</addColumn>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="populate-entry-dates">
|
||||
<sql>update FEED_FEEDENTRIES SET entryUpdated = (select e.updated from FEEDENTRIES e where e.id = FEED_FEEDENTRIES.feedentry_id)</sql>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="create-ffe-entry-updated-index">
|
||||
<createIndex tableName="FEED_FEEDENTRIES" indexName="feed_updated_index">
|
||||
<column name="FEED_ID"></column>
|
||||
<column name="entryUpdated"></column>
|
||||
</createIndex>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="create-count-index">
|
||||
<createIndex indexName="user_read_sub_index" tableName="FEEDENTRYSTATUSES">
|
||||
<column name="user_id" />
|
||||
<column name="read_status" />
|
||||
<column name="subscription_id" />
|
||||
</createIndex>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="add-trim-status-setting">
|
||||
<addColumn tableName="APPLICATIONSETTINGS">
|
||||
<column name="keepStatusDays" type="INT" />
|
||||
</addColumn>
|
||||
<update tableName="APPLICATIONSETTINGS">
|
||||
<column name="keepStatusDays" valueNumeric="0"></column>
|
||||
</update>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="status-cleanup">
|
||||
<validCheckSum>7:cf40ae235c2d4086c5fa6ac64102c6a9</validCheckSum>
|
||||
<delete tableName="FEEDENTRYSTATUSES">
|
||||
<where>read_status = false and starred = false</where>
|
||||
</delete>
|
||||
</changeSet>
|
||||
|
||||
</databaseChangeLog>
|
||||
@@ -0,0 +1,152 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.1.xsd">
|
||||
|
||||
<changeSet author="athou" id="change-entries-model">
|
||||
<dropTable tableName="FEED_FEEDENTRIES" />
|
||||
<delete tableName="FEEDENTRYSTATUSES"></delete>
|
||||
<delete tableName="FEEDENTRIES"></delete>
|
||||
<delete tableName="FEEDENTRYCONTENTS"></delete>
|
||||
|
||||
<addColumn tableName="FEEDENTRIES">
|
||||
<column name="feed_id" type="BIGINT" defaultValue="1">
|
||||
<constraints nullable="false" />
|
||||
</column>
|
||||
</addColumn>
|
||||
<addForeignKeyConstraint constraintName="fk_feed_id" baseTableName="FEEDENTRIES" baseColumnNames="feed_id"
|
||||
referencedTableName="FEEDS" referencedColumnNames="id" />
|
||||
<createIndex tableName="FEEDENTRIES" indexName="feed_updated_index">
|
||||
<column name="feed_id" />
|
||||
<column name="updated" />
|
||||
</createIndex>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="add-content-hashes">
|
||||
<addColumn tableName="FEEDENTRYCONTENTS">
|
||||
<column name="author" type="VARCHAR(128)" />
|
||||
<column name="contentHash" type="VARCHAR(40)" />
|
||||
</addColumn>
|
||||
<createIndex tableName="FEEDENTRYCONTENTS" indexName="content_hash_index">
|
||||
<column name="contentHash" />
|
||||
</createIndex>
|
||||
<dropColumn tableName="FEEDENTRIES" columnName="author" />
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="add-new-index">
|
||||
<createIndex tableName="FEEDENTRYSTATUSES" indexName="user_entry_index">
|
||||
<column name="user_id" />
|
||||
<column name="entry_id" />
|
||||
</createIndex>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="drop-old-index">
|
||||
<dropIndex tableName="FEEDENTRYSTATUSES" indexName="sub_entry_index" />
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="force-feed-refresh">
|
||||
<validCheckSum>7:9bf9357b47d8666dc7916f9a318138ad</validCheckSum>
|
||||
<validCheckSum>7:625f651e4c4d8e0aa9576da291baf6a4</validCheckSum>
|
||||
<update tableName="FEEDS">
|
||||
<column name="lastUpdated" valueComputed="null"></column>
|
||||
<column name="lastPublishedDate" valueComputed="null"></column>
|
||||
<column name="lastEntryDate" valueComputed="null"></column>
|
||||
<column name="lastUpdateSuccess" valueComputed="null"></column>
|
||||
<column name="message" valueComputed="null"></column>
|
||||
<column name="errorCount" valueNumeric="0"></column>
|
||||
<column name="disabledUntil" valueComputed="null"></column>
|
||||
<column name="lastModifiedHeader" valueComputed="null"></column>
|
||||
<column name="etagHeader" valueComputed="null"></column>
|
||||
<column name="averageEntryInterval" valueNumeric="null"></column>
|
||||
<column name="lastContentHash" valueComputed="null"></column>
|
||||
</update>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="revamp-status-indexes">
|
||||
<createIndex tableName="FEEDENTRYSTATUSES" indexName="user_starred_updated">
|
||||
<column name="user_id"></column>
|
||||
<column name="starred"></column>
|
||||
<column name="entryUpdated"></column>
|
||||
</createIndex>
|
||||
|
||||
<createIndex tableName="FEEDENTRYSTATUSES" indexName="sub_index">
|
||||
<column name="subscription_id"></column>
|
||||
</createIndex>
|
||||
|
||||
<dropIndex tableName="FEEDENTRYSTATUSES" indexName="sub_read_updated_index" />
|
||||
<dropIndex tableName="FEEDENTRYSTATUSES" indexName="user_read_updated_index" />
|
||||
<dropIndex tableName="FEEDENTRYSTATUSES" indexName="user_read_sub_index" />
|
||||
<dropIndex tableName="FEEDENTRYSTATUSES" indexName="user_entry_index" />
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="revamp-entries-indexes">
|
||||
<dropIndex tableName="FEEDENTRIES" indexName="updated_index" />
|
||||
<dropIndex tableName="FEEDENTRIES" indexName="inserted_index" />
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="add-starred-index-for-cleanup">
|
||||
<createIndex tableName="FEEDENTRYSTATUSES" indexName="insterted_starred_index">
|
||||
<column name="entryInserted"></column>
|
||||
<column name="starred"></column>
|
||||
</createIndex>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="add-title-hashes">
|
||||
<addColumn tableName="FEEDENTRYCONTENTS">
|
||||
<column name="titleHash" type="VARCHAR(40)" />
|
||||
</addColumn>
|
||||
<createIndex tableName="FEEDENTRYCONTENTS" indexName="content_title_index">
|
||||
<column name="contentHash" />
|
||||
<column name="titleHash" />
|
||||
</createIndex>
|
||||
<dropIndex tableName="FEEDENTRYCONTENTS" indexName="content_hash_index" />
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="drop-last-update-success">
|
||||
<dropIndex tableName="FEEDS" indexName="disabled_lastupdated_index" />
|
||||
<dropIndex tableName="FEEDS" indexName="lastupdated_index" />
|
||||
<dropColumn tableName="FEEDS" columnName="lastUpdateSuccess" />
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="drop-url-hash">
|
||||
<dropIndex tableName="FEEDS" indexName="urlHash_index" />
|
||||
<dropColumn tableName="FEEDS" columnName="urlHash" />
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="create-guid-feed-index">
|
||||
<createIndex tableName="FEEDENTRIES" indexName="guidHash_feed_index">
|
||||
<column name="guidHash" />
|
||||
<column name="feed_id" />
|
||||
</createIndex>
|
||||
<dropIndex tableName="FEEDENTRIES" indexName="guidHash_index" />
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="refresh-interval-setting">
|
||||
<addColumn tableName="APPLICATIONSETTINGS">
|
||||
<column name="refreshIntervalMinutes" type="INT"></column>
|
||||
</addColumn>
|
||||
<update tableName="APPLICATIONSETTINGS">
|
||||
<column name="refreshIntervalMinutes" valueNumeric="5"></column>
|
||||
</update>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="add-last-login-index">
|
||||
<createIndex tableName="USERS" indexName="lastlogin_index">
|
||||
<column name="lastLogin" />
|
||||
</createIndex>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="enforce-status-uniqueness">
|
||||
<createIndex tableName="FEEDENTRYSTATUSES" indexName="entry_subscription_id" unique="true">
|
||||
<column name="entry_id" />
|
||||
<column name="subscription_id" />
|
||||
</createIndex>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="drop-previous-index">
|
||||
<preConditions onFail="MARK_RAN" onFailMessage="no index, skipping">
|
||||
<indexExists tableName="FEEDENTRYSTATUSES" indexName="FKD6DCE994F46A5555" />
|
||||
</preConditions>
|
||||
<dropIndex tableName="FEEDENTRYSTATUSES" indexName="FKD6DCE994F46A5555" />
|
||||
</changeSet>
|
||||
|
||||
</databaseChangeLog>
|
||||
@@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.1.xsd">
|
||||
|
||||
<changeSet author="athou" id="add-url-after-redirect">
|
||||
<addColumn tableName="FEEDS">
|
||||
<column name="url_after_redirect" type="VARCHAR(2048)" />
|
||||
</addColumn>
|
||||
</changeSet>
|
||||
|
||||
</databaseChangeLog>
|
||||
@@ -0,0 +1,51 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.1.xsd">
|
||||
|
||||
<changeSet author="athou" id="scroll-speed">
|
||||
<addColumn tableName="USERSETTINGS">
|
||||
<column name="scroll_speed" type="BIGINT" />
|
||||
</addColumn>
|
||||
</changeSet>
|
||||
<changeSet author="athou" id="set-default-scroll-speed">
|
||||
<update tableName="USERSETTINGS">
|
||||
<column name="scroll_speed" valueNumeric="400" />
|
||||
</update>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="create-tags-table">
|
||||
<validCheckSum>7:fdd37bdee09c8fbbcbcd867b05decaae</validCheckSum>
|
||||
<createTable tableName="FEEDENTRYTAGS">
|
||||
<column name="id" type="BIGINT">
|
||||
<constraints nullable="false" primaryKey="true" />
|
||||
</column>
|
||||
<column name="entry_id" type="BIGINT">
|
||||
<constraints nullable="false" />
|
||||
</column>
|
||||
<column name="user_id" type="BIGINT">
|
||||
<constraints nullable="false" />
|
||||
</column>
|
||||
<column name="name" type="VARCHAR(40)">
|
||||
<constraints nullable="false" />
|
||||
</column>
|
||||
</createTable>
|
||||
|
||||
<addForeignKeyConstraint constraintName="fk_entry_id" baseTableName="FEEDENTRYTAGS" baseColumnNames="entry_id"
|
||||
referencedTableName="FEEDENTRIES" referencedColumnNames="id" />
|
||||
<addForeignKeyConstraint constraintName="fk_user_id" baseTableName="FEEDENTRYTAGS" baseColumnNames="user_id"
|
||||
referencedTableName="USERS" referencedColumnNames="id" />
|
||||
|
||||
<createIndex tableName="FEEDENTRYTAGS" indexName="user_entry_name_index">
|
||||
<column name="user_id" />
|
||||
<column name="entry_id" />
|
||||
<column name="name" />
|
||||
</createIndex>
|
||||
</changeSet>
|
||||
|
||||
<changeSet author="athou" id="add-full-refresh-timestamp">
|
||||
<addColumn tableName="USERS">
|
||||
<column name="last_full_refresh" type="DATETIME" />
|
||||
</addColumn>
|
||||
</changeSet>
|
||||
|
||||
</databaseChangeLog>
|
||||
@@ -0,0 +1,58 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.1.xsd">
|
||||
|
||||
<changeSet id="add-detailed-social-options" author="athou">
|
||||
<validCheckSum>8:58e8060bba0ec9d448f4346eb35d815c</validCheckSum>
|
||||
<addColumn tableName="USERSETTINGS">
|
||||
<column name="email" type="BOOLEAN"></column>
|
||||
</addColumn>
|
||||
<addColumn tableName="USERSETTINGS">
|
||||
<column name="gmail" type="BOOLEAN"></column>
|
||||
</addColumn>
|
||||
<addColumn tableName="USERSETTINGS">
|
||||
<column name="facebook" type="BOOLEAN"></column>
|
||||
</addColumn>
|
||||
<addColumn tableName="USERSETTINGS">
|
||||
<column name="twitter" type="BOOLEAN"></column>
|
||||
</addColumn>
|
||||
<addColumn tableName="USERSETTINGS">
|
||||
<column name="googleplus" type="BOOLEAN"></column>
|
||||
</addColumn>
|
||||
<addColumn tableName="USERSETTINGS">
|
||||
<column name="tumblr" type="BOOLEAN"></column>
|
||||
</addColumn>
|
||||
<addColumn tableName="USERSETTINGS">
|
||||
<column name="pocket" type="BOOLEAN"></column>
|
||||
</addColumn>
|
||||
<addColumn tableName="USERSETTINGS">
|
||||
<column name="instapaper" type="BOOLEAN"></column>
|
||||
</addColumn>
|
||||
<addColumn tableName="USERSETTINGS">
|
||||
<column name="buffer" type="BOOLEAN"></column>
|
||||
</addColumn>
|
||||
<addColumn tableName="USERSETTINGS">
|
||||
<column name="readability" type="BOOLEAN"></column>
|
||||
</addColumn>
|
||||
|
||||
<dropColumn tableName="USERSETTINGS" columnName="socialButtons" />
|
||||
|
||||
<update tableName="USERSETTINGS">
|
||||
<column name="email" valueBoolean="true"></column>
|
||||
<column name="gmail" valueBoolean="true"></column>
|
||||
<column name="facebook" valueBoolean="true"></column>
|
||||
<column name="twitter" valueBoolean="true"></column>
|
||||
<column name="googleplus" valueBoolean="true"></column>
|
||||
<column name="tumblr" valueBoolean="true"></column>
|
||||
<column name="pocket" valueBoolean="true"></column>
|
||||
<column name="instapaper" valueBoolean="true"></column>
|
||||
<column name="buffer" valueBoolean="true"></column>
|
||||
<column name="readability" valueBoolean="true"></column>
|
||||
</update>
|
||||
</changeSet>
|
||||
|
||||
<changeSet id="delete-settings" author="athou">
|
||||
<dropTable tableName="APPLICATIONSETTINGS" />
|
||||
</changeSet>
|
||||
|
||||
</databaseChangeLog>
|
||||
@@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.1.xsd">
|
||||
|
||||
<changeSet id="add-sub-filter" author="athou">
|
||||
<addColumn tableName="FEEDSUBSCRIPTIONS">
|
||||
<column name="filter" type="varchar(4096)" />
|
||||
</addColumn>
|
||||
</changeSet>
|
||||
|
||||
</databaseChangeLog>
|
||||
@@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.1.xsd">
|
||||
|
||||
<changeSet id="add-content-categories" author="athou">
|
||||
<addColumn tableName="FEEDENTRYCONTENTS">
|
||||
<column name="categories" type="varchar(4096)" />
|
||||
</addColumn>
|
||||
</changeSet>
|
||||
|
||||
</databaseChangeLog>
|
||||
@@ -0,0 +1,32 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.1.xsd">
|
||||
|
||||
<changeSet id="remove-googleplus-readability" author="athou">
|
||||
<dropColumn tableName="USERSETTINGS" columnName="googleplus" />
|
||||
<dropColumn tableName="USERSETTINGS" columnName="readability" />
|
||||
</changeSet>
|
||||
|
||||
<changeSet id="add-content-media" author="athou">
|
||||
<addColumn tableName="FEEDENTRYCONTENTS">
|
||||
<column name="mediaDescription" type="CLOB" />
|
||||
</addColumn>
|
||||
<addColumn tableName="FEEDENTRYCONTENTS">
|
||||
<column name="mediaThumbnailUrl" type="VARCHAR(2048)" />
|
||||
</addColumn>
|
||||
<addColumn tableName="FEEDENTRYCONTENTS">
|
||||
<column name="mediaThumbnailWidth" type="INT" />
|
||||
</addColumn>
|
||||
<addColumn tableName="FEEDENTRYCONTENTS">
|
||||
<column name="mediaThumbnailHeight" type="INT" />
|
||||
</addColumn>
|
||||
</changeSet>
|
||||
|
||||
<changeSet id="rename-filter-avoid-keyword" author="athou">
|
||||
<validCheckSum>8:39e5a9ff312af90d82f87c88abf1c66d</validCheckSum>
|
||||
<renameColumn tableName="FEEDSUBSCRIPTIONS" oldColumnName="filter" newColumnName="filtering_expression"
|
||||
columnDataType="VARCHAR(4096)" />
|
||||
</changeSet>
|
||||
|
||||
</databaseChangeLog>
|
||||
BIN
commafeed-server/src/main/resources/images/default_favicon.gif
Normal file
BIN
commafeed-server/src/main/resources/images/default_favicon.gif
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 238 B |
21
commafeed-server/src/main/resources/migrations.xml
Normal file
21
commafeed-server/src/main/resources/migrations.xml
Normal file
@@ -0,0 +1,21 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.1.xsd">
|
||||
|
||||
<property name="blob_type" value="bytea" dbms="postgresql"/>
|
||||
<property name="blob_type" value="blob" dbms="h2" />
|
||||
<property name="blob_type" value="blob" dbms="mysql,mariadb" />
|
||||
<property name="blob_type" value="blob" dbms="mssql" />
|
||||
|
||||
<include file="changelogs/db.changelog-1.0.xml" />
|
||||
<include file="changelogs/db.changelog-1.1.xml" />
|
||||
<include file="changelogs/db.changelog-1.2.xml" />
|
||||
<include file="changelogs/db.changelog-1.3.xml" />
|
||||
<include file="changelogs/db.changelog-1.4.xml" />
|
||||
<include file="changelogs/db.changelog-1.5.xml" />
|
||||
<include file="changelogs/db.changelog-2.1.xml" />
|
||||
<include file="changelogs/db.changelog-2.2.xml" />
|
||||
<include file="changelogs/db.changelog-2.6.xml" />
|
||||
|
||||
</databaseChangeLog>
|
||||
8
commafeed-server/src/main/resources/rome.properties
Normal file
8
commafeed-server/src/main/resources/rome.properties
Normal file
@@ -0,0 +1,8 @@
|
||||
WireFeedParser.classes= com.commafeed.backend.rome.OPML11Parser \
|
||||
com.commafeed.backend.rome.RSSRDF10Parser \
|
||||
com.commafeed.backend.rome.RSS090DescriptionParser
|
||||
|
||||
|
||||
Converter.classes= com.commafeed.backend.rome.RSS090DescriptionConverter
|
||||
|
||||
WireFeedGenerator.classes= com.commafeed.backend.rome.OPML11Generator
|
||||
Reference in New Issue
Block a user