That's not how the Python version of the IDL is meant to be used. SchemaHelper operates on the schema that the client *wants*, not on the schema that the database server *has*. That's why it reads the schema from a local disk file by default. If Neutron does something else then it should probably be changed.
On Mon, Feb 29, 2016 at 08:06:33AM +0000, Ofer Ben-Yacov wrote: > Take a loot at the contractor of IDL: > > ... > def __init__(self, remote, schema): > ... > > > You can see that it gets schema as a parameter, which is actually > SchemaHelper object: > > ... > assert isinstance(schema, SchemaHelper) > ... > > > This object holds the schema in a json string (schema_json) until you will > call its register_columns function which will build the tables. > > You can see that the IDL, when first built, is getting the schema which > means that the OVSDB server was already connected beforehand to get it. > > If you should like to know how this is done, you can look at Neutron's > idlutils.py file and check the get_schema_helper() function. > > You can see that it gets the schema name as a parameter, connects to the > OVSDB, get the schema, close the connection and > return SchemaHelper object to be used for the above. > > > Note that after this patch will be committed, I'm going to send a patch to > Neutron to add another function similar to get_schema_helper() with the > the deference that it will get stream (open connection to the OVSDB server) > as a parameter and get the schema from the server without closing it when > done. > > Ofer. > > > > > > > > > בתאריך שבת, 27 בפבר׳ 2016 ב-3:13 מאת Ben Pfaff <b...@ovn.org>: > > > On Wed, Feb 24, 2016 at 08:39:02AM +0000, Ofer Ben-Yacov wrote: > > > The current implementation IDL is: > > > 1. connects to the OVSDB > > > 2. get the schema and > > > 3. disconnect > > > 4. connect again to work with the OVSDB server. > > > > I don't understand--where do you see that behavior? I can't spot it > > anywhere. The code I see in python/ovs/db/idl.py doesn't seem to do > > anything like it. > > _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev