pcp
[Top] [All Lists]

pcp updates: pmlogger SIGINT issue

To: pcp@xxxxxxxxxxx
Subject: pcp updates: pmlogger SIGINT issue
From: Ken McDonell <kenj@xxxxxxxxxxxxxxxx>
Date: Sat, 1 Oct 2016 06:52:31 +1000
Delivered-to: pcp@xxxxxxxxxxx
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.3.0
Changes committed to git://git.pcp.io/kenj/pcp master

Ken McDonell (3):
      src/libpcp/pdu.c: allow -EINTR to be returned from pduread()
      src/pmlogger: fix SIGINT issue
      qa/895 (new): exercise pmlogger SIGINT problem

 qa/895                      |   99 ++++++++++++++++++++++++++++++++++++++++++++
 qa/895.out                  |   13 +++++
 qa/group                    |    1
 src/libpcp/src/pdu.c        |    9 ++--
 src/pmlogger/src/callback.c |    8 ++-
 src/pmlogger/src/fetch.c    |    6 ++
 src/pmlogger/src/pmlogger.c |   15 ++++--
 7 files changed, 141 insertions(+), 10 deletions(-)

Details ...

commit 5068924eae6c9f1476806ed9d877f223ae47c432
Author: Ken McDonell <kenj@xxxxxxxxxxxxxxxx>
Date:   Sat Oct 1 06:47:49 2016 +1000

    qa/895 (new): exercise pmlogger SIGINT problem

commit f16dcc88bbe6005a95033ba5b1d3a70d5a389796
Author: Ken McDonell <kenj@xxxxxxxxxxxxxxxx>
Date:   Sat Oct 1 06:44:12 2016 +1000

    src/pmlogger: fix SIGINT issue

    Issue raised as https://github.com/performancecopilot/pcp/issues/116.

    This commit (and the earlier pduread() change in libpcp) fixes the
    SIGINT part of the issue ... the root trigger is fetching lots of
    metrics with a very short (10msec) update interval, which means
    there is close to a 100% guarantee that the SIGINT will interrupt
    a socket read() and the resulting error was not being propaged back
    up the call stack correctly.

    The mem leak part of the issue will be addressed separately.

commit bd32862bf6630c604548a0859e641ea97a75fcd2
Author: Ken McDonell <kenj@xxxxxxxxxxxxxxxx>
Date:   Sat Oct 1 06:30:12 2016 +1000

    src/libpcp/pdu.c: allow -EINTR to be returned from pduread()

    If a SIGINT is received during a socket read of a PDU, we want to
    propagate -EINTR back to the caller, not PM_ERR_IPC or -1, so that
    the caller can decide what to do.

<Prev in Thread] Current Thread [Next in Thread>
  • pcp updates: pmlogger SIGINT issue, Ken McDonell <=