Bug 1264147

Summary: RFE: Python pmFetch needs to become polymorphic
Product: [Fedora] Fedora Reporter: Marko Myllynen <myllynen>
Component: pcpAssignee: Nathan Scott <nathans>
Status: CLOSED EOL QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 22CC: brolley, fche, lberk, mgoodwin, nathans, pcp, scox
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-07-19 17:55:30 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Marko Myllynen 2015-09-17 15:38:07 UTC
Description of problem:
The below is from pcp2graphite.py but would be needed in other Python applications as well:

...
    # Convert a python list of pmids (numbers) to a ctypes LP_c_uint (a C array of uints).
    def convert_pmids_to_ctypes(self, pmids):
        import ctypes
        from ctypes import c_uint
        pmidA = (c_uint * len(pmids))()
        for i,p in enumerate(pmids):
            pmidA[i] = c_uint(p)
        return pmidA
...

        pmid = self.context.pmLookupName(name)[0]
        self.pmids.append(pmid)

        # NB: we'd like to do: result = self.context.pmFetch(self.pmids)
        # But: pmFetch takes ctypes array-of-uint's, not a python list.  It needs to become polymorphic.
        result = self.context.pmFetch(self.convert_pmids_to_ctypes(self.pmids))
...

Version-Release number of selected component (if applicable):
3.10.7

Comment 1 Fedora End Of Life 2016-07-19 17:55:30 UTC
Fedora 22 changed to end-of-life (EOL) status on 2016-07-19. Fedora 22 is
no longer maintained, which means that it will not receive any further
security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen this bug against that version. If you
are unable to reopen this bug, please file a new report against the
current release. If you experience problems, please add a comment to this
bug.

Thank you for reporting this bug and we are sorry it could not be fixed.