[graph-tool-tickets] [graph-tool] Ticket #86: "Error: agstrfree lost'' while using graph_tool.draw.draw_graph in multithreaded app

graph-tool webmaster at skewed.de
Wed Jan 25 13:45:02 UTC 2012


#86: "Error: agstrfree lost'' while using graph_tool.draw.draw_graph in multithreaded app
new defect
---------------------------------------------------------------------
Reporter: ujujinsan
Owner: tiago peixoto
Priority: minor
Milestone: (None)
---------------------------------------------------------------------
Changes (by tiago peixoto (2)): 

 * Description:
 First of all I am not sure whether it's a defect or anything, but
 please read on:
 
 I am using graph_tool extensively in my project, and I recently
 added creating
 graphs in threads(thousands of graphs). During graph creation
 graph_tool.draw.draw_graph is called in order to acquire node
 location which is used later on.
 
 After adding threading I get:
 'Error: agstrfree lost'
 
 For example:
 {{{
 Error: agstrfree lost \N
 Error: agstrfree lost 0.3
 Error: agstrfree lost #a40000
 Error: agstrfree lost 0.105
 Error: agstrfree lost 0.3
 Error: agstrfree lost 0.105
 Error: agstrfree lost 1.0
 Error: agstrfree lost 8.0
 Error: agstrfree lost 0.105
 Error: agstrfree lost 0.3
 Error: agstrfree lost \N
 Error: agstrfree lost vee
 Error: agstrfree lost 1.0
 Error: agstrfree lost 8.0
 Error: agstrfree lost \N
 ....
 After many more lines
 Boooom! --- Crash
 }}}
 
 I pinpointed the error to graph_tool.draw.draw_graph as the hex
 values were suspicious :3
 I made some locks around that function call and all works
 flawlessly.
 
 graphviz   version : 2.26.3 (20100126.1600)[[br]]
 graph_tool version : 2.15
 
 When I have some spare time I'll work on a minimal example.
 But in the mean time any suggestions?
 Maybe draw_graph just isn't thread-safe?

--
Ticket URL: <URL:http://graph-tool.skewed.de/ticket/86>
graph-tool <URL:http://graph-tool.skewed.de/>
An efficient python module for graph analysis and manipulation.


More information about the graph-tool-tickets mailing list