Skip Menu |

This queue is for tickets about the Graph-Easy CPAN distribution.

Report information
The Basics
Id: 29039
Status: open
Worked: 5 min
Priority: 0/
Queue: Graph-Easy

People
Owner: TELS [...] cpan.org
Requestors: mperilstein [...] trueposition.com
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: (no value)
Fixed in: (no value)



Subject: Non-terminating v0.57
Date: Tue, 28 Aug 2007 15:58:31 -0400
To: bug-Graph-Easy [...] rt.cpan.org
From: Mitchell Perilstein <mperilstein [...] trueposition.com>
Greets, This input will hang v0.57 under perl v5.8.8 built for i486-linux-gnu-thread-multi: graph { flow: south; } [0] -> [2] -> [3] -> [6] -> [10] [0] -> [3] [2] -> [10] [3] -> {start:west; end:west;} [10] [0] -> { end:east; } [6] [0] -> [10] Taking out the end:east; in 0->6 will let it terminate with a warning. I ran it like this: PERLDB_OPTS="NonStop frame=1 AutoTrace LineInfo=tperl.out" perl -d /usr/local/bin/graph-easy --verbose hangs.graph Breaking after about 10s gave stacktrace as below, with full trace attached. . = Graph::Easy::_straighten_path(ref(Graph::Easy), ref(ARRAY), ref(ARRAY), ref(Graph::Easy::Edge)) called from file `/usr/local/share/perl/5.8.8/Graph/Easy/Layout/Scout.pm' line 1353 $ = Graph::Easy::_astar(ref(Graph::Easy), ref(ARRAY), ref(ARRAY), ref(Graph::Easy::Edge), 3) called from file `/usr/local/share/perl/5.8.8/Graph/Easy/Layout/Scout.pm' line 1025 $ = Graph::Easy::_find_path_astar(ref(Graph::Easy), ref(Graph::Easy::Edge)) called from file `/usr/local/share/perl/5.8.8/Graph/Easy/Layout/Scout.pm' line 125 $ = Graph::Easy::_find_path(ref(Graph::Easy), ref(Graph::Easy::Node), ref(Graph::Easy::Node), ref(Graph::Easy::Edge)) called from file `/usr/local/share/perl/5.8.8/Graph/Easy/Layout/Path.pm' line 732 $ = Graph::Easy::_trace_path(ref(Graph::Easy), ref(Graph::Easy::Node), ref(Graph::Easy::Node), ref(Graph::Easy::Edge)) called from file `/usr/local/share/perl/5.8.8/Graph/Easy/Layout.pm' line 754 . = Graph::Easy::_layout(ref(Graph::Easy)) called from file `/usr/local/share/perl/5.8.8/Graph/Easy/Layout.pm' line 485 . = eval {...} called from file `/usr/local/share/perl/5.8.8/Graph/Easy/Layout.pm' line 472 . = Graph::Easy::layout(ref(Graph::Easy)) called from file `/usr/local/share/perl/5.8.8/Graph/Easy.pm' line 1536 @ = Graph::Easy::_as_ascii(ref(Graph::Easy)) called from file `/usr/local/share/perl/5.8.8/Graph/Easy.pm' line 1520 @ = Graph::Easy::as_ascii(ref(Graph::Easy)) called from file `/usr/local/bin/graph-easy' line 135 -- mitch Confidentiality Notice This e-mail (including any attachments) is intended only for the recipients named above. It may contain confidential or privileged information and should not be read, copied or otherwise used by any other person. If you are not a named recipient, please notify the sender of that fact and delete the e-mail from your system.
Download tperl.out.gz
application/x-gzip 189.1k

Message body not shown because it is not plain text.

Subject: Re: [rt.cpan.org #29039] Non-terminating v0.57
Date: Tue, 28 Aug 2007 22:51:26 +0200
To: bug-Graph-Easy [...] rt.cpan.org
From: Tels <nospam-abuse [...] bloodgate.com>
Hello, On Tuesday 28 August 2007 21:59:46 mperilstein@trueposition.com via RT wrote: Show quoted text
> Tue Aug 28 15:59:41 2007: Request 29039 was acted upon. > Transaction: Ticket created by mperilstein@trueposition.com > Queue: Graph-Easy > Subject: Non-terminating v0.57 > Broken in: (no value) > Severity: (no value) > Owner: Nobody > Requestors: mperilstein@trueposition.com > Status: new > Ticket <URL: http://rt.cpan.org/Ticket/Display.html?id=29039 > > > > Greets, > > This input will hang v0.57 under perl v5.8.8 built for > i486-linux-gnu-thread-multi: > > graph { > flow: south; > } > > [0] > -> [2] > -> [3] > -> [6] > -> [10] > [0] -> [3] > [2] -> [10] > [3] -> {start:west; end:west;} [10] > [0] -> { end:east; } [6] > [0] -> [10] > > > Taking out the end:east; in 0->6 will let it terminate with a warning.
Yes, that looks like an endless loop to me. And thanx for the nifty trick to get a trace. I'll have a look. All the best, Tels -- Signed on Tue Aug 28 22:49:53 2007 with key 0x93B84C15. View my photo gallery: http://bloodgate.com/photos PGP key on http://bloodgate.com/tels.asc or per email. "Elliot, Sie Schwachkopf!"
Download (untitled)
application/pgp-signature 481b

Message body not shown because it is not plain text.

On Tue Aug 28 16:49:14 2007, nospam-abuse@bloodgate.com wrote: Show quoted text
> Hello, >
The hang has been fixed with the Graph::Easy 0.59 release. However, the layout still does not complete and the reason for this is that a connection from [0] to [10] is laid out first and ends on the west side of [10], thus blocking the connection from [3] to [10] since there is only one port on the west side. This needs to be fixed in the layouter, which needs inhibit edges with no specific ports/sides from blocking other edges. (It's buried already somewhere deep in the TODO list) All the best, Tels