From 3fb11bd84cc0796776f861bf1b5891247d78f41e Mon Sep 17 00:00:00 2001 From: Mehdi Abaakouk Date: Fri, 13 Dec 2013 16:56:43 +0100 Subject: [PATCH] Ensure that the user/project exist on alarm update This patch ensure that the user and project exists before updating the alarm. Closes bug #1260776 Change-Id: I25cf55d91b78a32bda671426972b7f418bf85e21 --- ceilometer/storage/impl_sqlalchemy.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/ceilometer/storage/impl_sqlalchemy.py b/ceilometer/storage/impl_sqlalchemy.py index 97d1666ba..d628f6059 100644 --- a/ceilometer/storage/impl_sqlalchemy.py +++ b/ceilometer/storage/impl_sqlalchemy.py @@ -733,6 +733,10 @@ class Connection(base.Connection): """ session = sqlalchemy_session.get_session() with session.begin(): + Connection._create_or_update(session, models.User, + alarm.user_id) + Connection._create_or_update(session, models.Project, + alarm.project_id) alarm_row = session.merge(models.Alarm(id=alarm.alarm_id)) alarm_row.update(alarm.as_dict())