On Tue, Oct 01, 2019 at 01:36:07PM +0200, Bjoern Walk wrote: > Daniel P. Berrangé <berrange@xxxxxxxxxx> [2019-09-30, 03:48PM +0100]: > > In this case, our existing C language for writing our production code is > > not well suited for the task we're applying it too. You could make an > > argument that the virt-host-validate could be written in Python, but > > I think it is preferred to keep all our deployable code written in > > compiled languages, leaving the scripting languages for our supporting > > build system. > > Any hard arguments on why that's preferential? I don't see a reasoning > as to not ship python code as many other project do just fine. The various core system tools which involve python have a history of poor performance. For example, we previously used "firewall-cmd" for talking to firewalld and it caused a massive performance hit, because of all the time spent during startup processing imported modules. This is seen again in OpenStack with its command line tools being so terribly slow - it takes 1.5 seconds just to load the client & do nothing. There's the classic difference of dynamic vs compiled languages where with the former many basic syntax errors don't appear until you hit them at runtime unless. Only mitigated if you invest a tonne of time in unit testing every possible codepath. Using compiled languages also enables us to share code between the tools and library. This would enable us to actually embed the host validation functionality into the virt driver, so its exposed as a normal API in libvirt. Regards, Daniel -- |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o- https://fstop138.berrange.com :| |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :| -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list