Jump to content

Failed to upgrade from v4.5.4.2 to 4.7.14


Go to solution Solved by teraßyte,

Recommended Posts

Posted

I have self hosted Invision Community v4.5.4.2. Now, I'm trying to upgrade to the latest version, got these messages in my dashboard:
Could contain: Page, Text, File

 

I realize that my server configuration is outdated but it meets requirements of currently installed version. So, when I tried to upgrade initially I got this message:
Could contain: Text, Paper

Then I decided to clone my server with installed forum to be able to play around with php and db versions, but after I changed php version to 8.0 the forum completely stopped responding with 504 error, probably because of issues with back compatibility of php 7.1 and php 8.0. I downgraded version to php 7.4 and at least I was able to log in to admin area, then without closing the browser tab I have upgraded php version to 8.0 and finally was able to initiate upgrade but got stuck on this step:
Could contain: Text, File

Could contain: Page, Text

I have tried both, automatically and manually run these queries, then I have checked a table in database and it definitely has updated index:
Could contain: Page, Text

 

But upgrade wizard stuck on this step and keep "saying" that there is an issues with database and keep showing window with same queries not letting me jump to the next step.

 

I would greatly appreciate any assistance or suggestions if you've encountered similar issues before. Thank you in advance for your help!

Posted
34 minutes ago, fcomby4 said:

During Upgrade getting this error, and it's not clear which exactly table and column should be fixed:
Could contain: File, Webpage, Page, Text

Are all your tables INNODB and have the row type set to dynamic?

Posted

Yep, you are absolutely right, my tables had Redundant/Compact row type, generating and executing these queries helped:
 

SELECT CONCAT(
  'ALTER TABLE `', TABLE_SCHEMA, '`.`', TABLE_NAME, '` ',
  'ROW_FORMAT=DYNAMIC;'
) AS _alter
FROM INFORMATION_SCHEMA.TABLES
WHERE ENGINE='InnoDB' AND ROW_FORMAT <> 'DYNAMIC' AND TABLE_NAME NOT IN('SYS_DATAFILES', 'SYS_FOREIGN', 'SYS_FOREIGN_COLS', 'SYS_TABLESPACES', 'SYS_VIRTUAL', 'SYS_ZIP_DICT', 'SYS_ZIP_DICT_COLS');

Thank you @Marc Stridgen and @teraßyte !

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...