From 831c1e32044bab49e5f64137fd9cef54aea8759c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20P=C3=A9ters?= Date: Fri, 18 May 2018 12:26:55 +0200 Subject: [PATCH] sql: always rebuild security attributes of formdata in the same order (#23918) --- wcs/sql.py | 2 +- wcs/workflows.py | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/wcs/sql.py b/wcs/sql.py index add8dd2a..2fc6001a 100644 --- a/wcs/sql.py +++ b/wcs/sql.py @@ -1554,7 +1554,7 @@ class SqlFormData(SqlMixin, wcs.formdata.FormData): @classmethod def rebuild_security(cls): - formdatas = cls.select() + formdatas = cls.select(order_by='id') conn, cur = get_connection_and_cursor() for formdata in formdatas: sql_statement = '''UPDATE %s diff --git a/wcs/workflows.py b/wcs/workflows.py index 7f54f032..2171eb2f 100644 --- a/wcs/workflows.py +++ b/wcs/workflows.py @@ -347,7 +347,8 @@ class Workflow(StorableObject): def update(job=None): # instruct all related formdefs to update. - for form in FormDef.select(lambda x: x.workflow_id == self.id, ignore_migration=True): + for form in FormDef.select(lambda x: x.workflow_id == self.id, + ignore_migration=True, order_by='id'): form.data_class().rebuild_security() if must_update: form.rebuild() -- 2.17.0