Bug #103562 Upgrade from MYSQL 5.7.17 to 8.0.24 never end
Submitted: 3 May 2021 20:01 Modified: 6 May 2021 9:10
Reporter: Vieng Nong LO Email Updates:
Status: Duplicate Impact on me:
None 
Category:MySQL Server: Installing Severity:S2 (Serious)
Version:8.0.24 OS:Debian (9.6)
Assigned to: CPU Architecture:x86 (x86_64)

[3 May 2021 20:01] Vieng Nong LO
Description:
Upgrade from MYSQL 5.7.17 to 8.0.24 never end, while this problem doesn't occur with upgrade to 8.0.23.
Warning occur with open files limit exceeded, witch does not occu with upgrade to 8.0.23.

Even with maximizing the file, cache and table limit, warning still occur, and even after 2 or more days, upgrade doesn't end.

2021-05-02T11:59:39.159861Z 0 [Warning] [MY-000081] [Server] option 'table_open_cache': unsigned value 3000000 adjusted to 524288.
2021-05-02T11:59:39.159874Z 0 [Warning] [MY-000081] [Server] option 'table_definition_cache': unsigned value 1500000 adjusted to 524288.
2021-05-02T11:59:39.160319Z 0 [Warning] [MY-010140] [Server] Could not increase number of max_open_files to more than 1048576 (request: 90000000)
2021-05-02T11:59:39.160330Z 0 [Warning] [MY-010142] [Server] Changed limits: table_open_cache: 523783 (requested 524288)
2021-05-02T11:59:39.287439Z 0 [System] [MY-010116] [Server] /usr/sbin/mysqld (mysqld 8.0.24) starting as process 5606
2021-05-02T11:59:39.462221Z 0 [Warning] [MY-012364] [InnoDB] innodb_open_files should not be greater than the open_files_limit.
2021-05-02T11:59:39.463781Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
2021-05-02T12:01:14.507814Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.
2021-05-02T12:22:48.627824Z 0 [Warning] [MY-012152] [InnoDB] Open files 523790 exceeds the limit 523783
2021-05-02T12:22:48.650737Z 0 [Warning] [MY-012152] [InnoDB] Open files 523790 exceeds the limit 523783
2021-05-02T12:22:48.662500Z 0 [Warning] [MY-012152] [InnoDB] Open files 523790 exceeds the limit 523783

How to repeat:
Upgrade mysql 5.7 datas to 8.0.24.
[5 May 2021 17:46] MySQL Verification Team
Thank you for the bug report. I couldn't repeat upgrade from 5.7 to 8.0.24:

miguel@pochita:~$ sudo dpkg-reconfigure mysql-apt-config
Warning: apt-key should not be used in scripts (called from postinst maintainerscript of the package mysql-apt-config)
OK

miguel@pochita:~$ sudo apt update
Get:1 http://security.debian.org/debian-security buster/updates InRelease [65.4 kB]
Hit:2 http://mirror.unesp.br/debian buster InRelease                                                        
Get:3 http://mirror.unesp.br/debian buster-updates InRelease [51.9 kB]
Hit:4 http://repo.mysql.com/apt/debian buster InRelease                             
Get:5 http://security.debian.org/debian-security buster/updates/main Sources [183 kB]
Get:6 http://security.debian.org/debian-security buster/updates/main amd64 Packages [285 kB]
Get:7 http://repo.mysql.com/apt/debian buster/mysql-8.0 Sources [949 B]
Get:8 http://repo.mysql.com/apt/debian buster/mysql-8.0 amd64 Packages [6,004 B]
Fetched 592 kB in 2s (337 kB/s)
Reading package lists... Done
Building dependency tree       
Reading state information... Done
3 packages can be upgraded. Run 'apt list --upgradable' to see them.

miguel@pochita:~$ sudo apt upgrade
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Calculating upgrade... Done
The following NEW packages will be installed:
  mecab-ipadic mecab-ipadic-utf8 mecab-utils mysql-community-client-core mysql-community-client-plugins
  mysql-community-server-core
The following packages will be upgraded:
  mysql-client mysql-community-client mysql-community-server
3 upgraded, 6 newly installed, 0 to remove and 0 not upgraded.
Need to get 34.6 MB of archives.
After this operation, 14.7 MB of additional disk space will be used.
Do you want to continue? [Y/n] 
Get:1 http://mirror.unesp.br/debian buster/main amd64 mecab-utils amd64 0.996-6 [7,700 B]
<cut>
Preparing to unpack .../2-mysql-client_8.0.24-1debian10_amd64.deb ...
Unpacking mysql-client (8.0.24-1debian10) over (5.7.34-1debian10) ...
Preparing to unpack .../3-mysql-community-client_8.0.24-1debian10_amd64.deb ...
Unpacking mysql-community-client (8.0.24-1debian10) over (5.7.34-1debian10) ...
dpkg: warning: unable to delete old directory '/usr/share/mysql/charsets': Directory not empty
dpkg: warning: unable to delete old directory '/usr/share/mysql': Directory not empty
Selecting previously unselected package mysql-community-client-core.
Preparing to unpack .../4-mysql-community-client-core_8.0.24-1debian10_amd64.deb ...
Unpacking mysql-community-client-core (8.0.24-1debian10) ...
Selecting previously unselected package mysql-community-server-core.
Preparing to unpack .../5-mysql-community-server-core_8.0.24-1debian10_amd64.deb ...
Unpacking mysql-community-server-core (8.0.24-1debian10) ...
Selecting previously unselected package mecab-utils.
Preparing to unpack .../6-mecab-utils_0.996-6_amd64.deb ...
Unpacking mecab-utils (0.996-6) ...
Selecting previously unselected package mecab-ipadic.
Preparing to unpack .../7-mecab-ipadic_2.7.0-20070801+main-2.1_all.deb ...
Unpacking mecab-ipadic (2.7.0-20070801+main-2.1) ...
Selecting previously unselected package mecab-ipadic-utf8.
Preparing to unpack .../8-mecab-ipadic-utf8_2.7.0-20070801+main-2.1_all.deb ...
Unpacking mecab-ipadic-utf8 (2.7.0-20070801+main-2.1) ...
Setting up mysql-community-server-core (8.0.24-1debian10) ...
Setting up mecab-utils (0.996-6) ...
Setting up mysql-community-client-plugins (8.0.24-1debian10) ...
Setting up mecab-ipadic (2.7.0-20070801+main-2.1) ...
Compiling IPA dictionary for Mecab.  This takes long time...
reading /usr/share/mecab/dic/ipadic/unk.def ... 40
emitting double-array: 100% |###########################################| 
/usr/share/mecab/dic/ipadic/model.def is not found. skipped.
reading /usr/share/mecab/dic/ipadic/Postp-col.csv ... 91
<CUT>
reading /usr/share/mecab/dic/ipadic/Noun.proper.csv ... 27328
emitting double-array: 100% |###########################################| 
reading /usr/share/mecab/dic/ipadic/matrix.def ... 1316x1316
emitting matrix      : 100% |###########################################| 

done!
update-alternatives: using /var/lib/mecab/dic/ipadic to provide /var/lib/mecab/dic/debian (mecab-dictionary) in auto mode
Setting up mysql-community-client-core (8.0.24-1debian10) ...
Setting up mecab-ipadic-utf8 (2.7.0-20070801+main-2.1) ...
Compiling IPA dictionary for Mecab.  This takes long time...
reading /usr/share/mecab/dic/ipadic/unk.def ... 40
emitting double-array: 100% |###########################################| 
/usr/share/mecab/dic/ipadic/model.def is not found. skipped.
reading /usr/share/mecab/dic/ipadic/Postp-col.csv ... 91
<CUT>
reading /usr/share/mecab/dic/ipadic/Postp.csv ... 146
reading /usr/share/mecab/dic/ipadic/Noun.proper.csv ... 27328
emitting double-array: 100% |###########################################| 
reading /usr/share/mecab/dic/ipadic/matrix.def ... 1316x1316
emitting matrix      : 100% |###########################################| 

done!
update-alternatives: using /var/lib/mecab/dic/ipadic-utf8 to provide /var/lib/mecab/dic/debian (mecab-dictionary) in auto mode
Setting up mysql-community-client (8.0.24-1debian10) ...
Setting up mysql-client (8.0.24-1debian10) ...
Setting up mysql-community-server (8.0.24-1debian10) ...
Installing new version of config file /etc/mysql/mysql.cnf ...
Installing new version of config file /etc/mysql/mysql.conf.d/mysqld.cnf ...
[mysql.conf:23] Line references path below legacy directory /var/run/, updating /var/run/mysqld → /run/mysqld; please update the tmpfiles.d/ drop-in file accordingly.
[mysql.conf:23] Line references path below legacy directory /var/run/, updating /var/run/mysqld → /run/mysqld; please update the tmpfiles.d/ drop-in file accordingly.
[mysql.conf:23] Line references path below legacy directory /var/run/, updating /var/run/mysqld → /run/mysqld; please update the tmpfiles.d/ drop-in file accordingly.
Processing triggers for man-db (2.8.5-2) ...
Processing triggers for libc-bin (2.28-10) ...

miguel@pochita:~$ mysql -uroot -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 11
Server version: 8.0.24 MySQL Community Server - GPL

Copyright (c) 2000, 2021, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

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

mysql>
[5 May 2021 18:49] Vieng Nong LO
To reach the limit, i think you should have enough file to convert.
In my case, i have 1045314 ibd files, 1055067 frm files, 126134 TRG files, 275203 TRN files, witch is greater than 523783 shown in error log.

I also think that it is cause by changes in open file count (bug #32634620, #32541241).
[5 May 2021 20:30] MySQL Verification Team
I am assignment for co-worker that is handling a bug related to open file, so he could check it too. Thanks for the feedback.
[6 May 2021 9:10] MySQL Verification Team
Duplicate of bug #103563