[Bug 1316970] Re: g_dbus memory leak in lrmd

Seyeong Kim seyeong.kim at canonical.com
Thu Jan 18 01:40:09 UTC 2018


Hello Dan & Eric

I confirmed that the issue dan mentioned is happening with refactoring
commit.

and also the other person reported me this pkg doesn't fix this issue.

it seemed fix this but actually it is not.

so I think I need more time to analyze this issue.

Could you please give me more time for this?

Thanks.

-- 
You received this bug notification because you are a member of Ubuntu
Sponsors Team, which is subscribed to the bug report.
https://bugs.launchpad.net/bugs/1316970

Title:
  g_dbus memory leak in lrmd

Status in pacemaker package in Ubuntu:
  Fix Released
Status in pacemaker source package in Trusty:
  In Progress

Bug description:
  [Impact]
  lrmd daemon with upstart resource has memory leak in Trusty

  affected to pacemaker 1.1.10.

  [Test Case]

  1. deploy 3 trusty instance.
  2. install corosync, pacemaker, mysql.
  3. setting with below info
  3.1 corosync.conf, proper setting for 3 node
  3.2 crm configure < setup.crm ( which has upstart:mysql setting )
  3.3 monitor lrmd daemon's memory usage

  [Regression]
  Restarting daemon after upgrading this pkg will be needed. this patch added NULL check for several parts. prior commit[2] changed file structure ( e.g attrd created from tools/attrd.c ), This might affect to system. however, both of patches are landed to 1.11, so risk is not that high.

  [Others]

  Related commits.

  [1] commit a1a6922e43dfe80b23887a88401cbb93fe3645c0
  Author: David Vossel <dvossel at redhat.com>
  Date:   Tue Jan 7 14:02:18 2014 -0600

      Fix: ipc: fix memory leak for failed ipc client connections.

      When pacemaker ipc servers accept client connections, client
      state data is allocated when the libqb 'accept' callback function is
      invoked.  It is possible however that even after the client
      accepts the connection in the libqb 'accept' callback, the connection
      could still fail to initialize fully if the client side hangs up.

      Currently this results in the client state data never being
      destroyed because the libqb "close" callback for client connection
      is never invoked on the server side. Instead, libqb jumps directly to
      the "destroy" callback because the connection never actually got created.

      To account for this memory leak, pacemaker needs to verify client
      state data is destroyed in the destroy callback.
  [2] commit a7b61e276120184c7586a3217ed3571a982f5017
  Author: Andrew Beekhof <andrew at beekhof.net>
  Date:   Fri Aug 23 16:25:35 2013 +1000

      Refactor: attrd: Move to its own directory and create a stub for
  attrd-ng

  ------------------------------------------------------------------
  $ git describe --contains a1a6922e43dfe80b23887a88401cbb93fe3645c0
  Pacemaker-1.1.11-rc3

  $ git describe --contains a7b61e276120184c7586a3217ed3571a982f5017
  Pacemaker-1.1.11-rc1~168

  $ rmadison pacemaker
   pacemaker | 1.1.10+git20130802-1ubuntu2   | trusty 
   pacemaker | 1.1.10+git20130802-1ubuntu2.4 | trusty-security
   pacemaker | 1.1.10+git20130802-1ubuntu2.4 | trusty-updates

   pacemaker | 1.1.14-2ubuntu1               | xenial
   pacemaker | 1.1.14-2ubuntu1.3             | xenial-security
   pacemaker | 1.1.14-2ubuntu1.3             | xenial-update
   pacemaker | 1.1.16-1ubuntu1               | zesty
   pacemaker | 1.1.16-1ubuntu1               | artful
   pacemaker | 1.1.18~rc3-1ubuntu1           | bionic     
  ------------------------------------------------------------------

  [Original Description]

  I'm running Pacemaker 1.1.10+git20130802-1ubuntu1 on Ubuntu Saucy
  (13.10) and have encountered a memory leak in lrmd.

  The details of the bug are covered here in this thread
  (http://oss.clusterlabs.org/pipermail/pacemaker/2014-May/021689.html)
  but to summarise, the Pacemaker developers believe the leak is caused
  by the g_dbus API, the use of which was removed in Pacemaker 1.11.

  I've also attached the Valgrind output from the run that exposed the
  issue.

  Given that this issue affects production stability (a periodic restart
  of Pacemaker is required), will a version of 1.11 be released for
  Trusty? (I'm happy to upgrade the OS to Trusty to get it).

  If not, can you advise which version of the OS will be the first to
  take 1.11 please?

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/pacemaker/+bug/1316970/+subscriptions



More information about the Ubuntu-sponsors mailing list