[MDEV-26056] crc32vpm detection on Power7 incorrect (MariaDB-10.3) Created: 2021-06-30  Updated: 2023-09-19

Status: Open
Project: MariaDB Server
Component/s: Server, Upgrades
Affects Version/s: 10.3.30
Fix Version/s: 10.3

Type: Bug Priority: Major
Reporter: Rodrigo Camargo dos Santos Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: crash
Environment:

$ uname -a
Linux srv-001378 3.10.0-1160.31.1.el7.ppc64 #1 SMP Wed Jun 9 16:39:35 UTC 2021 ppc64 ppc64 ppc64 GNU/Linux

$ lscpu
Architecture: ppc64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Big Endian
CPU(s): 56
On-line CPU(s) list: 0-55
Thread(s) per core: 4
Core(s) per socket: 1
Socket(s): 14
NUMA node(s): 4
Model: 2.1 (pvr 004a 0201)
Model name: POWER7 (architected), altivec supported
Hypervisor vendor: pHyp
Virtualization type: para
L1d cache: 32K
L1i cache: 32K
NUMA node0 CPU(s): 24-27,40-43
NUMA node1 CPU(s): 28-31,44-47
NUMA node2 CPU(s): 32-35,48-51
NUMA node3 CPU(s): 0-23,36-39,52-55

$ lsblk -a
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 350G 0 disk
├─sda1 8:1 0 4M 0 part
├─sda2 8:2 0 1G 0 part /boot
└─sda3 8:3 0 349G 0 part
├─centos-root 253:0 0 300G 0 lvm /
└─centos-swap 253:1 0 4G 0 lvm [SWAP]
sr0 11:0 1 1024M 0 rom
sr1 11:1 1 1024M 0 rom

$ free -lht
total used free shared buff/cache available
Mem: 107G 1,2G 105G 38M 1,3G 104G
Low: 107G 2,5G 105G
High: 0B 0B 0B
Swap: 4,0G 0B 4,0G
Total: 111G 1,2G 109G


Attachments: File mariadb10.3.30.err     Text File script-upgrade-mariadb10.2-to-mariadb10.3.txt    
Issue Links:
Duplicate
duplicates MDEV-26058 Instalação MariaDB-Server 10.4–10.6 Closed
Relates
relates to MDEV-26072 Instalação MariaDB-Server 10.6 Closed

 Description   

Executei os procedimentos do arquivo `script-upgrade-mariadb10.2-to-mariadb10.3.txt`, mas no momento do comando `sudo systemctl start mariadb`, ele retornou o seguinte erro, o conteúdo está em `mariadb10.3.30.err`.



 Comments   
Comment by Marko Mäkelä [ 2021-06-30 ]

mariadb10.3.30.err:

210630 11:16:56 [ERROR] mysqld got signal 4 ;

That seems to be SIGILL. I would guess that the SIMD accelerated CRC-32C code (vpmsum) could be the culprit?

rodrigo, can you please provide the output of the following:

cat /proc/cpuinfo

Comment by Rodrigo Camargo dos Santos [ 2021-06-30 ]

$ sudo cat /proc/cpuinfo
processor : 0
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 1
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 2
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 3
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 4
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 5
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 6
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 7
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 8
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 9
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 10
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 11
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 12
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 13
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 14
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 15
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 16
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 17
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 18
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 19
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 20
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 21
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 22
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 23
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 24
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 25
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 26
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 27
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 28
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 29
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 30
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 31
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 32
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 33
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 34
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 35
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 36
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 37
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 38
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 39
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 40
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 41
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 42
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 43
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 44
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 45
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 46
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 47
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 48
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 49
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 50
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 51
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 52
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 53
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 54
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

processor : 55
cpu : POWER7 (architected), altivec supported
clock : 3612.000000MHz
revision : 2.1 (pvr 004a 0201)

timebase : 512000000
platform : pSeries
model : IBM,7895-43X
machine : CHRP IBM,7895-43X

Comment by Rodrigo Camargo dos Santos [ 2021-11-12 ]

Do you have any predictions for the correction?

Comment by Daniel Black [ 2021-11-16 ]

MariaDB-10.2 enabled vpmsum crc32 on compile time processor matching ppc64le. So this used a generic implementation on P7 being a ppc64 (be) only.

MariaDB-10.3 relaxes the restriction to ppc64 using the vpmsum on P7. The rational was that P8+ could also run in a BE mode and the vpmsum would work. There was some assumption that Power7 wasn't supported.

MariaDB-10.5 in a bit of a re-org, does actually to a proper runtime detection of PPC_FEATURE2_VEC_CRYPTO, (from https://github.com/antonblanchard/crc32-vpmsum#run-time-detection), which AFAIK was Power8.

The runtime detection doesn't look for VSX, given the compile flag of the crc32vpmsum uses VSX, which seems the be in P7 (looking at https://cdn.openpowerfoundation.org/wp-content/uploads/2021/04/leabi-20201201.pdf), so its probably ok.

Is MariaDB-10.5+ correctly working on Power7? If not can you provide {{LD_SHOW_AUXV=1 /bin/true }} (need AT_HWCAP/AT_HWCAP2).

Introducing a runtime detection into MariaDB-10.3/10.4 is possible, however its rather involved, and I don't want to do that level of changes on a stable versions, especially if 10.5+ is working (or if can make it work - since its got a runtime mechanism ready to be altered).

Comment by Rodrigo Camargo dos Santos [ 2021-11-16 ]

Hi Daniel Black,

I did a clean installation of MariaDB 10.5.13 as you recommended.

I add the repository as this way:

cat <<EOF | sudo tee /etc/yum.repos.d/MariaDB.repo
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.5/centos7-ppc64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
EOF

And I executed the following commands:

sudo yum install -y MariaDB-server galera-4 MariaDB-client MariaDB-shared MariaDB-backup MariaDB-common rsync

And I got this response:

[root@srv-001379 ~]# sudo yum install MariaDB-server galera-4 MariaDB-client MariaDB-shared MariaDB-backup MariaDB-common rsync
Plugins carregados: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirror.ufro.cl
 * extras: mirror.ufro.cl
 * updates: mirror.ufro.cl
O pacote rsync-3.1.2-10.el7.ppc64 já está instalado em sua última versão
Resolvendo dependências
--> Executando verificação da transação
---> O pacote MariaDB-backup.ppc64 0:10.5.13-1.el7.centos será instalado
--> Processando dependência: libpcre2-8.so.0()(64bit) para o pacote: MariaDB-backup-10.5.13-1.el7.centos.ppc64
---> O pacote MariaDB-client.ppc64 0:10.5.13-1.el7.centos será instalado
--> Processando dependência: perl(DBI) para o pacote: MariaDB-client-10.5.13-1.el7.centos.ppc64
---> O pacote MariaDB-common.ppc64 0:10.5.13-1.el7.centos será instalado
--> Processando dependência: MariaDB-compat para o pacote: MariaDB-common-10.5.13-1.el7.centos.ppc64
---> O pacote MariaDB-server.ppc64 0:10.5.13-1.el7.centos será instalado
--> Processando dependência: perl(Data::Dumper) para o pacote: MariaDB-server-10.5.13-1.el7.centos.ppc64
--> Processando dependência: lsof para o pacote: MariaDB-server-10.5.13-1.el7.centos.ppc64
---> O pacote MariaDB-shared.ppc64 0:10.5.13-1.el7.centos será instalado
---> O pacote galera-4.ppc64 0:26.4.9-1.el7.centos será instalado
--> Processando dependência: socat para o pacote: galera-4-26.4.9-1.el7.centos.ppc64
--> Processando dependência: libboost_program_options-mt.so.1.53.0()(64bit) para o pacote: galera-4-26.4.9-1.el7.centos.ppc64
--> Executando verificação da transação
---> O pacote MariaDB-compat.ppc64 0:10.5.13-1.el7.centos será instalado
---> O pacote boost-program-options.ppc64 0:1.53.0-28.el7 será instalado
---> O pacote lsof.ppc64 0:4.87-6.el7 será instalado
---> O pacote pcre2.ppc64 0:10.23-2.el7 será instalado
---> O pacote perl-DBI.ppc64 0:1.627-4.el7 será instalado
--> Processando dependência: perl(RPC::PlServer) >= 0.2001 para o pacote: perl-DBI-1.627-4.el7.ppc64
--> Processando dependência: perl(RPC::PlClient) >= 0.2000 para o pacote: perl-DBI-1.627-4.el7.ppc64
---> O pacote perl-Data-Dumper.ppc64 0:2.145-3.el7 será instalado
---> O pacote socat.ppc64 0:1.7.3.2-2.el7 será instalado
--> Executando verificação da transação
---> O pacote perl-PlRPC.noarch 0:0.2020-14.el7 será instalado
--> Processando dependência: perl(Net::Daemon) >= 0.13 para o pacote: perl-PlRPC-0.2020-14.el7.noarch
--> Processando dependência: perl(Net::Daemon::Test) para o pacote: perl-PlRPC-0.2020-14.el7.noarch
--> Processando dependência: perl(Net::Daemon::Log) para o pacote: perl-PlRPC-0.2020-14.el7.noarch
--> Processando dependência: perl(Compress::Zlib) para o pacote: perl-PlRPC-0.2020-14.el7.noarch
--> Executando verificação da transação
---> O pacote perl-IO-Compress.noarch 0:2.061-2.el7 será instalado
--> Processando dependência: perl(Compress::Raw::Zlib) >= 2.061 para o pacote: perl-IO-Compress-2.061-2.el7.noarch
--> Processando dependência: perl(Compress::Raw::Bzip2) >= 2.061 para o pacote: perl-IO-Compress-2.061-2.el7.noarch
---> O pacote perl-Net-Daemon.noarch 0:0.48-5.el7 será instalado
--> Executando verificação da transação
---> O pacote perl-Compress-Raw-Bzip2.ppc64 0:2.061-3.el7 será instalado
---> O pacote perl-Compress-Raw-Zlib.ppc64 1:2.061-4.el7 será instalado
--> Resolução de dependências finalizada
 
Dependências resolvidas
 
==============================================================================================================================================================
 Package                                       Arq.                         Versão                                        Repo                           Tam.
==============================================================================================================================================================
Instalando:
 MariaDB-backup                                ppc64                        10.5.13-1.el7.centos                          mariadb                       6.9 M
 MariaDB-client                                ppc64                        10.5.13-1.el7.centos                          mariadb                        13 M
 MariaDB-common                                ppc64                        10.5.13-1.el7.centos                          mariadb                        84 k
 MariaDB-server                                ppc64                        10.5.13-1.el7.centos                          mariadb                        25 M
 MariaDB-shared                                ppc64                        10.5.13-1.el7.centos                          mariadb                       104 k
 galera-4                                      ppc64                        26.4.9-1.el7.centos                           mariadb                       9.4 M
Instalando para as dependências:
 MariaDB-compat                                ppc64                        10.5.13-1.el7.centos                          mariadb                       1.6 M
 boost-program-options                         ppc64                        1.53.0-28.el7                                 base                          150 k
 lsof                                          ppc64                        4.87-6.el7                                    base                          330 k
 pcre2                                         ppc64                        10.23-2.el7                                   base                          191 k
 perl-Compress-Raw-Bzip2                       ppc64                        2.061-3.el7                                   base                           32 k
 perl-Compress-Raw-Zlib                        ppc64                        1:2.061-4.el7                                 base                           58 k
 perl-DBI                                      ppc64                        1.627-4.el7                                   base                          801 k
 perl-Data-Dumper                              ppc64                        2.145-3.el7                                   base                           48 k
 perl-IO-Compress                              noarch                       2.061-2.el7                                   base                          260 k
 perl-Net-Daemon                               noarch                       0.48-5.el7                                    base                           51 k
 perl-PlRPC                                    noarch                       0.2020-14.el7                                 base                           36 k
 socat                                         ppc64                        1.7.3.2-2.el7                                 base                          292 k
 
Resumo da transação
==============================================================================================================================================================
Instalar  6 Packages (+12 Dependent packages)
 
Tamanho total do download: 58 M
Tamanho depois de instalado: 267 M
Is this ok [y/d/N]: y
Downloading packages:
(1/18): MariaDB-client-10.5.13-1.el7.centos.ppc64.rpm                                                                                                                               |  13 MB  00:00:11     
(2/18): MariaDB-common-10.5.13-1.el7.centos.ppc64.rpm                                                                                                                               |  84 kB  00:00:00     
(3/18): MariaDB-compat-10.5.13-1.el7.centos.ppc64.rpm                                                                                                                               | 1.6 MB  00:00:01     
(4/18): MariaDB-backup-10.5.13-1.el7.centos.ppc64.rpm                                                                                                                               | 6.9 MB  00:00:14     
(5/18): MariaDB-shared-10.5.13-1.el7.centos.ppc64.rpm                                                                                                                               | 104 kB  00:00:00     
(6/18): boost-program-options-1.53.0-28.el7.ppc64.rpm                                                                                                                               | 150 kB  00:00:00     
(7/18): perl-Compress-Raw-Bzip2-2.061-3.el7.ppc64.rpm                                                                                                                               |  32 kB  00:00:00     
(8/18): perl-Compress-Raw-Zlib-2.061-4.el7.ppc64.rpm                                                                                                                                |  58 kB  00:00:00     
(9/18): lsof-4.87-6.el7.ppc64.rpm                                                                                                                                                   | 330 kB  00:00:00     
(10/18): perl-Data-Dumper-2.145-3.el7.ppc64.rpm                                                                                                                                     |  48 kB  00:00:00     
(11/18): perl-IO-Compress-2.061-2.el7.noarch.rpm                                                                                                                                    | 260 kB  00:00:00     
(12/18): perl-DBI-1.627-4.el7.ppc64.rpm                                                                                                                                             | 801 kB  00:00:00     
(13/18): perl-Net-Daemon-0.48-5.el7.noarch.rpm                                                                                                                                      |  51 kB  00:00:00     
(14/18): perl-PlRPC-0.2020-14.el7.noarch.rpm                                                                                                                                        |  36 kB  00:00:00     
(15/18): socat-1.7.3.2-2.el7.ppc64.rpm                                                                                                                                              | 292 kB  00:00:00     
(16/18): pcre2-10.23-2.el7.ppc64.rpm                                                                                                                                                | 191 kB  00:00:02     
(17/18): galera-4-26.4.9-1.el7.centos.ppc64.rpm                                                                                                                                     | 9.4 MB  00:00:07     
(18/18): MariaDB-server-10.5.13-1.el7.centos.ppc64.rpm                                                                                                                              |  25 MB  00:00:18     
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Total                                                                                                                                                                      1.8 MB/s |  58 MB  00:00:31     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Instalando   : pcre2-10.23-2.el7.ppc64                                                                                                                                                              1/18 
  Instalando   : perl-Data-Dumper-2.145-3.el7.ppc64                                                                                                                                                   2/18 
  Instalando   : lsof-4.87-6.el7.ppc64                                                                                                                                                                3/18 
  Instalando   : MariaDB-common-10.5.13-1.el7.centos.ppc64                                                                                                                                            4/18 
  Instalando   : MariaDB-compat-10.5.13-1.el7.centos.ppc64                                                                                                                                            5/18 
  Instalando   : boost-program-options-1.53.0-28.el7.ppc64                                                                                                                                            6/18 
  Instalando   : perl-Net-Daemon-0.48-5.el7.noarch                                                                                                                                                    7/18 
  Instalando   : perl-Compress-Raw-Bzip2-2.061-3.el7.ppc64                                                                                                                                            8/18 
  Instalando   : socat-1.7.3.2-2.el7.ppc64                                                                                                                                                            9/18 
  Instalando   : galera-4-26.4.9-1.el7.centos.ppc64                                                                                                                                                  10/18 
  Instalando   : 1:perl-Compress-Raw-Zlib-2.061-4.el7.ppc64                                                                                                                                          11/18 
  Instalando   : perl-IO-Compress-2.061-2.el7.noarch                                                                                                                                                 12/18 
  Instalando   : perl-PlRPC-0.2020-14.el7.noarch                                                                                                                                                     13/18 
  Instalando   : perl-DBI-1.627-4.el7.ppc64                                                                                                                                                          14/18 
  Instalando   : MariaDB-client-10.5.13-1.el7.centos.ppc64                                                                                                                                           15/18 
  Instalando   : MariaDB-server-10.5.13-1.el7.centos.ppc64                                                                                                                                           16/18 
211116 15:05:56 [ERROR] mysqld got signal 4 ;
This could be because you hit a bug. It is also possible that this binary
or one of the libraries it was linked against is corrupt, improperly built,
or misconfigured. This error can also be caused by malfunctioning hardware.
 
To report this bug, see https://mariadb.com/kb/en/reporting-bugs
 
We will try our best to scrape up some info that will hopefully help
diagnose the problem, but since we have already crashed, 
something is definitely wrong and this may fail.
 
Server version: 10.5.13-MariaDB
key_buffer_size=134217728
read_buffer_size=131072
max_used_connections=0
max_threads=153
thread_count=1
It is possible that mysqld could use up to 
key_buffer_size + (read_buffer_size + sort_buffer_size)*max_threads = 467872 K  bytes of memory
Hope that's ok; if not, decrease some variables in the equation.
 
Thread pointer: 0x1001b300cc8
Attempting backtrace. You can use the following information to find out
where mysqld died. If you see no messages after this, something went
terribly wrong...
stack_bottom = 0x3fffd57cdcd0 thread_stack 0x49000
??:0(my_print_stacktrace)[0x1301332ec]
??:0(handle_fatal_signal)[0x12f9be244]
addr2line: '': No such file
[0x3fffae200478]
[0x0]
[0x3fffd57c8c90]
??:0(ha_maria::max_supported_key_part_length() const)[0x12fc3aeb0]
??:0(ha_maria::max_supported_key_part_length() const)[0x12fc3bf38]
??:0(flush_pagecache_blocks_with_filter)[0x12fc416c8]
??:0(_ma_state_info_write)[0x12fc59c14]
??:0(flush_pagecache_blocks_with_filter)[0x12fc4e7dc]
??:0(ha_maria::end_bulk_insert())[0x12fc1fe94]
??:0(handler::ha_end_bulk_insert())[0x12f9cb1fc]
??:0(select_insert::prepare_eof())[0x12f6e5a84]
??:0(select_insert::send_eof())[0x12f6e5d00]
??:0(JOIN::exec_inner())[0x12f7984b0]
??:0(JOIN::exec())[0x12f798884]
??:0(mysql_select(THD*, TABLE_LIST*, List<Item>&, Item*, unsigned int, st_order*, st_order*, Item*, st_order*, unsigned long long, select_result*, st_select_lex_unit*, st_select_lex*))[0x12f796728]
??:0(handle_select(THD*, LEX*, select_result*, unsigned long))[0x12f797004]
??:0(mysql_execute_command(THD*))[0x12f72d55c]
??:0(mysql_parse(THD*, char*, unsigned int, Parser_state*, bool, bool))[0x12f72e07c]
??:0(bootstrap(st_mysql_file*))[0x12f72e4b4]
??:0(mysqld_main(int, char**))[0x12f6238bc]
??:0(main)[0x12f5d30e8]
libc-start.c:0(generic_start_main.isra.0)[0x3fffad717cec]
??:0(__libc_start_main)[0x3fffad717ef4]
 
Trying to get some variables.
Some pointers may be invalid and cause the dump to abort.
Query (0x1001bd3e270): INSERT INTO global_priv SELECT * FROM tmp_user_sys WHERE 0 <> @need_sys_user_creation;
 
Connection ID (thread ID): 1
Status: NOT_KILLED
 
Optimizer switch: index_merge=on,index_merge_union=on,index_merge_sort_union=on,index_merge_intersection=on,index_merge_sort_intersection=off,engine_condition_pushdown=off,index_condition_pushdown=on,derived_merge=on,derived_with_keys=on,firstmatch=on,loosescan=on,materialization=on,in_to_exists=on,semijoin=on,partial_match_rowid_merge=on,partial_match_table_scan=on,subquery_cache=on,mrr=off,mrr_cost_based=off,mrr_sort_keys=off,outer_join_with_cache=on,semijoin_with_cache=on,join_cache_incremental=on,join_cache_hashed=on,join_cache_bka=on,optimize_join_buffer_size=on,table_elimination=on,extended_keys=on,exists_to_in=on,orderby_uses_equalities=on,condition_pushdown_for_derived=on,split_materialized=on,condition_pushdown_for_subquery=on,rowid_filter=on,condition_pushdown_from_having=on,not_null_range_scan=off
 
The manual page at https://mariadb.com/kb/en/how-to-produce-a-full-stack-trace-for-mysqld/ contains
information that should help you find out what is causing the crash.
Writing a core file...
Working directory at /var/lib/mysql
Resource Limits:
Limit                     Soft Limit           Hard Limit           Units     
Max cpu time              unlimited            unlimited            seconds   
Max file size             unlimited            unlimited            bytes     
Max data size             unlimited            unlimited            bytes     
Max stack size            8388608              unlimited            bytes     
Max core file size        0                    unlimited            bytes     
Max resident set          unlimited            unlimited            bytes     
Max processes             441365               441365               processes 
Max open files            32238                32238                files     
Max locked memory         65536                65536                bytes     
Max address space         unlimited            unlimited            bytes     
Max file locks            unlimited            unlimited            locks     
Max pending signals       441365               441365               signals   
Max msgqueue size         819200               819200               bytes     
Max nice priority         0                    0                    
Max realtime priority     0                    0                    
Max realtime timeout      unlimited            unlimited            us        
Core pattern: core
 
/usr/bin/mysql_install_db: line 524:  8978 Instrução ilegal      "$mysqld_bootstrap" $defaults $defaults_group_suffix "$mysqld_opt" --bootstrap $silent_startup "--basedir=$basedir" "--datadir=$ldata" --log-warnings=0 --enforce-storage-engine="" "--plugin-dir=${plugindir}" $args --max_allowed_packet=8M --net_buffer_length=16K
 
Installation of system tables failed!  Examine the logs in
/var/lib/mysql for more information.
 
The problem could be conflicting information in an external
my.cnf files. You can ignore these by doing:
 
    shell> /usr/bin/mysql_install_db --defaults-file=~/.my.cnf
 
You can also try to start the mysqld daemon with:
 
    shell> /usr/sbin/mysqld --skip-grant-tables --general-log &
 
and use the command line tool /usr/bin/mysql
to connect to the mysql database and look at the grant tables:
 
    shell> /usr/bin/mysql -u root mysql
    mysql> show tables;
 
Try 'mysqld --help' if you have problems with paths.  Using
--general-log gives you a log in /var/lib/mysql that may be helpful.
 
The latest information about mysql_install_db is available at
https://mariadb.com/kb/en/installing-system-tables-mysql_install_db
You can find the latest source at https://downloads.mariadb.org and
the maria-discuss email list at https://launchpad.net/~maria-discuss
 
Please check all of the above before submitting a bug report
at https://mariadb.org/jira
 
  Instalando   : MariaDB-shared-10.5.13-1.el7.centos.ppc64                                                                                                                                           17/18 
  Instalando   : MariaDB-backup-10.5.13-1.el7.centos.ppc64                                                                                                                                           18/18 
  Verifying    : MariaDB-server-10.5.13-1.el7.centos.ppc64                                                                                                                                            1/18 
  Verifying    : 1:perl-Compress-Raw-Zlib-2.061-4.el7.ppc64                                                                                                                                           2/18 
  Verifying    : MariaDB-client-10.5.13-1.el7.centos.ppc64                                                                                                                                            3/18 
  Verifying    : perl-DBI-1.627-4.el7.ppc64                                                                                                                                                           4/18 
  Verifying    : socat-1.7.3.2-2.el7.ppc64                                                                                                                                                            5/18 
  Verifying    : MariaDB-compat-10.5.13-1.el7.centos.ppc64                                                                                                                                            6/18 
  Verifying    : lsof-4.87-6.el7.ppc64                                                                                                                                                                7/18 
  Verifying    : perl-IO-Compress-2.061-2.el7.noarch                                                                                                                                                  8/18 
  Verifying    : pcre2-10.23-2.el7.ppc64                                                                                                                                                              9/18 
  Verifying    : perl-Compress-Raw-Bzip2-2.061-3.el7.ppc64                                                                                                                                           10/18 
  Verifying    : galera-4-26.4.9-1.el7.centos.ppc64                                                                                                                                                  11/18 
  Verifying    : MariaDB-shared-10.5.13-1.el7.centos.ppc64                                                                                                                                           12/18 
  Verifying    : MariaDB-backup-10.5.13-1.el7.centos.ppc64                                                                                                                                           13/18 
  Verifying    : perl-Net-Daemon-0.48-5.el7.noarch                                                                                                                                                   14/18 
  Verifying    : perl-Data-Dumper-2.145-3.el7.ppc64                                                                                                                                                  15/18 
  Verifying    : perl-PlRPC-0.2020-14.el7.noarch                                                                                                                                                     16/18 
  Verifying    : MariaDB-common-10.5.13-1.el7.centos.ppc64                                                                                                                                           17/18 
  Verifying    : boost-program-options-1.53.0-28.el7.ppc64                                                                                                                                           18/18 
 
Instalados:
  MariaDB-backup.ppc64 0:10.5.13-1.el7.centos       MariaDB-client.ppc64 0:10.5.13-1.el7.centos       MariaDB-common.ppc64 0:10.5.13-1.el7.centos       MariaDB-server.ppc64 0:10.5.13-1.el7.centos      
  MariaDB-shared.ppc64 0:10.5.13-1.el7.centos       galera-4.ppc64 0:26.4.9-1.el7.centos             
 
Dependência(s) instalada(s):
  MariaDB-compat.ppc64 0:10.5.13-1.el7.centos           boost-program-options.ppc64 0:1.53.0-28.el7           lsof.ppc64 0:4.87-6.el7                     pcre2.ppc64 0:10.23-2.el7                     
  perl-Compress-Raw-Bzip2.ppc64 0:2.061-3.el7           perl-Compress-Raw-Zlib.ppc64 1:2.061-4.el7            perl-DBI.ppc64 0:1.627-4.el7                perl-Data-Dumper.ppc64 0:2.145-3.el7          
  perl-IO-Compress.noarch 0:2.061-2.el7                 perl-Net-Daemon.noarch 0:0.48-5.el7                   perl-PlRPC.noarch 0:0.2020-14.el7           socat.ppc64 0:1.7.3.2-2.el7                   
 
Concluído!

How could you see, we got an error in this process.

Then I provided your command `LD_SHOW_AUXV=1 /bin/true` and got this response:

[root@srv-001379 ~]# LD_SHOW_AUXV=1 /bin/true
AT_DCACHEBSIZE:  0x80
AT_ICACHEBSIZE:  0x80
AT_UCACHEBSIZE:  0x0
AT_SYSINFO_EHDR: 0x3fff96070000
AT_HWCAP:        true_le archpmu vsx arch_2_06 dfp ic_snoop smt mmu fpu altivec ppc64 ppc32
AT_PAGESZ:       65536
AT_CLKTCK:       100
AT_PHDR:         0x10000040
AT_PHENT:        56
AT_PHNUM:        9
AT_BASE:         0x3fff96090000
AT_FLAGS:        0x0
AT_ENTRY:        0x1001fa58
AT_UID:          0
AT_EUID:         0
AT_GID:          0
AT_EGID:         0
AT_SECURE:       0
AT_RANDOM:       0x3fffe71abec1
AT_HWCAP2:       dscr
AT_EXECFN:       /bin/true
AT_PLATFORM:     power7
AT_BASE_PLATFORM:power7+

And AT_HWCAP/AT_HWCAP2 are presents.

So the error "[ERROR] mysqld got signal 4 " still persist.

Comment by Daniel Black [ 2021-11-17 ]

Still present, but at a different location.

disassembly from bt

(gdb) disassemble  maria_max_key_length
Dump of assembler code for function .maria_max_key_length:
   0x0000000000e03b70 <+0>:	std     r31,-8(r1)
   0x0000000000e03b74 <+4>:	addis   r8,r2,-16
   0x0000000000e03b78 <+8>:	stdu    r1,-64(r1)
   0x0000000000e03b7c <+12>:	lis     r9,-21846
   0x0000000000e03b80 <+16>:	addi    r10,r8,-26384
   0x0000000000e03b84 <+20>:	ori     r9,r9,43690
   0x0000000000e03b88 <+24>:	rldicr  r9,r9,32,31
   0x0000000000e03b8c <+28>:	oris    r9,r9,43690
   0x0000000000e03b90 <+32>:	ori     r9,r9,43691
   0x0000000000e03b94 <+36>:	ld      r3,0(r10)
   0x0000000000e03b98 <+40>:	mr      r31,r1
   0x0000000000e03b9c <+44>:	addi    r3,r3,-21
   0x0000000000e03ba0 <+48>:	mulhdu  r3,r3,r9
   0x0000000000e03ba4 <+52>:	rldicl  r3,r3,63,1
   0x0000000000e03ba8 <+56>:	addi    r3,r3,-125
   0x0000000000e03bac <+60>:	cmplwi  cr7,r3,2000
   0x0000000000e03bb0 <+64>:	ble     cr7,0xe03bb8 <.maria_max_key_length+72>
   0x0000000000e03bb4 <+68>:	li      r3,2000
   0x0000000000e03bb8 <+72>:	addi    r1,r31,64
   0x0000000000e03bbc <+76>:	clrldi  r3,r3,32
   0x0000000000e03bc0 <+80>:	ld      r31,-8(r1)
   0x0000000000e03bc4 <+84>:	blr
   0x0000000000e03bc8 <+88>:	.long 0x0
   0x0000000000e03bcc <+92>:	.long 0x0
   0x0000000000e03bd0 <+96>:	lwz     r0,0(r1)
End of assembler dump.
(gdb) disassemble  _ZNK8ha_maria29max_supported_key_part_lengthEv
Dump of assembler code for function ._ZNK8ha_maria29max_supported_key_part_lengthEv:
   0x0000000000e211d0 <+0>:	mflr    r0
   0x0000000000e211d4 <+4>:	std     r31,-8(r1)
   0x0000000000e211d8 <+8>:	std     r0,16(r1)
   0x0000000000e211dc <+12>:	stdu    r1,-128(r1)
   0x0000000000e211e0 <+16>:	mr      r31,r1
   0x0000000000e211e4 <+20>:	bl      0xe171b0 <._ZNK8ha_maria24max_supported_key_lengthEv>
   0x0000000000e211e8 <+24>:	nop
   0x0000000000e211ec <+28>:	addi    r1,r31,128
   0x0000000000e211f0 <+32>:	ld      r0,16(r1)
   0x0000000000e211f4 <+36>:	ld      r31,-8(r1)
   0x0000000000e211f8 <+40>:	mtlr    r0
   0x0000000000e211fc <+44>:	blr
   0x0000000000e21200 <+48>:	.long 0x0
   0x0000000000e21204 <+52>:	.long 0x90001
   0x0000000000e21208 <+56>:	lwz     r0,0(r1)
End of assembler dump.
(gdb) disassemble _ZNK8ha_maria24max_supported_key_lengthEv
Dump of assembler code for function ._ZNK8ha_maria24max_supported_key_lengthEv:
   0x0000000000e171b0 <+0>:	mflr    r0
   0x0000000000e171b4 <+4>:	std     r31,-8(r1)
   0x0000000000e171b8 <+8>:	std     r0,16(r1)
   0x0000000000e171bc <+12>:	stdu    r1,-128(r1)
   0x0000000000e171c0 <+16>:	mr      r31,r1
   0x0000000000e171c4 <+20>:	bl      0xe03b70 <.maria_max_key_length>
   0x0000000000e171c8 <+24>:	nop
   0x0000000000e171cc <+28>:	addi    r1,r31,128
   0x0000000000e171d0 <+32>:	ld      r0,16(r1)
   0x0000000000e171d4 <+36>:	ld      r31,-8(r1)
   0x0000000000e171d8 <+40>:	mtlr    r0
   0x0000000000e171dc <+44>:	blr
   0x0000000000e171e0 <+48>:	.long 0x0
   0x0000000000e171e4 <+52>:	.long 0x90001
   0x0000000000e171e8 <+56>:	lwz     r0,0(r1)
End of assembler dump.

I checked how it was compiled on a P8 VM, no arch flags where applied in this area of code.

At the moment I'm suspecting a compile bug allowing for the minium version. To help me clarify where can you provide the bt full output from:

more accurate stack trace

$ sudo yum install MariaDB-server-debuginfo
$ gdb --args /usr/sbin/mariadbd --no-defaults --datadir=$(mktemp) --bootstrap
 
(gdb) bt -frame-arguments full
 
(this output wanted)
 
(gdb) disassemble

Comment by Rodrigo Camargo dos Santos [ 2021-12-20 ]

Hi Daniel Black,

I did a installation of MariaDB 10.5.13 debuginfo as you recommended.

And I executed the following command:

sudo yum install --verbose MariaDB-server-debuginfo

And I got this response:

Carregando o plugin "fastestmirror"
Config time: 0.013
Yum version: 3.4.3
rpmdb time: 0.000
Configurando sacos de pacotes
Loading mirror speeds from cached hostfile
 * base: mirror.ufro.cl
 * extras: mirror.ufro.cl
 * updates: mirror.ufro.cl
pkgsack time: 0.018
Obs Init time: 0.259
Resolvendo dependências
--> Executando verificação da transação
---> O pacote MariaDB-server-debuginfo.ppc64 0:10.5.13-1.el7.centos será instalado
Verificando dependências para MariaDB-server-debuginfo.ppc64 0:10.5.13-1.el7.centos - u
--> Resolução de dependências finalizada
Término do processo de dependências
Depsolve time: 1.242
 
Dependências resolvidas
 
=============================================================================================================================================================
 Package                                        Arq.                        Versão                                       Repo                           Tam.
=============================================================================================================================================================
Instalando:
 MariaDB-server-debuginfo                       ppc64                       10.5.13-1.el7.centos                         mariadb                        90 M
 
Resumo da transação
=============================================================================================================================================================
Instalar  1 Package
 
Tamanho total do download: 90 M
Tamanho depois de instalado: 376 M
Is this ok [y/d/N]: y
Downloading packages:
Delta RPMs disabled because /usr/bin/applydeltarpm not installed.
MariaDB-server-debuginfo-10.5.13-1.el7.centos.ppc64.rpm                                                                               |  90 MB  00:01:11     
Membro: MariaDB-server-debuginfo.ppc64 0:10.5.13-1.el7.centos - u
Adicionando pacote MariaDB-server-debuginfo-10.5.13-1.el7.centos.ppc64 no modo u
Running transaction check
Transaction check time: 0.001
Running transaction test
Transaction test succeeded
Transaction test time: 0.065
Running transaction
  Instalando   : MariaDB-server-debuginfo-10.5.13-1.el7.centos.ppc64                                                                                     1/1 
  Verifying    : MariaDB-server-debuginfo-10.5.13-1.el7.centos.ppc64                                                                                     1/1 
VerifyTransaction time: 0.144
Transaction time: 15.679
 
Instalados:
  MariaDB-server-debuginfo.ppc64 0:10.5.13-1.el7.centos                                                                                                      
 
Concluído!

Then I ran the following command:

gdb --args /usr/sbin/mariadbd --no-defaults --datadir=$(mktemp) --bootstrap

And I got this response:

GNU gdb (GDB) Red Hat Enterprise Linux 7.6.1-120.el7
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "ppc64-redhat-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /usr/sbin/mariadbd...Reading symbols from /usr/lib/debug/usr/sbin/mariadbd.debug...done.
done.
(gdb) bt -frame-arguments full
No stack.
(gdb) disassemble
No frame selected.
(gdb) disassemble  maria_max_key_length
Dump of assembler code for function maria_max_key_length:
   0x0000000000e03b70 <+0>:	std     r31,-8(r1)
   0x0000000000e03b74 <+4>:	addis   r8,r2,-16
   0x0000000000e03b78 <+8>:	stdu    r1,-64(r1)
   0x0000000000e03b7c <+12>:	lis     r9,-21846
   0x0000000000e03b80 <+16>:	addi    r10,r8,-26384
   0x0000000000e03b84 <+20>:	ori     r9,r9,43690
   0x0000000000e03b88 <+24>:	rldicr  r9,r9,32,31
   0x0000000000e03b8c <+28>:	oris    r9,r9,43690
   0x0000000000e03b90 <+32>:	ori     r9,r9,43691
   0x0000000000e03b94 <+36>:	ld      r3,0(r10)
   0x0000000000e03b98 <+40>:	mr      r31,r1
   0x0000000000e03b9c <+44>:	addi    r3,r3,-21
   0x0000000000e03ba0 <+48>:	mulhdu  r3,r3,r9
   0x0000000000e03ba4 <+52>:	rldicl  r3,r3,63,1
   0x0000000000e03ba8 <+56>:	addi    r3,r3,-125
   0x0000000000e03bac <+60>:	cmplwi  cr7,r3,2000
   0x0000000000e03bb0 <+64>:	ble     cr7,0xe03bb8 <maria_max_key_length+72>
   0x0000000000e03bb4 <+68>:	li      r3,2000
   0x0000000000e03bb8 <+72>:	addi    r1,r31,64
   0x0000000000e03bbc <+76>:	clrldi  r3,r3,32
   0x0000000000e03bc0 <+80>:	ld      r31,-8(r1)
   0x0000000000e03bc4 <+84>:	blr
   0x0000000000e03bc8 <+88>:	.long 0x0
   0x0000000000e03bcc <+92>:	.long 0x0
   0x0000000000e03bd0 <+96>:	lwz     r0,0(r1)
End of assembler dump.
(gdb) disassemble  _ZNK8ha_maria29max_supported_key_part_lengthEv
Dump of assembler code for function ha_maria::max_supported_key_part_length() const:
   0x0000000000e211d0 <+0>:	mflr    r0
   0x0000000000e211d4 <+4>:	std     r31,-8(r1)
   0x0000000000e211d8 <+8>:	std     r0,16(r1)
   0x0000000000e211dc <+12>:	stdu    r1,-128(r1)
   0x0000000000e211e0 <+16>:	mr      r31,r1
   0x0000000000e211e4 <+20>:	bl      0xe171b0 <ha_maria::max_supported_key_length() const>
   0x0000000000e211e8 <+24>:	nop
   0x0000000000e211ec <+28>:	addi    r1,r31,128
   0x0000000000e211f0 <+32>:	ld      r0,16(r1)
   0x0000000000e211f4 <+36>:	ld      r31,-8(r1)
   0x0000000000e211f8 <+40>:	mtlr    r0
   0x0000000000e211fc <+44>:	blr
   0x0000000000e21200 <+48>:	.long 0x0
   0x0000000000e21204 <+52>:	.long 0x90001
   0x0000000000e21208 <+56>:	lwz     r0,0(r1)
End of assembler dump.
(gdb) disassemble _ZNK8ha_maria24max_supported_key_lengthEv
Dump of assembler code for function ha_maria::max_supported_key_length() const:
   0x0000000000e171b0 <+0>:	mflr    r0
   0x0000000000e171b4 <+4>:	std     r31,-8(r1)
   0x0000000000e171b8 <+8>:	std     r0,16(r1)
   0x0000000000e171bc <+12>:	stdu    r1,-128(r1)
   0x0000000000e171c0 <+16>:	mr      r31,r1
   0x0000000000e171c4 <+20>:	bl      0xe03b70 <maria_max_key_length>
   0x0000000000e171c8 <+24>:	nop
   0x0000000000e171cc <+28>:	addi    r1,r31,128
   0x0000000000e171d0 <+32>:	ld      r0,16(r1)
   0x0000000000e171d4 <+36>:	ld      r31,-8(r1)
   0x0000000000e171d8 <+40>:	mtlr    r0
   0x0000000000e171dc <+44>:	blr
   0x0000000000e171e0 <+48>:	.long 0x0
   0x0000000000e171e4 <+52>:	.long 0x90001
   0x0000000000e171e8 <+56>:	lwz     r0,0(r1)
End of assembler dump.

Comment by Alexandre Bossa Perotto [ 2022-01-12 ]

any news?

Generated at Thu Feb 08 09:42:25 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.