pcp
[Top] [All Lists]

pcp updates: python big-pmapi-lock removal

To: pcp@xxxxxxxxxxx
Subject: pcp updates: python big-pmapi-lock removal
From: Nathan Scott <nathans@xxxxxxxxxx>
Date: Thu, 4 Oct 2012 06:05:52 -0400 (EDT)
Cc: Stan Cox <scox@xxxxxxxxxx>
Reply-to: Nathan Scott <nathans@xxxxxxxxxx>
Changes committed to git://oss.sgi.com/pcp/pcp.git dev

 debian/changelog       |    5 
 man/man1/pmdabash.1    |    4 
 src/pmdas/bash/event.c |    2 
 src/python/pcp.py      |  485 ++++++++++---------------------------------------
 4 files changed, 111 insertions(+), 385 deletions(-)

commit acdc96573393bbbd68ea66f25e5bd3ad7262031f
Author: Nathan Scott <nathans@xxxxxxxxxx>
Date:   Thu Oct 4 20:02:01 2012 +1000

    Remove now-redundant locking layer from Python PMAPI wrapper
    
    We currently have two levels of locking for Python clients,
    due to the original python wrapper predating the threading
    work done in libpcp.  This change removes all locking from
    the pcp.py layer (both the BigPythonLock & lastUsedContext).
    
    In doing this, several dormant bugs were exposed (and fixed
    at the same time), some quite subtle - happily the code is
    much simplified, so these stood out:
    - pmLookupDesc (error code not checked within the loop)
    - pmSetMode (incorrect status checking, spurious zeroing)
    - pmRecordSetup (missing unlock on error path)
    - pmRecordAddHost (missing unlock on error path x 2)
    
    I *think* (unrelated) issues remain in the following calls:
      pmErrStr_r, pmUnitsStr_r, pmIDStr_r, pmInDomStr_r
    (the calls do not match the C calling convention - can this
    be right?  surely not?  not sure though, maybe some Python
    magic happens under the covers here).

commit a8550fe00e17b8b0ef43c64c76a302799b24e3a5
Author: Nathan Scott <nathans@xxxxxxxxxx>
Date:   Thu Oct 4 19:46:55 2012 +1000

    Make a note that pmdabash is experimental

commit ab3cf824e6e8a15e51eca3e64ff8eec30520fe10
Author: Nathan Scott <nathans@xxxxxxxxxx>
Date:   Thu Oct 4 19:45:39 2012 +1000

    Bump version in debian changelog too, missed on previous

<Prev in Thread] Current Thread [Next in Thread>
  • pcp updates: python big-pmapi-lock removal, Nathan Scott <=