[debian-mysql] Bug#941986: mariadb-client-10.3: InnoTop crashes during use

Michael Krieger michael at maildrop.cc
Tue Oct 8 16:31:14 BST 2019


Package: mariadb-client-10.3
Version: 1:10.3.17-0+deb10u1
Severity: important

Dear Maintainer,

On running `innotop`, it appears to work correctly, however upon choosing one of the other screens, such as pushing "L" to bring up the lock screen, it crashes with the error:
	Use of uninitialized value $text in pattern match (m//) at /tmp/innotop.orig line 620.

This is because technically 10.3 is not officially supported by innotop, and so it uses old legacy code which returns incorrect results.

While innotop doesn't get support 10.3, us shipping innotop with MariaDB 10.3 means it should really work with it.  It is substantially close to 10.1/10.2 to include it in the ways that works as opposed to using outdated code meant for older versions of MySQL.

Ideally, innotop should be updated to include official 10.3 support.  Until the developer does that, this will at least make innotop usable on Debian Buster 10.

-- System Information:
Debian Release: 10.1
  APT prefers stable-updates
  APT policy: (500, 'stable-updates'), (500, 'stable')
Architecture: amd64 (x86_64)

Kernel: Linux 4.19.0-6-amd64 (SMP w/12 CPU cores)
Locale: LANG=en_CA.UTF-8, LC_CTYPE=en_CA.UTF-8 (charmap=UTF-8), LANGUAGE=en_CA:en (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages mariadb-client-10.3 depends on:
ii  debianutils               4.8.6.1
ii  libc6                     2.28-10
ii  libconfig-inifiles-perl   3.000001-1
ii  libgnutls30               3.6.7-4
ii  libstdc++6                8.3.0-6
ii  mariadb-client-core-10.3  1:10.3.17-0+deb10u1
ii  perl                      5.28.1-6
ii  zlib1g                    1:1.2.11.dfsg-1

Versions of packages mariadb-client-10.3 recommends:
ii  libdbd-mysql-perl     4.050-2
ii  libdbi-perl           1.642-1+b1
ii  libterm-readkey-perl  2.38-1

mariadb-client-10.3 suggests no packages.

-- no debconf information
-------------- next part --------------
--- /tmp/innotop.orig	2019-10-08 11:17:31.446038258 -0400
+++ /usr/bin/innotop	2019-10-08 11:21:57.258023170 -0400
@@ -471,7 +471,7 @@
    # too many locks to print, the output might be truncated)
 
    my $time_text;
-   if ( ($mysqlversion =~ /^5\.[67]\./) || ($mysqlversion =~ /^10\.[012]\./) ) {
+   if ( ($mysqlversion =~ /^5\.[67]\./) || ($mysqlversion =~ /^10\.[0123]\./) ) {
       ( $time_text ) = $fulltext =~ m/^([0-9-]* [0-9:]*) [0-9a-fx]* INNODB MONITOR OUTPUT/m;
       $innodb_data{'ts'} = [ parse_innodb_timestamp_56( $time_text ) ];
    } else {
@@ -639,7 +639,7 @@
    return 0 unless $fulltext;
 
    my ( $ts, $type );
-   if ( ($mysqlversion =~ /^5.[67]\./) || ($mysqlversion =~ /^10.[012]\./) ) {
+   if ( ($mysqlversion =~ /^5.[67]\./) || ($mysqlversion =~ /^10.[0123]\./) ) {
       ( $ts, $type ) = $fulltext =~ m/^([0-9-]* [0-9:]*)\s[0-9a-fx]*\s+(\w+)/m;
       $section->{'ts'} = [ parse_innodb_timestamp_56( $ts ) ];
    } else {
@@ -899,7 +899,7 @@
    my ( $ts ) = $fulltext =~ m/^$s$/m;
    return 0 unless $ts;
 
-   if ( ($mysqlversion =~ /^5\.[67]\./) || ($mysqlversion =~ /^10\.[012]\./) ) {
+   if ( ($mysqlversion =~ /^5\.[67]\./) || ($mysqlversion =~ /^10\.[0123]\./) ) {
       $dl->{'ts'} = [ parse_innodb_timestamp_56( $ts ) ];
    }
    else {


More information about the pkg-mysql-maint mailing list