Fix uncaught DB exception when trying to get a spare amphora
The MapLoadbalancerToAmphora task performs some database queries but doesn't catch any exception from it. In case something goes wrong with the database or the query, this commit catchs any exception from the DB call, logs it and then returns None to switch to the next decider branch (boot a new amphora). Story 2007320 Task 38831 Change-Id: Ifb6c34426e0927534d332a8bbf2c66aac6c002c5
This commit is contained in:
parent
bb0efa2a5d
commit
3bbd32a2a5
@ -529,10 +529,17 @@ class MapLoadbalancerToAmphora(BaseDatabaseTask):
|
||||
else:
|
||||
amp_az = CONF.nova.availability_zone
|
||||
|
||||
amp = self.amphora_repo.allocate_and_associate(
|
||||
db_apis.get_session(),
|
||||
loadbalancer_id,
|
||||
amp_az)
|
||||
try:
|
||||
amp = self.amphora_repo.allocate_and_associate(
|
||||
db_apis.get_session(),
|
||||
loadbalancer_id,
|
||||
amp_az)
|
||||
except Exception as e:
|
||||
LOG.error("Failed to get a spare amphora (AZ: {}) for "
|
||||
"loadbalancer {} due to: {}".format(
|
||||
amp_az, loadbalancer_id, e))
|
||||
return None
|
||||
|
||||
if amp is None:
|
||||
LOG.debug("No Amphora available for load balancer with id %s",
|
||||
loadbalancer_id)
|
||||
|
Loading…
Reference in New Issue
Block a user