Question

Centreon upgrade error


Badge +3

Hello,

I recently wanted Migré my Centeron which was in 3.8 in version 21.10 ,

I therefore followed to the letter while adjusting certain information related to my environment / infrastructure.
 
So I got to the point where you have to force version editing via the web interface.
so I followed and copied the installation directory where it is needed and started.

so I found myself faced with an error telling myself that the database already existed. I told myself that he just had trouble recovering and detected that it is a version mount so I put in the url instead of install.php mit upgrade.php and its launched until that I am found on the error

"Update-DB-20.04.0-beta.1.sql Line 22: SQLSTATE[42,000]: Syntax error or access violation: 1118 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 "


 where I made the next change

Set followings on your my.cnf file and restart mysql server. : `innodb_strict_mode = 0` 

so I added the line and reboot the mysql
and refresh the upgrade page.

 

and this is where I found myself with this error that cannot be circumvented or even not resolved by my care.

`19.10.19 to 20.04.0-beta.1 好 UPGRADE - 20.04.0-beta.1: Unable to replace engine's broker modules configuration from xml to json format - While trying to insert in 'cb_type_field_relation' table new value`

can you tell me how I can do it to get the situation out ?


11 replies

Userlevel 5
Badge +16

Hello.
It’s seems to be issue with the format table:

https://mariadb.com/kb/en/troubleshooting-row-size-too-large-errors-with-innodb/

Could you try this request on your mysql database:

ALTER TABLE centreon.cb_type_field_relation ROW_FORMAT=DYNAMIC;

 

Badge +3

Hello, nothing worked

Userlevel 5
Badge +16

Still the same error ?

Badge +3

 

Userlevel 5
Badge +16

God damnit.
Seems to be that request that know some trouble:
 

INSERT INTO `cb_type_field_relation` (
`cb_type_id`,
`cb_field_id`,
`is_required`,
`order_display`,
`jshook_name`,
`jshook_arguments`
)
VALUES (
(SELECT `cb_type_id` FROM `cb_type` WHERE `type_shortname` = 'sql'),
(SELECT `cb_field_id` FROM `cb_field` WHERE `fieldname` = 'connections_count'),
0,
7,
'countConnections',
'{\"target\": \"connections_count\"}'
),
(
(SELECT `cb_type_id` FROM `cb_type` WHERE `type_shortname` = 'storage'),
(SELECT `cb_field_id` FROM `cb_field` WHERE `fieldname` = 'connections_count'),
0,
7,
'countConnections',
'{\"target\": \"connections_count\"}'
)

If you play directly this command on your database centreon ? What is the return ?

Badge +3

ERROR 1062 (23000): Duplicate entry '16-75' for key 'PRIMARY'

Badge +3

 

Badge +3

hello, is there a solution to my problem ?

Userlevel 5
Badge +16

Problem solved by bypass the request that blocked the upgrade process.
for a reason that I ignore the xml have been already convert to json which caused this issue.

Badge +5

Problem solved by bypass the request that blocked the upgrade process.
for a reason that I ignore the xml have been already convert to json which caused this issue.

Hello Kriko, how do you bypass the blocking request?

Badge +5

I just finished my own upgrade from 18.10 to 21.10; apparently my issue was that I run the upgrade of the database server before running the upgrade of the Central server.

In other words, I wasn’t strictly following the documentation.

Reply