Bug 624690

Summary: Enable and fix testsuite in graphviz
Product: Red Hat Enterprise Linux 6 Reporter: Michal Nowak <mnowak>
Component: graphvizAssignee: Jaroslav Škarvada <jskarvad>
Status: CLOSED ERRATA QA Contact: BaseOS QE - Apps <qe-baseos-apps>
Severity: medium Docs Contact:
Priority: low    
Version: 6.0CC: jskarvad, lzachar, ohudlick, rvokal
Target Milestone: rc   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: graphviz-2.26.0-5.el6 Doc Type: Bug Fix
Doc Text:
The graphviz test suite was disabled on the PowerPC, 64-bit PowerPC and SPARC64 architectures due to unexpected terminations with segmentation faults. The test code used in the test suite did not set the TextLayout plugin correctly, which led to the crash of the test suite. This has been fixed on all architectures.
Story Points: ---
Clone Of:
: 645703 (view as bug list) Environment:
Last Closed: 2011-07-20 12:27:30 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
Proposed SIGSEGVs fix
none
Proposed rtest fix
none
Proposed spec patch none

Description Michal Nowak 2010-08-17 13:56:54 UTC
Description of problem:

graphviz testsuite is enabled on some archs in spec file and thus on build time, however the testsuite fails in a lot of cases, e.g. on x86-64:

"""
+ make rtest
./rtest.sh
Test shapes:0 : == Failed == shapes_dot.gv
Test shapes:1 : == Failed == shapes_dot.ps
./rtest.sh[389]: doTest: line 279: 15415: Memory fault
Test crazy:0 : == Layout failed ==
  ../cmd/dot/dot_builtins -Kdot -Tpng  -ondata/crazy_dot.png graphs/crazy.gv
Test crazy:1 : == Failed == crazy_dot.ps
Test arrows:0 : == Failed == arrows_dot.gv
Test arrows:1 : == Failed == arrows_dot.ps
./rtest.sh[389]: doTest: line 279: 15485: Memory fault
[...]
"""

and is disabled for ppc*:

%check
%ifnarch ppc64 ppc sparc64
# regression test, segfaults on ppc/ppc64/sparc64, possible endian issues?
cd rtest
make rtest
%endif


It would be really helpful for QE if the testsuite passed and is enabled for all RHEL supported archs.

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

graphviz-2.26.0-4.el6

Comment 2 Jaroslav Škarvada 2010-10-22 09:03:53 UTC
Fixed SIGSEGVs and several other problems. But testsuite results are highly dependant on system configration / package versions used. The source data are processed by specially created test executable and the results are diffed with upstream supplied samples. Only one pixel shift will cause the test to fail. For now all tests are failing because the upstream samples seems to be a little outdated.

Comment 3 Jaroslav Škarvada 2010-10-22 09:06:49 UTC
Created attachment 455022 [details]
Proposed SIGSEGVs fix

Fix segfaults caused by wrong initialization.

Comment 4 Jaroslav Škarvada 2010-10-22 09:11:19 UTC
Created attachment 455023 [details]
Proposed rtest fix

Fix for counting differences even in case of error / warning output.

Comment 5 Jaroslav Škarvada 2010-10-22 09:14:11 UTC
Created attachment 455024 [details]
Proposed spec patch

Fix failure of testsuite caused by missing fonts in buildroot.

Comment 6 Jaroslav Škarvada 2010-10-22 09:39:43 UTC
Cloned to rawhide:
Bug #645703

Comment 7 Jaroslav Škarvada 2010-10-22 12:02:18 UTC
Forwarded upstream.

Comment 8 Jaroslav Škarvada 2010-10-26 08:46:10 UTC
Upstream bugzilla: http://graphviz.org/bugs/b2063.html

Comment 9 Jaroslav Škarvada 2010-11-03 14:20:14 UTC
After application of proposed patches the testsuite is valuable for detection of layout failures caused by dot crashes. These failures are marked as "Layout failures" in testsuite output. But the usability for regression testing (output figures comparison) is questionable even if we provide updated samples. One pixel shift in output figures (caused by e.g. fontconfig update) will cause tests to fail. These failures are marked as "Changes" in testsuite output. There is probably nothing we can easily do with these false positive failures (not counting testsuite rewrite). It seems the testsuite is designed to be run in "conserved" environment.

Comment 10 Suzanne Logcher 2011-02-15 21:41:59 UTC
This issue was proposed for RHEL 6.1 FasTrack but did not get resolved in time.
It has been moved to RHEL 6.2 FasTrack.

Comment 12 Suzanne Logcher 2011-02-15 22:05:25 UTC
This issue was proposed for RHEL 6.1 FasTrack but did not get resolved in time.
It has been moved to RHEL 6.2 FasTrack.

Comment 14 Eliska Slobodova 2011-07-14 14:53:00 UTC
    Technical note added. If any revisions are required, please edit the "Technical Notes" field
    accordingly. All revisions will be proofread by the Engineering Content Services team.
    
    New Contents:
The graphviz test suite was disabled on the PowerPC, 64-bit PowerPC and SPARC64 architectures due to unexpected terminations with segmentation faults. The test code used in the test suite did not set the TextLayout plugin correctly, which led to the crash of the test suite. This has been fixed and the test suite passes on all architectures.

Comment 16 Lukáš Zachar 2011-07-15 10:21:34 UTC
    Technical note updated. If any revisions are required, please edit the "Technical Notes" field
    accordingly. All revisions will be proofread by the Engineering Content Services team.
    
    Diffed Contents:
@@ -1 +1 @@
-The graphviz test suite was disabled on the PowerPC, 64-bit PowerPC and SPARC64 architectures due to unexpected terminations with segmentation faults. The test code used in the test suite did not set the TextLayout plugin correctly, which led to the crash of the test suite. This has been fixed and the test suite passes on all architectures.+The graphviz test suite was disabled on the PowerPC, 64-bit PowerPC and SPARC64 architectures due to unexpected terminations with segmentation faults. The test code used in the test suite did not set the TextLayout plugin correctly, which led to the crash of the test suite. This has been fixed on all architectures.

Comment 17 errata-xmlrpc 2011-07-20 12:27:30 UTC
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on therefore solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.

http://rhn.redhat.com/errata/RHBA-2011-0965.html