← Back to team overview

group.of.nepali.translators team mailing list archive

[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