pcp
[Top] [All Lists]

pcp updates: assorted goodies

To: pcp@xxxxxxxxxxx
Subject: pcp updates: assorted goodies
From: Ken McDonell <kenj@xxxxxxxxxxxxxxxx>
Date: Mon, 28 Dec 2015 14:43:51 +1100
Delivered-to: pcp@xxxxxxxxxxx
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.4.0
Nathan's on vacation, so I'm pushing these to the official tree and github.

Changes committed to git://git.pcp.io/pcp.git master

Ken McDonell (19):
      qa/pmdas/github-56: add .gitignore
      src/pmdas/trace: fix demos Makefile
      qa/common.filter: more tweaks for _filter_pcp_start()
      src/pmdas/trace: more installed makefile changes
      qa/common.rc: rework recent sudo -E test change
      qa/README: document that things work better if the user pcpqa is included 
in the pcp group
      qa/admin/pcp-daily: report date after QA done
      qa/common.rc: sudo -h output sometimes on stderr ... sigh.
      src/perl/PMDA/test.pl: correct a pattern match in the test program
      src/libpcp/context.c: tweak pmNewContext() when re-using an existing pmcd 
connection
      qa/1090: (new) tests for 
https://github.com/performancecopilot/pcp/issues/14
      qa/group: 1090 belongs in the "context" group as well
      qa/024: remake .out as new "ping" PDUs visible below pmNewContext()
      qa/pmdas/broken/GNUmakefile.install: fix rules so broken pmdas are 
rebuilt for QA
      qa pmdas: add some temporary files (aprÃs qa) to .gitignore
      qa/1090: when testing pmwebd, at least make sure it is running
      qa/admin/check-vm: some more debian build package prereqs
      qa/admin/pcp-daily: workaround for VM shutdown oddness
      qa/pmdas/dynamic/GNUmakefile: avoid somwe qa/956 failures

 qa/024.out                          |    2 
 qa/1090                             |  130 ++++++++++++++++++++++++++++++++++++
 qa/1090.out                         |   33 +++++++++
 qa/374                              |    5 +
 qa/README                           |    3 
 qa/admin/check-vm                   |   17 ++--
 qa/admin/pcp-daily                  |    5 +
 qa/common.filter                    |    6 +
 qa/common.rc                        |   11 ++-
 qa/group                            |    1 
 qa/pmdas/broken/GNUmakefile.install |    6 -
 qa/pmdas/dynamic/GNUmakefile        |   37 ++++++++++
 qa/pmdas/github-56/.gitignore       |    2 
 qa/pmdas/memory_python/.gitignore   |    1 
 qa/pmdas/slow/.gitignore            |    2 
 qa/pmdas/slow_python/.gitignore     |    1 
 qa/pmdas/test_perl/.gitignore       |    1 
 src/libpcp/src/context.c            |   43 +++++++++++
 src/perl/PMDA/test.pl               |    2 
 src/pmdas/trace/.gitignore          |    1 
 src/pmdas/trace/GNUmakefile         |   15 +++-
 src/pmdas/trace/Makefile.proto      |    2 
 22 files changed, 304 insertions(+), 22 deletions(-)

Details ...

commit 42d26403d6d66968f7650ef0863725ce5e50711d
Author: Ken McDonell <kenj@xxxxxxxxxxxxxxxx>
Date:   Mon Dec 28 06:30:44 2015 +1100

    qa/pmdas/dynamic/GNUmakefile: avoid somwe qa/956 failures
    
    When running QA from a git tree (not the testsuite directory)
    we try hard to use GNUmakefile.install in preference to
    GNUmakefile so we're not dependent on the state of the git
    tree.  But qa/956 exposes a corner case when the git tree
    is pristine, then the dynamic PMDA (QA only special) fails
    to Install because the Install script via pmdaproc.sh runs
    a "make install" that uses GNUmakefile ... tart up GNUmakefile
    to do the right thing when this happens.

commit ed55f15d56436011da332558993a2b4462762bad
Author: Ken McDonell <kenj@xxxxxxxxxxxxxxxx>
Date:   Mon Dec 28 06:26:33 2015 +1100

    qa/admin/pcp-daily: workaround for VM shutdown oddness
    
    On some of my VMs, there is a problem with the shutdown that deletes
    some files (usually qa scripts from git) which causes the subsequent
    Makepkgs to fail.
    
    This happens often enough that I've decided to defend against it.

commit c7329467bab4758aad91eb74b81ec309f0c42786
Author: Ken McDonell <kenj@xxxxxxxxxxxxxxxx>
Date:   Mon Dec 28 06:25:24 2015 +1100

    qa/admin/check-vm: some more debian build package prereqs
    
    Exposed by upgrade to LinuxMint 17.3 (vm18).

commit 00e52a974eaf186b7b6a85a897f70c98344c4adf
Author: Ken McDonell <kenj@xxxxxxxxxxxxxxxx>
Date:   Mon Dec 28 06:22:57 2015 +1100

    qa/1090: when testing pmwebd, at least make sure it is running

commit 000e2cc912539e4f61c4196fae2c2a6e9a0dca05
Author: Ken McDonell <kenj@xxxxxxxxxxxxxxxx>
Date:   Mon Dec 28 06:20:56 2015 +1100

    qa pmdas: add some temporary files (aprÃs qa) to .gitignore

commit 2276bafec95e25868995e793b6e17da0e6e53532
Author: Ken McDonell <kenj@xxxxxxxxxxxxxxxx>
Date:   Wed Dec 23 10:10:55 2015 +1100

    qa/pmdas/broken/GNUmakefile.install: fix rules so broken pmdas are rebuilt 
for QA

commit 3be30eed8e08ac69a63f72c3298774ece5be7648
Author: Ken McDonell <kenj@xxxxxxxxxxxxxxxx>
Date:   Wed Dec 23 06:36:05 2015 +1100

    qa/024: remake .out as new "ping" PDUs visible below pmNewContext()

commit 84f4c396e508c23ccdbcdfda8537f1ecf2b6415c
Author: Ken McDonell <kenj@xxxxxxxxxxxxxxxx>
Date:   Wed Dec 23 06:34:36 2015 +1100

    qa/group: 1090 belongs in the "context" group as well

commit 520beefaf38bdb64d51396dadb369befd1342f7c
Author: Ken McDonell <kenj@xxxxxxxxxxxxxxxx>
Date:   Wed Dec 23 06:32:38 2015 +1100

    qa/1090: (new) tests for https://github.com/performancecopilot/pcp/issues/14
    
    Exercise new "ping" protocol between libpcp's pmNewContext and pmcd
    when re-using a socket connection for a new PMAPI context.

commit 3d4d2c07efa4954bc188420ad5ad85ebd35481dd
Author: Ken McDonell <kenj@xxxxxxxxxxxxxxxx>
Date:   Wed Dec 23 06:12:04 2015 +1100

    src/libpcp/context.c: tweak pmNewContext() when re-using an existing pmcd 
connection
    
    There is fast path (and fd saving) optimization in pmNewContext()
    where we don't establish a new connection to pmcd when we're asked
    to create a subsequent PMAPI context to the same pmcd host and port
    used to create an existing PMAPI context.  Multiple PMAPI contexts
    are then multiplexed over the same socket connection.  This all
    works as designed.
    
    But as shown in https://github.com/performancecopilot/pcp/issues/14
    this produces slightly odd behaviour when pmcd has died between the
    initial pmNewContext() call and the later one, but the client has not
    sent a PDU and so libpcp does not update the state of the connection
    to pmcd and will try to re-use the socket that is not going to work.
    
    Since we cannot rely on any socket-level service to let us know
    the remote end of a socket has been closed, we need a "ping" ... we
    don't have a ping PDU per se (and adding one would introduce version
    compatibility issues) so we use a (bad) pmDesc request PDU with an
    expected PM_ERR_PMID error PDU response ... if this happens, pmcd is
    well, otherwise go down the slow path and try to build a new socket
    connection to (presumably a new) pmcd.

commit 1e44d6c90dd4c99df8a6037f741d4d13a194196d
Author: Ken McDonell <kenj@xxxxxxxxxxxxxxxx>
Date:   Mon Dec 21 17:29:30 2015 +1100

    src/perl/PMDA/test.pl: correct a pattern match in the test program
    
    Was causing qa/771 to fail on some more modern Perl versions, like
    vm31 (Fedora 23).  Thanks Nathan for the guidance.

commit de828f89f6654f40addfbe8b9e19ce35c4051ee7
Author: Ken McDonell <kenj@xxxxxxxxxxxxxxxx>
Date:   Sat Dec 19 17:31:40 2015 +1100

    qa/common.rc: sudo -h output sometimes on stderr ... sigh.

commit ef3209c9d69cca3b6a64bc9e4239b53e744f7e40
Author: Ken McDonell <kenj@xxxxxxxxxxxxxxxx>
Date:   Sat Dec 19 12:00:31 2015 +1100

    qa/admin/pcp-daily: report date after QA done
    
    Helps managing logs when more than one QA run per day.

commit ac90e4b2a4106b577dabeebe4addb58ada8e0a28
Author: Ken McDonell <kenj@xxxxxxxxxxxxxxxx>
Date:   Sat Dec 19 11:53:59 2015 +1100

    qa/README: document that things work better if the user pcpqa is included 
in the pcp group

commit c66c355069cbaf5fd73c0040ae45db99ec65a7d6
Author: Ken McDonell <kenj@xxxxxxxxxxxxxxxx>
Date:   Sat Dec 19 10:49:00 2015 +1100

    qa/common.rc: rework recent sudo -E test change
    
    Recently we changed the way sudo was run to test for the presence
    of a -E option (to preserve the environment) ... this was not quite
    right for some versions of sudo, triggering a batch of new QA failures.

commit 7e6a5304a8133615b40c901bc2eb1cf09b51f7a5
Author: Ken McDonell <kenj@xxxxxxxxxxxxxxxx>
Date:   Sat Dec 19 10:45:21 2015 +1100

    src/pmdas/trace: more installed makefile changes
    
    Need to do some filtering in the build to avoid undefined macros
    when installed ... was masked previously because sudo was typically
    run with -E from the qa check script (botching the recent sudo -E
    check in qa/common.rc exposed this problem).

commit ec1ed38f9c5ab7452ecf7516f1b451395836f3c2
Author: Ken McDonell <kenj@xxxxxxxxxxxxxxxx>
Date:   Sat Dec 19 06:42:05 2015 +1100

    qa/common.filter: more tweaks for _filter_pcp_start()
    
    On grundy I've started to see "..done" being appended to the
    Starting pmcd ... and Starting pmlogger ... lines.
    Remove "..done" in the filter.

commit 7ad7f900531d8bfd47512c2e3c31fe88f42bd077
Author: Ken McDonell <kenj@xxxxxxxxxxxxxxxx>
Date:   Sat Dec 19 06:36:45 2015 +1100

    src/pmdas/trace: fix demos Makefile
    
    I don't understand how qa/258 was working on most hosts ... the
    installed Makefile had no chance of building any of the app? apps if
    they did not already exist.

commit 82daaac794c093505cae7249796326c734fbafc3
Author: Ken McDonell <kenj@xxxxxxxxxxxxxxxx>
Date:   Sat Dec 19 06:17:51 2015 +1100

    qa/pmdas/github-56: add .gitignore

<Prev in Thread] Current Thread [Next in Thread>
  • pcp updates: assorted goodies, Ken McDonell <=