Upgrade MM 5.3.1 to latest version fails

Setting innodb_default_row_format globally is apparently not yet supported in my MariaDB version.

mysql -u root -p
Enter password: 
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 114836
Server version: 10.0.38-MariaDB-0ubuntu0.16.04.1 Ubuntu 16.04

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> SET GLOBAL innodb_default_row_format=DYNAMIC;
ERROR 1193 (HY000): Unknown system variable 'innodb_default_row_format'

But I have to do a MariaDB update to at least version 10.2 soon anyway, because the new major version 21 of Nextcloud requires at least this version.

After that I did the same upgrade process to version 5.9.8 ESR as described once above and tried to start the Mattermost service.

root@SERVER:/opt# systemctl start mattermost
Job for mattermost.service failed because the control process exited with error code. See "systemctl status mattermost.service" and "journalctl -xe" for details.
root@SERVER:/opt#
root@SERVER:/opt# systemctl status mattermost.service
● mattermost.service - Mattermost
   Loaded: loaded (/lib/systemd/system/mattermost.service; enabled; vendor preset: enabled)
   Active: activating (auto-restart) (Result: exit-code) since Mon 2021-02-22 20:20:29 CET; 6s ago
  Process: 32048 ExecStart=/opt/mattermost/bin/mattermost (code=exited, status=119)
 Main PID: 32048 (code=exited, status=119)

Feb 22 20:20:29 SERVER systemd[1]: Failed to start Mattermost.
Feb 22 20:20:29 SERVER systemd[1]: mattermost.service: Unit entered failed state.
Feb 22 20:20:29 SERVER systemd[1]: mattermost.service: Failed with result 'exit-code'.

You can download the output of journalctl -xe here (2 days):

Hi, @SuziQ

I can see that we are still dealing with the same error from the journalctl -xe output. Can you share the result of running the following SQL query?

SELECT table_name, row_format FROM information_schema.tables WHERE table_schema="mattermost";

Hello @ahmaddanial,
here’s the issue you want:

MariaDB [(none)]> SELECT table_name, row_format FROM information_schema.tables WHERE table_schema="mattermost";
+----------------------+------------+
| table_name           | row_format |
+----------------------+------------+
| Audits               | Dynamic    |
| ChannelMemberHistory | Dynamic    |
| ChannelMembers       | Dynamic    |
| Channels             | Dynamic    |
| ClusterDiscovery     | Dynamic    |
| CommandWebhooks      | Dynamic    |
| Commands             | Dynamic    |
| Compliances          | Dynamic    |
| Emoji                | Dynamic    |
| FileInfo             | Dynamic    |
| IncomingWebhooks     | Dynamic    |
| Jobs                 | Dynamic    |
| Licenses             | Dynamic    |
| OAuthAccessData      | Dynamic    |
| OAuthApps            | Dynamic    |
| OAuthAuthData        | Dynamic    |
| OutgoingWebhooks     | Dynamic    |
| PluginKeyValueStore  | Dynamic    |
| Posts                | Dynamic    |
| Preferences          | Dynamic    |
| Reactions            | Dynamic    |
| Roles                | Dynamic    |
| Schemes              | Dynamic    |
| Sessions             | Dynamic    |
| Status               | Dynamic    |
| Systems              | Dynamic    |
| TeamMembers          | Dynamic    |
| Teams                | Dynamic    |
| Tokens               | Compact    |
| UserAccessTokens     | Dynamic    |
| Users                | Dynamic    |
+----------------------+------------+
31 rows in set (0.08 sec)

Ooops, why is table Tokens already set to Compact? :frowning:
I have forgotten them … grrrr

Well, I have now also changed the table tokens and then tried the upgrade to version 5.9.8 ESR again.
Starting the Mattermost service still fails.
Here is the new file journalctl-xe.txt.

MariaDB [(none)]> SELECT table_name, row_format FROM information_schema.tables WHERE table_schema="mattermost";
+----------------------+------------+
| table_name           | row_format |
+----------------------+------------+
| Audits               | Dynamic    |
| ChannelMemberHistory | Dynamic    |
| ChannelMembers       | Dynamic    |
| Channels             | Dynamic    |
| ClusterDiscovery     | Dynamic    |
| CommandWebhooks      | Dynamic    |
| Commands             | Dynamic    |
| Compliances          | Dynamic    |
| Emoji                | Dynamic    |
| FileInfo             | Dynamic    |
| IncomingWebhooks     | Dynamic    |
| Jobs                 | Dynamic    |
| Licenses             | Dynamic    |
| OAuthAccessData      | Dynamic    |
| OAuthApps            | Dynamic    |
| OAuthAuthData        | Dynamic    |
| OutgoingWebhooks     | Dynamic    |
| PluginKeyValueStore  | Dynamic    |
| Posts                | Dynamic    |
| Preferences          | Dynamic    |
| Reactions            | Dynamic    |
| Roles                | Dynamic    |
| Schemes              | Dynamic    |
| Sessions             | Dynamic    |
| Status               | Dynamic    |
| Systems              | Dynamic    |
| TeamMembers          | Dynamic    |
| Teams                | Dynamic    |
| Tokens               | Dynamic    |
| UserAccessTokens     | Dynamic    |
| Users                | Dynamic    |
+----------------------+------------+
31 rows in set (0.01 sec)

In the meantime, I have updated MariaDB to version 10.2 and was therefore also able to

MariaDB [(none)]> SET GLOBAL innodb_default_row_format=DYNAMIC;
Query OK, 0 rows affected (0.00 sec)

correctly.

root@SERVER:/opt# mysql --version
mysql  Ver 15.1 Distrib 10.2.37-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2

Ok, with MariaDB 10.2 I tried the update again … AND!

WOW! WOW! WOW! WOW! WOW! WOW! WOW! WOW!

I’m now on version 5.9.8 ESR! :+1: :ok_hand: :+1:

systemctl status mattermost

● mattermost.service - Mattermost
   Loaded: loaded (/lib/systemd/system/mattermost.service; enabled; vendor preset: enabled)
   Active: active (running) since Die 2021-02-23 15:01:03 CET; 33s ago
 Main PID: 28543 (mattermost)
    Tasks: 12 (limit: 65000)
   Memory: 223.4M
      CPU: 3.068s
   CGroup: /system.slice/mattermost.service
           └─28543 /opt/mattermost/bin/mattermost

What should I do next?

Step by step the versions 5.19.3 / 5.25.7 / 5.31.0?
Or should I try version 5.31.0 right away?

Yes, you are right, I couldn’t wait any longer and have updated step by step to version 5.31.0. Great work, Suzi :wink: And great work and perseverance from @XxLilBoPeepsxX and @ahmaddanial too. :+1: Many heartfelt thanks. :heart_eyes:

2 Likes

I’m so happy to see you got it working, and am happy to have been able to provide assistance! Enjoy your installation and if you have any other questions or difficulties, we’re always happy to lend a hand! :slight_smile:

2 Likes

Thank you sooo much! :ok_hand:

2 Likes

Heartfelt greetings from the 6 associations on this Mattermost platform, which can now keep all their data and calmly now continue to focus on their agendas … Really great work! :heart_eyes: :heart_eyes:

2 Likes

Hi, @XxLilBoPeepsxX @SuziQ

Teamwork makes the dream work. Kudos to all of us!

Happy to know that everything is up and running. If you happen to stumble into any issues, we are here for you, so let us know. :smiley:

2 Likes

Good statement. Thank you too, so very much. :ok_hand:

I wrote it before to the people here on my installation:

“Have you ever seen or heard so much perseverance and commitment at Microsoft, Apple, Google & Co.? We stay with Open Source, even if it takes a while, if both sides stick to it, there will be a solution for sure”.

All love.
Suzi

2 Likes