Transient DB Failure InjectionΒΆ

Neutron has a service plugin to inject random delays and Deadlock exceptions into normal Neutron operations. The service plugin is called ‘Loki’ and is located under neutron.services.loki.loki_plugin.

To enable the plugin, just add ‘loki’ to the list of service_plugins in your neutron-server neutron.conf file.

The plugin will inject a Deadlock exception on database flushes with a 1/50 probability and a delay of 1 second with a 1/200 probability when SQLAlchemy objects are loaded into the persistent state from the DB. The goal is to ensure the code is tolerant of these transient delays/failures that will be experienced in busy production (and Galera) systems.