From a33f40ec21ac9c429d0453cfc37528973daac91f Mon Sep 17 00:00:00 2001 From: licanwei Date: Fri, 26 May 2017 14:13:59 +0800 Subject: [PATCH] Deleted audit record still get by 'audit list'cmd Audit record was deleted but the field 'state' maybe not set DELETED. get_audit_list's filter used field 'state' will get wrong result. filter rule should use field 'deleted_at' instead of field 'state'. get_action_list and get_action_plan_list have the same filter rule. Change-Id: I08b2a005ca5fb7c2741ac5ed97c6e6b4279758ed Closes-Bug: #1693666 --- watcher/db/sqlalchemy/api.py | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/watcher/db/sqlalchemy/api.py b/watcher/db/sqlalchemy/api.py index 75ae0370b..fba1afbde 100644 --- a/watcher/db/sqlalchemy/api.py +++ b/watcher/db/sqlalchemy/api.py @@ -649,8 +649,7 @@ class Connection(api.BaseConnection): query = self._set_eager_options(models.Audit, query) query = self._add_audits_filters(query, filters) if not context.show_deleted: - query = query.filter( - ~(models.Audit.state == objects.audit.State.DELETED)) + query = query.filter_by(deleted_at=None) return _paginate_query(models.Audit, limit, marker, sort_key, sort_dir, query) @@ -736,8 +735,7 @@ class Connection(api.BaseConnection): query = self._set_eager_options(models.Action, query) query = self._add_actions_filters(query, filters) if not context.show_deleted: - query = query.filter( - ~(models.Action.state == objects.action.State.DELETED)) + query = query.filter_by(deleted_at=None) return _paginate_query(models.Action, limit, marker, sort_key, sort_dir, query) @@ -817,9 +815,7 @@ class Connection(api.BaseConnection): query = self._set_eager_options(models.ActionPlan, query) query = self._add_action_plans_filters(query, filters) if not context.show_deleted: - query = query.filter( - ~(models.ActionPlan.state == - objects.action_plan.State.DELETED)) + query = query.filter_by(deleted_at=None) return _paginate_query(models.ActionPlan, limit, marker, sort_key, sort_dir, query)