central.update_status should be transactional

Central's update status method issues a large number of SQL
queries for large zones with many recent updates, as a result
it's checking out many connections from our connection pool one
after another, contributing to bug 1445123. By wrapping the
call in a transaction, a single connection will be checked out
of the pool.

Partial-Bug: 1445123
Change-Id: Idfde7578e1a17a6a0585835fe614f787102563fa
(cherry picked from commit ac79df1567)
This commit is contained in:
Kiall Mac Innes 2015-04-22 15:42:29 +01:00 committed by Kiall Mac Innes
parent d231d25c00
commit 2900cd391e
1 changed files with 1 additions and 0 deletions

View File

@ -2135,6 +2135,7 @@ class Service(service.RPCService, service.Service):
return pool
# Pool Manager Integration
@transaction
def update_status(self, context, domain_id, status, serial):
"""
:param context: Security context information.