group.of.nepali.translators team mailing list archive
-
group.of.nepali.translators team
-
Mailing list archive
-
Message #29723
[Bug 1824762] Re: various tools (including pt-query-digest, pt-heartbeat) failing due to fatal sprintf warnings
** Changed in: percona-toolkit (Ubuntu)
Status: Confirmed => Fix Released
--
You received this bug notification because you are a member of नेपाली
भाषा समायोजकहरुको समूह, which is subscribed to Xenial.
Matching subscriptions: Ubuntu 16.04 Bugs
https://bugs.launchpad.net/bugs/1824762
Title:
various tools (including pt-query-digest, pt-heartbeat) failing due to
fatal sprintf warnings
Status in percona-toolkit package in Ubuntu:
Fix Released
Status in percona-toolkit source package in Xenial:
Confirmed
Bug description:
[Impact]
On Xenial (Bionic and later are not affected due to a newer version
already incorporating this patch), various tools from percona-toolkit
fail because of new warnings from sprintf that are generated by the
new Perl version in Xenial.
These warnings are fatal because all of the tools set "use strict" and
"use warnings FATAL => 'all';"
This can be tested simply by parsing any MySQL log with pt-query-
digest, however, it affects many other tools.
[Test Case]
apt-get install mysql-server percona-toolkit # set any root password you like, we'll just use the debian.cnf credentials
mysql --defaults-file=/etc/mysql/debian.cnf -e "set GLOBAL slow_query_log = on,
long_query_time=0.0; select * from mysql.user;"
pt-query-digest /var/lib/mysql/$(hostname)-slow.log
Result:
The pipeline caused an error: Pipeline process 5 (iteration) caused an error: Redundant argument in sprintf at /usr/bin/pt-query-digest line 2556.
Terminating pipeline because process 4 (iteration) caused too many errors.
This issue was fixed upstream:
https://github.com/percona/percona-toolkit/pull/73/
[Regression Potential]
The following tools are updated by this patch:
pt-diskstats
pt-fk-error-logger
pt-heartbeat
pt-index-usage
pt-kill
pt-online-schema-change
pt-query-digest
pt-slave-delay
pt-slave-find
pt-table-checksum
pt-table-sync
pt-table-usage
pt-upgrade
Generally speaking most of these tools fail to work at all due to this
bug, which will limit the regression potential to a reasonable extent.
This patch is taken from upstream and largely updates common code used
by all tools in a generic fashion.
However it is difficult to fully test all of the tools, as the test
suite is not included in the released binary. I attempted to run the
upstream test suite, however there are no instructions on how to do so
and I failed in figuring out how to get it to successfully execute.
To that end I submit that it will be difficult to test this patch in a
reliable fashion, and would seek feedback on what we should do about
that.
[Other Info]
The way the upstream percona-toolkit repository works is they have
these perl modules that are statically "compiled in" to the various
tool perl scripts, with both the source libraries and that resulting
static tool committed to git.
They do not always update every tool when changes are made to those
modules. So if you rebuild every tool, even from the same source as
the release, you will get unrelated changes to the actual fix.
The source of the package (as released) does not contain the libraries
(lib/**) or the tests (t/**) so these are not included in the package
patch, in contrast to the upstream git diff.
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/percona-toolkit/+bug/1824762/+subscriptions
References