]> git.mxchange.org Git - friendica.git/commitdiff
Merge pull request #5166 from annando/unsed-item-fields
authorHypolite Petovan <mrpetovan@gmail.com>
Sun, 3 Jun 2018 16:19:50 +0000 (12:19 -0400)
committerGitHub <noreply@github.com>
Sun, 3 Jun 2018 16:19:50 +0000 (12:19 -0400)
Remove unused, unneeded or redundant item fields

1  2 
database.sql
src/Database/DBStructure.php

diff --combined database.sql
index bd36bdb70c406d3ed3eab91bd0608c53419f6f7a,ffe02585e2be257fd6e09c6e4cb5d5c2a78c65f5..b186c0c0aa405de1a4a9c5f930ad328738eac33b
@@@ -1,6 -1,6 +1,6 @@@
  -- ------------------------------------------
  -- Friendica 2018.08-dev (The Tazmans Flax-lily)
 --- DB_UPDATE_VERSION 1267
 +-- DB_UPDATE_VERSION 1268
  -- ------------------------------------------
  
  
@@@ -17,7 -17,7 +17,7 @@@ CREATE TABLE IF NOT EXISTS `addon` 
        `plugin_admin` boolean NOT NULL DEFAULT '0' COMMENT '1 = has admin config, 0 = has no admin config',
         PRIMARY KEY(`id`),
         UNIQUE INDEX `name` (`name`)
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='registered addons';
  
  --
  -- TABLE attach
@@@ -37,7 -37,7 +37,7 @@@ CREATE TABLE IF NOT EXISTS `attach` 
        `deny_cid` mediumtext COMMENT 'Access Control - list of denied contact.id',
        `deny_gid` mediumtext COMMENT 'Access Control - list of denied groups',
         PRIMARY KEY(`id`)
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='file attachments';
  
  --
  -- TABLE auth_codes
@@@ -49,7 -49,7 +49,7 @@@ CREATE TABLE IF NOT EXISTS `auth_codes
        `expires` int NOT NULL DEFAULT 0 COMMENT '',
        `scope` varchar(250) NOT NULL DEFAULT '' COMMENT '',
         PRIMARY KEY(`id`)
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='OAuth usage';
  
  --
  -- TABLE cache
@@@ -61,7 -61,7 +61,7 @@@ CREATE TABLE IF NOT EXISTS `cache` 
        `updated` datetime NOT NULL DEFAULT '0001-01-01 00:00:00' COMMENT 'datetime of cache insertion',
         PRIMARY KEY(`k`),
         INDEX `k_expires` (`k`,`expires`)
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='Stores temporary data';
  
  --
  -- TABLE challenge
@@@ -74,7 -74,7 +74,7 @@@ CREATE TABLE IF NOT EXISTS `challenge` 
        `type` varchar(255) NOT NULL DEFAULT '' COMMENT '',
        `last_update` varchar(255) NOT NULL DEFAULT '' COMMENT '',
         PRIMARY KEY(`id`)
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='';
  
  --
  -- TABLE clients
@@@ -87,7 -87,7 +87,7 @@@ CREATE TABLE IF NOT EXISTS `clients` 
        `icon` text COMMENT '',
        `uid` mediumint unsigned NOT NULL DEFAULT 0 COMMENT 'User id',
         PRIMARY KEY(`client_id`)
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='OAuth usage';
  
  --
  -- TABLE config
@@@ -99,7 -99,7 +99,7 @@@ CREATE TABLE IF NOT EXISTS `config` 
        `v` mediumtext COMMENT '',
         PRIMARY KEY(`id`),
         UNIQUE INDEX `cat_k` (`cat`,`k`)
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='main configuration storage';
  
  --
  -- TABLE contact
@@@ -186,7 -186,7 +186,7 @@@ CREATE TABLE IF NOT EXISTS `contact` 
         INDEX `nick_uid` (`nick`(32),`uid`),
         INDEX `dfrn-id` (`dfrn-id`(64)),
         INDEX `issued-id` (`issued-id`(64))
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='contact table';
  
  --
  -- TABLE conv
@@@ -202,7 -202,7 +202,7 @@@ CREATE TABLE IF NOT EXISTS `conv` 
        `subject` text COMMENT 'subject of initial message',
         PRIMARY KEY(`id`),
         INDEX `uid` (`uid`)
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='private messages';
  
  --
  -- TABLE conversation
@@@ -218,7 -218,7 +218,7 @@@ CREATE TABLE IF NOT EXISTS `conversatio
         PRIMARY KEY(`item-uri`),
         INDEX `conversation-uri` (`conversation-uri`),
         INDEX `received` (`received`)
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='Raw data and structure information for messages';
  
  --
  -- TABLE event
@@@ -246,7 -246,7 +246,7 @@@ CREATE TABLE IF NOT EXISTS `event` 
        `deny_gid` mediumtext COMMENT 'Access Control - list of denied groups',
         PRIMARY KEY(`id`),
         INDEX `uid_start` (`uid`,`start`)
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='Events';
  
  --
  -- TABLE fcontact
@@@ -272,7 -272,7 +272,7 @@@ CREATE TABLE IF NOT EXISTS `fcontact` 
         PRIMARY KEY(`id`),
         INDEX `addr` (`addr`(32)),
         UNIQUE INDEX `url` (`url`(190))
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='Diaspora compatible contacts - used in the Diaspora implementation';
  
  --
  -- TABLE fsuggest
@@@ -288,7 -288,7 +288,7 @@@ CREATE TABLE IF NOT EXISTS `fsuggest` 
        `note` text COMMENT '',
        `created` datetime NOT NULL DEFAULT '0001-01-01 00:00:00' COMMENT '',
         PRIMARY KEY(`id`)
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='friend suggestion stuff';
  
  --
  -- TABLE gcign
@@@ -300,7 -300,7 +300,7 @@@ CREATE TABLE IF NOT EXISTS `gcign` 
         PRIMARY KEY(`id`),
         INDEX `uid` (`uid`),
         INDEX `gcid` (`gcid`)
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='contacts ignored by friend suggestions';
  
  --
  -- TABLE gcontact
@@@ -339,7 -339,7 +339,7 @@@ CREATE TABLE IF NOT EXISTS `gcontact` 
         INDEX `addr` (`addr`(64)),
         INDEX `hide_network_updated` (`hide`,`network`,`updated`),
         INDEX `updated` (`updated`)
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='global contacts';
  
  --
  -- TABLE glink
@@@ -354,7 -354,7 +354,7 @@@ CREATE TABLE IF NOT EXISTS `glink` 
         PRIMARY KEY(`id`),
         UNIQUE INDEX `cid_uid_gcid_zcid` (`cid`,`uid`,`gcid`,`zcid`),
         INDEX `gcid` (`gcid`)
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='\'friends of friends\' linkages derived from poco';
  
  --
  -- TABLE group
@@@ -367,7 -367,7 +367,7 @@@ CREATE TABLE IF NOT EXISTS `group` 
        `name` varchar(255) NOT NULL DEFAULT '' COMMENT 'human readable name of group',
         PRIMARY KEY(`id`),
         INDEX `uid` (`uid`)
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='privacy groups, group info';
  
  --
  -- TABLE group_member
@@@ -379,7 -379,7 +379,7 @@@ CREATE TABLE IF NOT EXISTS `group_membe
         PRIMARY KEY(`id`),
         INDEX `contactid` (`contact-id`),
         UNIQUE INDEX `gid_contactid` (`gid`,`contact-id`)
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='privacy groups, member info';
  
  --
  -- TABLE gserver
@@@ -405,7 -405,7 +405,7 @@@ CREATE TABLE IF NOT EXISTS `gserver` 
        `last_failure` datetime DEFAULT '0001-01-01 00:00:00' COMMENT '',
         PRIMARY KEY(`id`),
         UNIQUE INDEX `nurl` (`nurl`(190))
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='Global servers';
  
  --
  -- TABLE gserver-tag
@@@ -415,7 -415,7 +415,7 @@@ CREATE TABLE IF NOT EXISTS `gserver-tag
        `tag` varchar(100) NOT NULL DEFAULT '' COMMENT 'Tag that the server has subscribed',
         PRIMARY KEY(`gserver-id`,`tag`),
         INDEX `tag` (`tag`)
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='Tags that the server has subscribed';
  
  --
  -- TABLE hook
@@@ -428,7 -428,7 +428,7 @@@ CREATE TABLE IF NOT EXISTS `hook` 
        `priority` smallint unsigned NOT NULL DEFAULT 0 COMMENT 'not yet implemented - can be used to sort conflicts in hook handling by calling handlers in priority order',
         PRIMARY KEY(`id`),
         UNIQUE INDEX `hook_file_function` (`hook`,`file`,`function`)
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='addon hook registry';
  
  --
  -- TABLE intro
@@@ -446,7 -446,7 +446,7 @@@ CREATE TABLE IF NOT EXISTS `intro` 
        `blocked` boolean NOT NULL DEFAULT '1' COMMENT '',
        `ignore` boolean NOT NULL DEFAULT '0' COMMENT '',
         PRIMARY KEY(`id`)
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='';
  
  --
  -- TABLE item
@@@ -504,7 -504,6 +504,6 @@@ CREATE TABLE IF NOT EXISTS `item` 
        `pubmail` boolean NOT NULL DEFAULT '0' COMMENT '',
        `moderated` boolean NOT NULL DEFAULT '0' COMMENT '',
        `visible` boolean NOT NULL DEFAULT '0' COMMENT '',
-       `spam` boolean NOT NULL DEFAULT '0' COMMENT '',
        `starred` boolean NOT NULL DEFAULT '0' COMMENT 'item has been favourited',
        `bookmark` boolean NOT NULL DEFAULT '0' COMMENT 'item has been bookmarked',
        `unseen` boolean NOT NULL DEFAULT '1' COMMENT 'item has not been seen',
         INDEX `uid_eventid` (`uid`,`event-id`),
         INDEX `uid_authorlink` (`uid`,`author-link`(190)),
         INDEX `uid_ownerlink` (`uid`,`owner-link`(190))
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='All posts';
  
  --
  -- TABLE locks
@@@ -555,7 -554,7 +554,7 @@@ CREATE TABLE IF NOT EXISTS `locks` 
        `locked` boolean NOT NULL DEFAULT '0' COMMENT '',
        `pid` int unsigned NOT NULL DEFAULT 0 COMMENT 'Process ID',
         PRIMARY KEY(`id`)
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='';
  
  --
  -- TABLE mail
@@@ -584,7 -583,7 +583,7 @@@ CREATE TABLE IF NOT EXISTS `mail` 
         INDEX `uri` (`uri`(64)),
         INDEX `parent-uri` (`parent-uri`(64)),
         INDEX `contactid` (`contact-id`(32))
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='private messages';
  
  --
  -- TABLE mailacct
@@@ -604,7 -603,7 +603,7 @@@ CREATE TABLE IF NOT EXISTS `mailacct` 
        `pubmail` boolean NOT NULL DEFAULT '0' COMMENT '',
        `last_check` datetime NOT NULL DEFAULT '0001-01-01 00:00:00' COMMENT '',
         PRIMARY KEY(`id`)
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='Mail account data for fetching mails';
  
  --
  -- TABLE manage
@@@ -615,7 -614,7 +614,7 @@@ CREATE TABLE IF NOT EXISTS `manage` 
        `mid` mediumint unsigned NOT NULL DEFAULT 0 COMMENT 'User id',
         PRIMARY KEY(`id`),
         UNIQUE INDEX `uid_mid` (`uid`,`mid`)
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='table of accounts that can manage each other';
  
  --
  -- TABLE notify
@@@ -643,7 -642,7 +642,7 @@@ CREATE TABLE IF NOT EXISTS `notify` 
         INDEX `seen_uid_date` (`seen`,`uid`,`date`),
         INDEX `uid_date` (`uid`,`date`),
         INDEX `uid_type_link` (`uid`,`type`,`link`(190))
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='notifications';
  
  --
  -- TABLE notify-threads
@@@ -655,7 -654,7 +654,7 @@@ CREATE TABLE IF NOT EXISTS `notify-thre
        `parent-item` int unsigned NOT NULL DEFAULT 0 COMMENT '',
        `receiver-uid` mediumint unsigned NOT NULL DEFAULT 0 COMMENT 'User id',
         PRIMARY KEY(`id`)
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='';
  
  --
  -- TABLE oembed
@@@ -667,7 -666,7 +666,7 @@@ CREATE TABLE IF NOT EXISTS `oembed` 
        `created` datetime NOT NULL DEFAULT '0001-01-01 00:00:00' COMMENT 'datetime of creation',
         PRIMARY KEY(`url`,`maxwidth`),
         INDEX `created` (`created`)
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='cache for OEmbed queries';
  
  --
  -- TABLE parsed_url
@@@ -680,7 -679,7 +679,7 @@@ CREATE TABLE IF NOT EXISTS `parsed_url
        `created` datetime NOT NULL DEFAULT '0001-01-01 00:00:00' COMMENT 'datetime of creation',
         PRIMARY KEY(`url`,`guessing`,`oembed`),
         INDEX `created` (`created`)
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='cache for \'parse_url\' queries';
  
  --
  -- TABLE participation
@@@ -691,7 -690,7 +690,7 @@@ CREATE TABLE IF NOT EXISTS `participati
        `cid` int unsigned NOT NULL COMMENT '',
        `fid` int unsigned NOT NULL COMMENT '',
         PRIMARY KEY(`iid`,`server`)
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='Storage for participation messages from Diaspora';
  
  --
  -- TABLE pconfig
@@@ -704,7 -703,7 +703,7 @@@ CREATE TABLE IF NOT EXISTS `pconfig` 
        `v` mediumtext COMMENT '',
         PRIMARY KEY(`id`),
         UNIQUE INDEX `uid_cat_k` (`uid`,`cat`,`k`)
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='personal (per user) configuration storage';
  
  --
  -- TABLE photo
@@@ -739,7 -738,7 +738,7 @@@ CREATE TABLE IF NOT EXISTS `photo` 
         INDEX `uid_album_scale_created` (`uid`,`album`(32),`scale`,`created`),
         INDEX `uid_album_resource-id_created` (`uid`,`album`(32),`resource-id`,`created`),
         INDEX `resource-id` (`resource-id`)
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='photo storage';
  
  --
  -- TABLE poll
@@@ -759,7 -758,7 +758,7 @@@ CREATE TABLE IF NOT EXISTS `poll` 
        `q9` text COMMENT '',
         PRIMARY KEY(`id`),
         INDEX `uid` (`uid`)
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='Currently unused table for storing poll results';
  
  --
  -- TABLE poll_result
@@@ -770,7 -769,7 +769,7 @@@ CREATE TABLE IF NOT EXISTS `poll_result
        `choice` tinyint unsigned NOT NULL DEFAULT 0 COMMENT '',
         PRIMARY KEY(`id`),
         INDEX `poll_id` (`poll_id`)
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='data for polls - currently unused';
  
  --
  -- TABLE process
@@@ -781,7 -780,7 +780,7 @@@ CREATE TABLE IF NOT EXISTS `process` 
        `created` datetime NOT NULL DEFAULT '0001-01-01 00:00:00' COMMENT '',
         PRIMARY KEY(`pid`),
         INDEX `command` (`command`)
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='Currently running system processes';
  
  --
  -- TABLE profile
@@@ -831,7 -830,7 +830,7 @@@ CREATE TABLE IF NOT EXISTS `profile` 
        `net-publish` boolean NOT NULL DEFAULT '0' COMMENT 'publish profile in global directory',
         PRIMARY KEY(`id`),
         INDEX `uid_is-default` (`uid`,`is-default`)
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='user profiles data';
  
  --
  -- TABLE profile_check
@@@ -844,7 -843,7 +843,7 @@@ CREATE TABLE IF NOT EXISTS `profile_che
        `sec` varchar(255) NOT NULL DEFAULT '' COMMENT '',
        `expire` int unsigned NOT NULL DEFAULT 0 COMMENT '',
         PRIMARY KEY(`id`)
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='DFRN remote auth use';
  
  --
  -- TABLE push_subscriber
@@@ -862,7 -861,7 +861,7 @@@ CREATE TABLE IF NOT EXISTS `push_subscr
        `secret` varchar(255) NOT NULL DEFAULT '' COMMENT '',
         PRIMARY KEY(`id`),
         INDEX `next_try` (`next_try`)
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='Used for OStatus: Contains feed subscribers';
  
  --
  -- TABLE queue
@@@ -881,7 -880,7 +880,7 @@@ CREATE TABLE IF NOT EXISTS `queue` 
         PRIMARY KEY(`id`),
         INDEX `last` (`last`),
         INDEX `next` (`next`)
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='Queue for messages that couldn\'t be delivered';
  
  --
  -- TABLE register
@@@ -895,7 -894,7 +894,7 @@@ CREATE TABLE IF NOT EXISTS `register` 
        `language` varchar(16) NOT NULL DEFAULT '' COMMENT '',
        `note` text COMMENT '',
         PRIMARY KEY(`id`)
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='registrations requiring admin approval';
  
  --
  -- TABLE search
@@@ -906,7 -905,7 +905,7 @@@ CREATE TABLE IF NOT EXISTS `search` 
        `term` varchar(255) NOT NULL DEFAULT '' COMMENT '',
         PRIMARY KEY(`id`),
         INDEX `uid` (`uid`)
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='';
  
  --
  -- TABLE session
@@@ -919,7 -918,7 +918,7 @@@ CREATE TABLE IF NOT EXISTS `session` 
         PRIMARY KEY(`id`),
         INDEX `sid` (`sid`(64)),
         INDEX `expire` (`expire`)
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='web session storage';
  
  --
  -- TABLE sign
@@@ -932,7 -931,7 +931,7 @@@ CREATE TABLE IF NOT EXISTS `sign` 
        `signer` varchar(255) NOT NULL DEFAULT '' COMMENT '',
         PRIMARY KEY(`id`),
         UNIQUE INDEX `iid` (`iid`)
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='Diaspora signatures';
  
  --
  -- TABLE term
@@@ -955,7 -954,7 +954,7 @@@ CREATE TABLE IF NOT EXISTS `term` 
         INDEX `uid_otype_type_term_global_created` (`uid`,`otype`,`type`,`term`(32),`global`,`created`),
         INDEX `uid_otype_type_url` (`uid`,`otype`,`type`,`url`(64)),
         INDEX `guid` (`guid`(64))
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='item taxonomy (categories, tags, etc.) table';
  
  --
  -- TABLE thread
@@@ -976,7 -975,6 +975,6 @@@ CREATE TABLE IF NOT EXISTS `thread` 
        `pubmail` boolean NOT NULL DEFAULT '0' COMMENT '',
        `moderated` boolean NOT NULL DEFAULT '0' COMMENT '',
        `visible` boolean NOT NULL DEFAULT '0' COMMENT '',
-       `spam` boolean NOT NULL DEFAULT '0' COMMENT '',
        `starred` boolean NOT NULL DEFAULT '0' COMMENT '',
        `ignored` boolean NOT NULL DEFAULT '0' COMMENT '',
        `bookmark` boolean NOT NULL DEFAULT '0' COMMENT '',
         INDEX `uid_commented` (`uid`,`commented`),
         INDEX `uid_wall_created` (`uid`,`wall`,`created`),
         INDEX `private_wall_origin_commented` (`private`,`wall`,`origin`,`commented`)
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='Thread related data';
  
  --
  -- TABLE tokens
@@@ -1011,7 -1009,7 +1009,7 @@@ CREATE TABLE IF NOT EXISTS `tokens` 
        `scope` varchar(200) NOT NULL DEFAULT '' COMMENT '',
        `uid` mediumint unsigned NOT NULL DEFAULT 0 COMMENT 'User id',
         PRIMARY KEY(`id`)
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='OAuth usage';
  
  --
  -- TABLE user
@@@ -1064,7 -1062,7 +1062,7 @@@ CREATE TABLE IF NOT EXISTS `user` 
        `openidserver` text COMMENT '',
         PRIMARY KEY(`uid`),
         INDEX `nickname` (`nickname`(32))
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='The local users';
  
  --
  -- TABLE userd
@@@ -1074,7 -1072,7 +1072,7 @@@ CREATE TABLE IF NOT EXISTS `userd` 
        `username` varchar(255) NOT NULL COMMENT '',
         PRIMARY KEY(`id`),
         INDEX `username` (`username`(32))
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='Deleted usernames';
  
  --
  -- TABLE user-item
@@@ -1084,16 -1082,7 +1082,16 @@@ CREATE TABLE IF NOT EXISTS `user-item` 
        `uid` mediumint unsigned NOT NULL DEFAULT 0 COMMENT 'User id',
        `hidden` boolean NOT NULL DEFAULT '0' COMMENT 'Marker to hide an item from the user',
         PRIMARY KEY(`uid`,`iid`)
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='User specific item data';
 +
 +--
 +-- TABLE worker-ipc
 +--
 +CREATE TABLE IF NOT EXISTS `worker-ipc` (
 +      `key` int NOT NULL COMMENT '',
 +      `jobs` boolean COMMENT 'Flag for outstanding jobs',
 +       PRIMARY KEY(`key`)
 +) ENGINE=MEMORY DEFAULT COLLATE utf8mb4_general_ci COMMENT='Inter process communication between the frontend and the worker';
  
  --
  -- TABLE workerqueue
@@@ -1111,6 -1100,6 +1109,6 @@@ CREATE TABLE IF NOT EXISTS `workerqueue
         INDEX `parameter` (`parameter`(64)),
         INDEX `priority_created` (`priority`,`created`),
         INDEX `done_executed` (`done`,`executed`)
 -) DEFAULT COLLATE utf8mb4_general_ci;
 +) DEFAULT COLLATE utf8mb4_general_ci COMMENT='Background tasks queue entries';
  
  
index b8b5a63b9b5120eb21b07c836f4653d5f712265a,f5c778b21932304c26304fa5fe65804708c3dc47..900e00b521384227ade6db134a478a11c902a324
@@@ -174,7 -174,7 +174,7 @@@ class DBStructur
                        echo "--\n";
                        echo "-- TABLE $name\n";
                        echo "--\n";
 -                      self::createTable($name, $structure['fields'], true, false, $structure["indexes"]);
 +                      self::createTable($name, $structure, true, false);
  
                        echo "\n";
                }
                        $is_unique = false;
                        $temp_name = $name;
                        if (!isset($database[$name])) {
 -                              $r = self::createTable($name, $structure["fields"], $verbose, $action, $structure['indexes']);
 +                              $r = self::createTable($name, $structure, $verbose, $action);
                                if (!DBM::is_result($r)) {
                                        $errors .= self::printUpdateError($name);
                                }
                                        }
                                }
  
 +                              if (isset($database[$name]["table_status"]["Engine"]) && isset($structure['engine'])) {
 +                                      if ($database[$name]["table_status"]["Engine"] != $structure['engine']) {
 +                                              $sql2 = "ENGINE = '".dbesc($structure['engine'])."'";
 +
 +                                              if ($sql3 == "") {
 +                                                      $sql3 = "ALTER" . $ignore . " TABLE `".$temp_name."` ".$sql2;
 +                                              } else {
 +                                                      $sql3 .= ", ".$sql2;
 +                                              }
 +                                      }
 +                              }
 +
                                if (isset($database[$name]["table_status"]["Collation"])) {
                                        if ($database[$name]["table_status"]["Collation"] != 'utf8mb4_general_ci') {
                                                $sql2 = "DEFAULT COLLATE utf8mb4_general_ci";
                return($fieldstruct);
        }
  
 -      private static function createTable($name, $fields, $verbose, $action, $indexes=null) {
 +      private static function createTable($name, $structure, $verbose, $action) {
                $r = true;
  
 +              $engine = "";
 +              $comment = "";
                $sql_rows = [];
                $primary_keys = [];
 -              foreach ($fields AS $fieldname => $field) {
 +              foreach ($structure["fields"] AS $fieldname => $field) {
                        $sql_rows[] = "`".dbesc($fieldname)."` ".self::FieldCommand($field);
                        if (x($field,'primary') && $field['primary']!='') {
                                $primary_keys[] = $fieldname;
                        }
                }
  
 -              if (!is_null($indexes)) {
 -                      foreach ($indexes AS $indexname => $fieldnames) {
 +              if (!is_null($structure["indexes"])) {
 +                      foreach ($structure["indexes"] AS $indexname => $fieldnames) {
                                $sql_index = self::createIndex($indexname, $fieldnames, "");
                                if (!is_null($sql_index)) {
                                        $sql_rows[] = $sql_index;
                        }
                }
  
 +              if (!is_null($structure["engine"])) {
 +                      $engine = " ENGINE=" . $structure["engine"];
 +              }
 +
 +              if (!is_null($structure["comment"])) {
 +                      $comment = " COMMENT='" . dbesc($structure["comment"]) . "'";
 +              }
 +
                $sql = implode(",\n\t", $sql_rows);
  
 -              $sql = sprintf("CREATE TABLE IF NOT EXISTS `%s` (\n\t", dbesc($name)).$sql."\n) DEFAULT COLLATE utf8mb4_general_ci";
 +              $sql = sprintf("CREATE TABLE IF NOT EXISTS `%s` (\n\t", dbesc($name)).$sql.
 +                              "\n)" . $engine . " DEFAULT COLLATE utf8mb4_general_ci" . $comment;
                if ($verbose) {
                        echo $sql.";\n";
                }
                                                "pubmail" => ["type" => "boolean", "not null" => "1", "default" => "0", "comment" => ""],
                                                "moderated" => ["type" => "boolean", "not null" => "1", "default" => "0", "comment" => ""],
                                                "visible" => ["type" => "boolean", "not null" => "1", "default" => "0", "comment" => ""],
-                                               "spam" => ["type" => "boolean", "not null" => "1", "default" => "0", "comment" => ""],
                                                "starred" => ["type" => "boolean", "not null" => "1", "default" => "0", "comment" => "item has been favourited"],
                                                "bookmark" => ["type" => "boolean", "not null" => "1", "default" => "0", "comment" => "item has been bookmarked"],
                                                "unseen" => ["type" => "boolean", "not null" => "1", "default" => "1", "comment" => "item has not been seen"],
                                                "pubmail" => ["type" => "boolean", "not null" => "1", "default" => "0", "comment" => ""],
                                                "moderated" => ["type" => "boolean", "not null" => "1", "default" => "0", "comment" => ""],
                                                "visible" => ["type" => "boolean", "not null" => "1", "default" => "0", "comment" => ""],
-                                               "spam" => ["type" => "boolean", "not null" => "1", "default" => "0", "comment" => ""],
                                                "starred" => ["type" => "boolean", "not null" => "1", "default" => "0", "comment" => ""],
                                                "ignored" => ["type" => "boolean", "not null" => "1", "default" => "0", "comment" => ""],
                                                "bookmark" => ["type" => "boolean", "not null" => "1", "default" => "0", "comment" => ""],
                                                "PRIMARY" => ["uid", "iid"],
                                                ]
                                ];
 +              $database["worker-ipc"] = [
 +                              "comment" => "Inter process communication between the frontend and the worker",
 +                              "fields" => [
 +                                              "key" => ["type" => "int", "not null" => "1", "primary" => "1", "comment" => ""],
 +                                              "jobs" => ["type" => "boolean", "comment" => "Flag for outstanding jobs"],
 +                                              ],
 +                              "indexes" => [
 +                                              "PRIMARY" => ["key"],
 +                                              ],
 +                              "engine" => "MEMORY",
 +                              ];
 +
                $database["workerqueue"] = [
                                "comment" => "Background tasks queue entries",
                                "fields" => [