summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2015-04-07 01:26:28 +0000
committerGerrit Code Review <review@openstack.org>2015-04-07 01:26:28 +0000
commit01cd91427fac7dd81bbdaf14a5820843a4355d45 (patch)
treed4dab1b983c013d6ad4f83c9bc558b9087c21f1e
parentc66e7ff864d0c1a57f86a2f2c13c105fb2f0b6a3 (diff)
parent267a81625f46ad9dd6d0f2ad6fe516c86820c9df (diff)
downloadtrove-01cd91427fac7dd81bbdaf14a5820843a4355d45.tar.gz
Merge "Avoid unnecessary restart of replication master"
-rw-r--r--trove/guestagent/datastore/mysql/service.py3
-rw-r--r--trove/guestagent/strategies/replication/mysql_base.py7
2 files changed, 6 insertions, 4 deletions
diff --git a/trove/guestagent/datastore/mysql/service.py b/trove/guestagent/datastore/mysql/service.py
index 50692956..99763aff 100644
--- a/trove/guestagent/datastore/mysql/service.py
+++ b/trove/guestagent/datastore/mysql/service.py
@@ -845,6 +845,9 @@ class MySqlApp(object):
if os.path.exists(cnf_file):
utils.execute_with_timeout("sudo", "rm", cnf_file)
+ def exists_replication_source_overrides(self):
+ return os.path.exists(MYCNF_REPLMASTER)
+
def write_replication_source_overrides(self, overrideValues):
self._write_replication_overrides(overrideValues, MYCNF_REPLMASTER)
diff --git a/trove/guestagent/strategies/replication/mysql_base.py b/trove/guestagent/strategies/replication/mysql_base.py
index 5ddc0dd5..ecb74d2b 100644
--- a/trove/guestagent/strategies/replication/mysql_base.py
+++ b/trove/guestagent/strategies/replication/mysql_base.py
@@ -108,10 +108,9 @@ class MysqlReplicationBase(base.Replication):
return snapshot_id, log_position
def enable_as_master(self, service, master_config):
- if not master_config:
- master_config = self._get_master_config()
- service.write_replication_source_overrides(master_config)
- service.restart()
+ if not service.exists_replication_source_overrides():
+ service.write_replication_source_overrides(master_config)
+ service.restart()
@abc.abstractmethod
def connect_to_master(self, service, snapshot):