Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 639936

Summary: dev-db/percona-server: Runtime errors when built with GCC-7
Product: Gentoo Linux Reporter: Thomas Deutschmann (RETIRED) <whissi>
Component: Current packagesAssignee: Thomas Deutschmann (RETIRED) <whissi>
Status: RESOLVED FIXED    
Severity: critical CC: mysql-bugs, slyfox, steffen.weber
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
URL: https://bugs.launchpad.net/percona-server/+bug/1736028
Whiteboard: ~arch only
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 617524    
Attachments: build.log

Description Thomas Deutschmann (RETIRED) gentoo-dev 2017-12-05 14:57:43 UTC
While https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=190b8440424d0684880808bb8d6587078a7357ef fixed building against GCC-7, percona-server isn't GCC-7 compatible yet:

At least 

rpl.rpl_partition_innodb
rpl.rpl_innodb_bug28430
rpl.rpl_alter_repository
rpl.rpl_relayrotate
rpl.rpl_checksum_cache
rpl.rpl_innodb_bug30888
rpl.rpl_innodb_mixed_dml
rpl.rpl_mixed_binlog_max_cache_size

tests are failing. We have already seen real crashes under production load like

> Thread pointer: 0x7fe4244df000
> 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 = 7fe449f80690 thread_stack 0x40000
> /usr/sbin/mysqld(my_print_stacktrace+0x36)[0x5575684c5d46]
> /usr/sbin/mysqld(handle_fatal_signal+0x3d0)[0x557568271200]
> /lib64/libpthread.so.0(+0x140f0)[0x7fe4487430f0]
> /usr/sbin/mysqld(+0x7b79de)[0x5575685dc9de]
> /usr/sbin/mysqld(+0x7ab702)[0x5575685d0702]
> /usr/sbin/mysqld(+0x7b0484)[0x5575685d5484]
> /usr/sbin/mysqld(+0x7b81dd)[0x5575685dd1dd]
> /usr/sbin/mysqld(+0x748599)[0x55756856d599]
> /usr/sbin/mysqld(+0x74afd7)[0x55756856ffd7]
> /usr/sbin/mysqld(+0x74b5f2)[0x5575685705f2]
> /usr/sbin/mysqld(+0x757120)[0x55756857c120]
> /usr/sbin/mysqld(+0x6d1f34)[0x5575684f6f34]
> /usr/sbin/mysqld(_ZN7handler12ha_write_rowEPh+0x9f)[0x5575681cfc8f]
> /usr/sbin/mysqld(_Z12write_recordP3THDP5TABLEP9COPY_INFOS4_+0x99)[0x5575682d24d9]
> /usr/sbin/mysqld(_Z12mysql_insertP3THDP10TABLE_LISTR4ListI4ItemERS3_IS5_ES6_S6_15enum_duplicatesb+0xc21)[0x5575682d95f1]
> /usr/sbin/mysqld(_Z21mysql_execute_commandP3THD+0x431c)[0x5575682ec6dc]
> /usr/sbin/mysqld(_Z11mysql_parseP3THDPcjP12Parser_state+0x4e0)[0x5575682efb30]
> /usr/sbin/mysqld(_Z16dispatch_command19enum_server_commandP3THDPcj+0x1213)[0x5575682f1473]
> /usr/sbin/mysqld(_Z24do_handle_one_connectionP3THD+0x1bd)[0x5575682bff8d]
> /usr/sbin/mysqld(handle_one_connection+0x38)[0x5575682c0038]
> /usr/sbin/mysqld(pfs_spawn_thread+0xee)[0x5575686e128e]
> /lib64/libpthread.so.0(+0x78ea)[0x7fe4487368ea]
> /lib64/libc.so.6(clone+0x3f)[0x7fe447b0525f]
Comment 1 Thomas Deutschmann (RETIRED) gentoo-dev 2017-12-05 15:01:25 UTC
Created attachment 508258 [details]
build.log
Comment 2 Larry the Git Cow gentoo-dev 2017-12-05 15:43:32 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=15794394956f3ada8ea91b75fd52c3769f8c0b1d

commit 15794394956f3ada8ea91b75fd52c3769f8c0b1d
Author:     Thomas Deutschmann <whissi@gentoo.org>
AuthorDate: 2017-12-05 15:42:53 +0000
Commit:     Thomas Deutschmann <whissi@gentoo.org>
CommitDate: 2017-12-05 15:43:25 +0000

    dev-db/percona-server: Rev bump to block package for >gcc-6
    
    Bug: https://bugs.gentoo.org/639936
    Package-Manager: Portage-2.3.16, Repoman-2.3.6

 ...ebuild => percona-server-5.6.37.82.2-r2.ebuild} | 33 ++++++++++++++++++++--
 1 file changed, 30 insertions(+), 3 deletions(-)}
Comment 3 Steffen Weber 2017-12-05 19:57:08 UTC
If someone else is wondering how to "use package.env file to switch to <gcc-7.x for this package", the following has worked for me:

mkdir -p /etc/portage/env
echo 'CC="/usr/x86_64-pc-linux-gnu/gcc-bin/6.4.0/gcc"' >> /etc/portage/env/gcc6
echo 'CXX="/usr/x86_64-pc-linux-gnu/gcc-bin/6.4.0/g++"' >> /etc/portage/env/gcc6
echo 'dev-db/percona-server gcc6' >> /etc/portage/package.env
Comment 4 Thomas Deutschmann (RETIRED) gentoo-dev 2017-12-18 16:51:16 UTC
>=dev-db/percona-server-5.6.38.83.0 now works with gcc-7.