Alon Bar-Lev has uploaded a new change for review. Change subject: packaging: setup: database: set vdc_options correctly ......................................................................
packaging: setup: database: set vdc_options correctly 1. insert/update based on already available option. 2. modify only requested version. Bug-Url: https://bugzilla.redhat.com/show_bug.cgi?id=1059411 Change-Id: Ibe020ef3b557a5af67ee2f40e7e72bd9fe920b47 Signed-off-by: Alon Bar-Lev <alo...@redhat.com> --- M packaging/setup/ovirt_engine_setup/database.py 1 file changed, 45 insertions(+), 8 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/72/23872/1 diff --git a/packaging/setup/ovirt_engine_setup/database.py b/packaging/setup/ovirt_engine_setup/database.py index 29178a1..6a3b0a8 100644 --- a/packaging/setup/ovirt_engine_setup/database.py +++ b/packaging/setup/ovirt_engine_setup/database.py @@ -228,7 +228,9 @@ options, ): for option in options: + name = option['name'] value = option['value'] + version = option.get('version', 'general') if option.get('encrypt', False): x509 = X509.load_cert( @@ -248,20 +250,55 @@ if isinstance(value, bool): value = 'true' if value else 'false' - self.execute( + res = self.execute( statement=""" - update vdc_options - set - option_value=%(value)s, + select count(*) as count + from vdc_options + where + option_name=%(name)s and version=%(version)s - where option_name=%(name)s """, args=dict( - name=option['name'], - value=value, - version=option.get('version', 'general'), + name=name, + version=version, ), ) + if res[0]['count'] == 0: + self.execute( + statement=""" + insert into vdc_options ( + option_name, + option_value, + version + ) + values ( + %(name)s, + %(value)s, + %(version)s + ) + """, + args=dict( + name=name, + version=version, + value=value, + ), + ) + else: + self.execute( + statement=""" + update vdc_options + set + option_value=%(value)s + where + option_name=%(name)s and + version=%(version)s + """, + args=dict( + name=name, + version=version, + value=value, + ), + ) @util.export -- To view, visit http://gerrit.ovirt.org/23872 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: Ibe020ef3b557a5af67ee2f40e7e72bd9fe920b47 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Alon Bar-Lev <alo...@redhat.com> _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches