fabric-testbed / InformationModel

FABRIC Information Model library
MIT License
7 stars 1 forks source link

1.3 race fix #141

Closed ibaldin closed 1 year ago

ibaldin commented 1 year ago

This addresses #131 by adding locking around sensitive parts of NetworkXPropertyGraph and NetworkXPropertyGraphDisjoint storage implementations. Both are equivalent and for now the NetworkXPropertyGraph still remains the default for when you create an ExperimentTopology(). If the other backend is desired (there probably isn't really a compelling reason to do it, but..):

from fim.graph.networkx_property_graph_disjoint import NetworkXGraphImporterDisjoint

t = fu.ExperimentTopology(importer=NetworkXGraphImporterDisjoint())

will create an experiment topology with a disjoint back end. As I mentioned - there won't be any performance improvement, I don't think since both the usual and the disjoint back ends have locking now.

This is pushed to PyPi as fim-1.3.3