NetXMS Support Forum

English Support => General Support => Topic started by: peterjn on December 14, 2020, 11:59:48 AM

Title: Upgrade to 36.4
Post by: peterjn on December 14, 2020, 11:59:48 AM
While upgrading the database to 36.4 i get the following error:

Upgrading from version 36.3 to 36.4
SQL query failed (Row size too large. The maximum row size for the used table type, not counting BLOBs, is 8126. This includes storage overhead, check the manual. You have to change some columns to TEXT or BLOBs):
ALTER TABLE nodes ADD agent_cert_mapping_method char(1)
Rolling back last stage due to upgrade errors...
Database upgrade failed

I am running Debian 10 and MariaDB (10.3.27)
Title: Re: Upgrade to 36.4
Post by: Filipp Sudanov on December 14, 2020, 01:03:49 PM
Recent changes in NetXMS added fields to nodes table. Looks like we are now hitting page size limitation: https://mariadb.com/kb/en/innodb-row-formats-overview/#maximum-row-size
Increasing innodb_page_size might help.
Title: Re: Upgrade to 36.4
Post by: peterjn on December 14, 2020, 04:04:03 PM
- According to de mariaDB documentation innodb_page_size can only be changed for a new databases (https://mariadb.com/kb/en/how-to-change-innodb_page_size/)

- increasing innodb_page_size is bad for tables with small record size and a lot of inserts like the tables that store the values.


PS: I think it is wise to remove 36.4 from the distributions. I just did a apt-get update && apt-get upgrade and now the netxms server is broken.
Title: Re: Upgrade to 36.4
Post by: Filipp Sudanov on December 14, 2020, 04:53:23 PM
What is the value of innodb_page_size on your system?
Title: Re: Upgrade to 36.4
Post by: peterjn on December 14, 2020, 05:18:09 PM
My MariaDB standard debian. No parameters are changed.

In the standaard debian conf innodb_page_size is not set.
Title: Re: Upgrade to 36.4
Post by: Filipp Sudanov on December 14, 2020, 05:31:40 PM
What's the output of
show status where variable_name = "innodb_page_size";

I've just tried to install NetXMS 3.5 from packages on Debian 10 and upgrade to 3.6 went successfully. Could it be that your NetXMS database was created some time ago and on older MariaDB?
Title: Re: Upgrade to 36.4
Post by: peterjn on December 14, 2020, 06:31:54 PM
MariaDB [(none)]> show status where variable_name = "innodb_page_size";
+------------------+-------+
| Variable_name    | Value |
+------------------+-------+
| Innodb_page_size | 16384 |
+------------------+-------+


The database was old. I upgraded to debian 10.

I just did a dump, drop, create and restored of the database and known nxdbmgr upgrade is working and netxmsd is running again.