Bug 1303005 - Upstream test case 416 requires pcp-pmda-news installed, fails otherwise
Summary: Upstream test case 416 requires pcp-pmda-news installed, fails otherwise
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: pcp
Version: 6.8
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: rc
: ---
Assignee: Nathan Scott
QA Contact: Miloš Prchlík
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2016-01-29 09:32 UTC by Miloš Prchlík
Modified: 2016-05-10 21:13 UTC (History)
5 users (show)

Fixed In Version: pcp-3.10.9-6.el6
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2016-05-10 21:13:36 UTC
Target Upstream Version:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2016:0825 0 normal SHIPPED_LIVE pcp bug fix update 2016-05-10 22:40:39 UTC

Description Miloš Prchlík 2016-01-29 09:32:14 UTC
Description of problem:

With only the basic set of pcp packages installed, we ran "sanity" group of upstream tests. Some of them reported "not run" because of missing requirements (e.g. TC 369:  [not run] Perl PCP::LogImport module is not installed), and such behavior makes sense to me. pcp-pmda-news was *not* installed, and TC 416 produced hard fail:

[79%] 416 - output mismatch (see 416.out.bad)

:: [  BEGIN   ] :: Running 'diff -urN /var/lib/pcp/testsuite/416.out /var/lib/pcp/testsuite/416.out.bad'
--- /var/lib/pcp/testsuite/416.out	2016-01-15 11:15:32.000000000 -0500
+++ /var/lib/pcp/testsuite/416.out.bad	2016-01-26 13:03:07.881151012 -0500
@@ -1,66 +1,2 @@
 QA output created by 416
-dbpmda> open pipe PERL PCP_PMDAS_DIR/news/pmdanews.pl
-Start perl PMDA: PERL PCP_PMDAS_DIR/news/pmdanews.pl
-dbpmda> traverse news
-Metric: news
-   news.articles.count
-   news.articles.last
-   news.articles.total
-   news.readers.nnrpd
-   news.readers.rn
-   news.readers.trn
-   news.readers.vn
-   news.readers.xrn
-dbpmda> children news.articles
-Metric: news.articles
-       leaf count
-       leaf last
-       leaf total
-dbpmda> children news.articles.count
-Metric: news.articles.count
-dbpmda> pmid news.articles.total
-Metric: news.articles.total
-   28.0.201
-dbpmda> fetch news.articles.total
-PMID(s): 28.0.201
-pmResult dump from ADDR timestamp: 0.000000 TIMESTAMP numpmid: 1
-  28.0.201 (news.articles.total): numval: 1 valfmt: 0 vlist[]:
-   value 800 1.1210388e-42 0x320
-dbpmda> desc news.articles.count
-PMID: 28.0.301
-    Data Type: 32-bit unsigned int  InDom: 28.0 0x7000000
-    Semantics: instant  Units: count
-dbpmda> instance 28.0
-pmInDom: 28.0
-[  0] inst: 1 name: "comp.sys.sgi"
-[  1] inst: 2 name: "comp.sys.sgi.graphics"
-[  2] inst: 3 name: "comp.sys.sgi.hardware"
-[  3] inst: 4 name: "sgi.bad-attitude"
-[  4] inst: 5 name: "sgi.engr.all"
-dbpmda> fetch news.articles.count
-PMID(s): 28.0.301
-pmResult dump from ADDR timestamp: 0.000000 TIMESTAMP numpmid: 1
-  28.0.301 (news.articles.count): numval: 5 valfmt: 0 vlist[]:
-    inst [1 or ???] value 0 0 0x0
-    inst [2 or ???] value 0 0 0x0
-    inst [3 or ???] value 0 0 0x0
-    inst [4 or ???] value 700 9.8090893e-43 0x2bc
-    inst [5 or ???] value 100 1.4012985e-43 0x64
-dbpmda> profile 28.0 none
-dbpmda> profile 28.0 add 2
-dbpmda> profile 28.0 add 4
-dbpmda> getdesc on
-dbpmda> fetch news.articles.count
-PMID(s): 28.0.301
-pmResult dump from ADDR timestamp: 0.000000 TIMESTAMP numpmid: 1
-  28.0.301 (news.articles.count): numval: 2 valfmt: 0 vlist[]:
-    inst [2 or ???] value 0
-    inst [4 or ???] value 700
-dbpmda> close
-dbpmda> quit
-
-=== news.log ===
-Log for pmdanews on ...
-
-
-Log finished ...
+Where is /var/lib/pcp/pmdas/news?


Would it make sense to "fix" TC 416 that it won't run when news PMDA is not available? I suppose it does eventually find out ("Where is /var/lib/pcp/pmdas/news?"), would it be possible to realize such situation earlier, and gracefully quit as "not run"?


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

Only this set of pcp packages was installed.

pcp-3.10.9-5.el6.ppc64
pcp-conf-3.10.9-5.el6.ppc64
pcp-libs-3.10.9-5.el6.ppc64
pcp-libs-devel-3.10.9-5.el6.ppc64
pcp-testsuite-3.10.9-5.el6.ppc64
python-pcp-3.10.9-5.el6.ppc64


How reproducible:


Steps to Reproduce:
1.
2.
3.

Actual results:


Expected results:


Additional info:

Comment 1 Lukas Berk 2016-01-29 15:32:14 UTC
Hey Miloš,

Thanks for catching this, and your suggestion is precisely correct, we need a 'notrun' test checking for the actual pmdanews.pl itself.

I've added this commit to my upstream branch (should be picked up in master eventually).  Should be easy to backport if required.

ec24477151b7e0737b8fea2d24d9e585d91c3831

qa/416 add notrun install test for the pmda itself

Previously we only checked that perl bindings were installed.  With the
pmda subrpms, we should also check that the pmda itself is installed

Comment 3 Miloš Prchlík 2016-02-24 15:14:22 UTC
Verified for build pcp-3.10.9-6.el6.

Comment 5 errata-xmlrpc 2016-05-10 21:13:36 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://rhn.redhat.com/errata/RHBA-2016-0825.html


Note You need to log in before you can comment on or make changes to this bug.