On 9/23/21 22:51, Dumitru Ceara wrote: > On 9/23/21 2:13 AM, Ilya Maximets wrote: >> ovsdb-server spends a lot of time cloning atoms for various reasons, >> e.g. to create a diff of two rows or to clone a row to the transaction. >> All atoms, except for strings, contains a simple value that could be >> copied in efficient way, but duplicating strings every time has a >> significant performance impact. >> >> Introducing a new reference-counted structure 'ovsdb_atom_string' >> that allows to not copy strings every time, but just increase a >> reference counter. > > Hi Ilya, > > This is great and definitely improves performance in my tests! > >> >> Changes in ovsdb/ovsdb-idlc.in are a bit brute-force-like, but I >> didn't manage to write anything better. And this part is very hard >> to understand and debug, so maybe it's better to keep it in this >> more or less understandable shape. > > After spending some time trying to refactor this a bit and after our > offline discussion ovsdbc-idlc.in can be improved a bit. Please see > the incremental down below.
That's cool! Thanks for improving this part! > > I also have a tiny nit in ovsdb-data.h. > > With these addressed: > > Acked-by: Dumitru Ceara <[email protected]> Thanks, Mark and Dumitru! I folded suggested changes in and applied the patch. Best regards, Ilya Maximets. _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
