Currently, since creating or updating a domain config is
done as a sequence of option creates/updates, it is possible
for other keystone threads/processes to see a partial update
if the cache timeout occurs in the middle of such an update.
This patch makes the creation/updating of a domain config
atomic (by doing it all within a common sql session), hence
avoiding this issue.
This issue has not been reported in the field - and is extremely
difficult to test, so we are relying on code inspection to
convince ourselves we have solved this issue.
Since the domain config API is still marked as experimental, we
do not gurantee backward compatability for the driver. Hence,
although this patch modifies the driver interface, it does not
include a new versioned driver.
Closes-bug: 1517038
Change-Id: I16598051ca456cf1c036c412111426b4cd9241b8