Avatar

Upgrade Failed — 2.4.24 to 20240729.1 (Development)

by Auge ⌂, Saturday, August 10, 2024, 12:04 (37 days ago) @ Vinayy

Hello

I tried to upgrade from 2.4.24 to 20240729.1 in Wampserver but it is not getting upgraded and I am repeatedly getting errors.

Using version: 2.4.24
phpMyAdmin: 5.2.1
MySQL: 8.3.0
PHP ver: 7.3.33
Database: utf8mb4_unicode_ci
Database: over 240 MB

Are you sure about the versions? Especially the version 8.3.0 of MySQL looks a bit odd (to me) in combination with the (fairly old) PHP version 7.3.33.

I have uploaded the screenshot, which is all on one page, they are not separate images. Please check and advise.

[image]

The first four messages are about the names of the tables, which was introduced with version 20220508.1 (2.5.0). The query, starting in version 20240729.1 in line #162, reads all table names and engines from the system data if the table engine is not InnoDB. In my tests not existing table names was not relevant but reading your report, I became aware of the cause. The error occures not in the query but in the PHP code that generates the query. At this time of code execution the namely table names are not known if one wants to upgrade from a 2.4.x-version. The table names are defined after this point in the lines #251 to #254.

I performed several tests with upgrading from versions 2.4.19, 2.4.20 and 2.4.24 and never ran into this specific error. Obviously the PHP-code generates empty strings instead throwing an error on my webserver. It seems, that PHP on your webserver is configured more strict with errors end their reporting. Anyway, I will code a fix for it by collecting the really existing table names with a join of $db_settings elements whose names ends with "_table" and inserting the result into the query.

The fifth error report in your screenshot was thrown in line #468, which is about changing the charset of the table mlf2_entries_cache. It is about exceeding the maximal execution time of three seconds for a script. The permitted three seconds of execution time may already have been used up in previous steps, except that they were finally exceeded in line #468. It's possible, that the fix for the first four errors will shorten the execution time enough to keep it under three seconds, it's also possible, it don't. We will see.

For comparision: On my webspace I run a subdomain specifically for testing purposes, where PHP runs in version 7.4. with a max_execution_time of 30 seconds (ten times your value) with a memory limit of 256MB. The values are the defaults, provided by my hosting company and were not set by me.

Tschö, Auge

--
Trenne niemals Müll, denn er hat nur eine Silbe!


Complete thread:

 RSS Feed of thread