Graphviz Issue Tracker - graphviz
View Issue Details
0002576graphvizDotpublic2015-10-21 16:052015-10-22 14:40
mcrussell90 
 
highcrashalways
newopen 
CentOS5.8
2.38.0
0002576: svg, png:cairo creation crashes for DOT files on some of our servers
I'm trying to get graphviz installed and running on several CentOS 5 servers with different install histories
.
The two commands we run are:
dot graphviz_test_10_21.dot -Tsvg > test.svg
dot graphviz_test_10_21.dot -Tpng:cairo > test.png

For 4/5 of the servers, this works fine.. But we found an issue w/ just one Server. When running dot we see:

failed at node 308[1]
dot: maze.c:315: chkSgraph: Assertion `np->cells[1]' failed.
Aborted
run:

dot graphviz_test_10_21.dot -Tsvg > test.svg
Could this be caused by combining ranksep, nodesep, and splines=ortho?
No tags attached.
dot graphviz_test_10_21.dot (6,196) 2015-10-21 16:05
http://www.graphviz.org/mantisbt/file_download.php?file_id=491&type=bug
? config6 (2,186) 2015-10-21 16:10
http://www.graphviz.org/mantisbt/file_download.php?file_id=492&type=bug
Issue History
2015-10-21 16:05mcrussell90New Issue
2015-10-21 16:05mcrussell90File Added: graphviz_test_10_21.dot
2015-10-21 16:10mcrussell90File Added: config6
2015-10-21 17:01ellsonNote Added: 0000992
2015-10-21 17:07ellsonNote Added: 0000993
2015-10-21 17:48mcrussell90Note Added: 0000994
2015-10-22 00:25ellsonNote Added: 0000995
2015-10-22 14:40mcrussell90Note Added: 0000996
2015-10-22 18:58mcrussell90Note Edited: 0000996bug_revision_view_page.php?bugnote_id=996#r274

Notes
(0000992)
ellson   
2015-10-21 17:01   
I think you're saying that processing *exactly* the same graph on five machines,
using, I assume, *exactly* the same version of graphviz, is failing on just one?

My first guess is that there is some variation in some low level libraries , such as libc or libm, across the 5 machines.

Is the glibc version the same on all machines?
Locally I see:
         # rpm -q glibc
         glibc-2.5-123.el5_11.3


Are you using graphviz from rpms? What version of graphviz?
(0000993)
ellson   
2015-10-21 17:07   
I see the graph imports images. The size of the images is taken into account during node sizing, so the images must be identical on all five systems for you to get the same layouts.

If there is variation in the image sizes, or if some are missing on some systems, then this could conceivably trigger a layout issue.
(0000994)
mcrussell90   
2015-10-21 17:48   
Thanks for the quick reply.

Yes, I am saying: processing *exactly* the same graph on five machines,
using, *exactly* the same version of graphviz, is failing on just one machine.

1.The images are identical on all systems

2. Locally, our glibc-2.5-107.el5_9.5

3. Running dot -v
dot - graphviz version 2.38.0 (20140413.2041)
libdir = "/usr/lib64/graphviz"
Activated plugin library: libgvplugin_dot_layout.so.6
Using layout: dot:dot_layout
Activated plugin library: libgvplugin_core.so.6
Using render: dot:core
Using device: dot:dot:core
The plugin configuration file:
        /usr/lib64/graphviz/config6
                was successfully loaded.
    render : cairo dot fig map pic pov ps svg tk vml xdot
    layout : circo dot fdp neato nop nop1 nop2 osage patchwork sfdp twopi
    textlayout : textlayout
    device : canon cmap cmapx cmapx_np dot eps fig gtk gv imap imap_np ismap pdf pic plain plain-ext png pov ps ps2 svg svgz tk vml vmlz x11 xdot xdot1.2 xdot1.4 xlib
    loadimage : (lib) eps gif jpe jpeg jpg png ps svg
(0000995)
ellson   
2015-10-22 00:25   
I still suspect some variation in dependent libs. Its in the ortho layout
code, so its probably not from rendering libraries like pango or cairo.
(Although they might still be involved in the image loading.)

Are you in a position to be able to: yum update
on all the machines?

Otherwise, perhaps Emden has some ideas?
(0000996)
mcrussell90   
2015-10-22 14:40   
(edited on: 2015-10-22 18:58)
I agree that it is probably some variation in dependent libs. One issue I have is that these DOT files are being generated dynamically. Even though the dependent libs differ- I wonder if there is some enumeration of a DOT graph configuration which will lead to an error in maze.c across a subset of the 5 machines

Not a chance in being able to use yum update on this unfortunately.

Would it be a safer alternative to remove splines=ortho ? I'd like to be able to guarantee we won't see breaking graphs based on layout issues like this.