You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airflow.apache.org by "Ash Berlin-Taylor (JIRA)" <ji...@apache.org> on 2019/07/26 14:26:00 UTC
[jira] [Commented] (AIRFLOW-5050) `airflow sync_perm` failes with
constraint error after upgrade
[ https://issues.apache.org/jira/browse/AIRFLOW-5050?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16893858#comment-16893858 ]
Ash Berlin-Taylor commented on AIRFLOW-5050:
--------------------------------------------
The problem rows in question:
{noformat}
ecliptical_perigee_3491_airflow=> select * from ab_permission_view where permission_id is NULL or view_menu_id is NULL;
id | permission_id | view_menu_id
-----+---------------+--------------
57 | | 21
112 | | 24
183 | | 44
(3 rows)
ecliptical_perigee_3491_airflow=> select * from ab_permission_view_role where
id permission_view_id role_id
ecliptical_perigee_3491_airflow=> select * from ab_permission_view_role where permission_view_id = 57;
id | permission_view_id | role_id
----+--------------------+---------
44 | 57 | 1
{noformat}
> `airflow sync_perm` failes with constraint error after upgrade
> --------------------------------------------------------------
>
> Key: AIRFLOW-5050
> URL: https://issues.apache.org/jira/browse/AIRFLOW-5050
> Project: Apache Airflow
> Issue Type: Bug
> Components: webserver
> Affects Versions: 1.10.4
> Reporter: Ash Berlin-Taylor
> Priority: Major
>
> Running {{airflow sync_perm}} after upgrading from 1.10.3 to 1.10.4rc3 yields this error:
> {noformat}
> [2019-07-26 14:05:08,160] {security.py:446} INFO - Start syncing user roles.
> [2019-07-26 14:05:08,740] {security.py:357} INFO - Fetching a set of all permission, view_menu from FAB meta-table
> [2019-07-26 14:05:09,495] {security.py:307} INFO - Cleaning faulty perms
> Traceback (most recent call last):
> File "/usr/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1244, in _execute_context
> cursor, statement, parameters, context
> File "/usr/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 552, in do_execute
> cursor.execute(statement, parameters)
> psycopg2.IntegrityError: update or delete on table "ab_permission_view" violates foreign key constraint "ab_permission_view_role_permission_view_id_fkey" on table "ab_permission_view_role"
> DETAIL: Key (id)=(57) is still referenced from table "ab_permission_view_role".
> The above exception was the direct cause of the following exception:
> Traceback (most recent call last):
> File "/usr/bin/airflow", line 32, in <module>
> args.func(args)
> File "/usr/lib/python3.6/site-packages/airflow/utils/cli.py", line 74, in wrapper
> return f(*args, **kwargs)
> File "/usr/lib/python3.6/site-packages/airflow/bin/cli.py", line 1472, in sync_perm
> appbuilder = cached_appbuilder()
> File "/usr/lib/python3.6/site-packages/airflow/www_rbac/app.py", line 237, in cached_appbuilder
> cached_app(config=config, testing=testing)
> File "/usr/lib/python3.6/site-packages/airflow/www_rbac/app.py", line 230, in cached_app
> app, _ = create_app(config, session, testing)
> File "/usr/lib/python3.6/site-packages/airflow/www_rbac/app.py", line 190, in create_app
> security_manager.sync_roles()
> File "/usr/lib/python3.6/site-packages/astronomer/flask_appbuilder/security.py", line 278, in sync_roles
> super().sync_roles()
> File "/usr/lib/python3.6/site-packages/airflow/www_rbac/security.py", line 460, in sync_roles
> self.clean_perms()
> File "/usr/lib/python3.6/site-packages/airflow/www_rbac/security.py", line 316, in clean_perms
> deleted_count = pvms.delete()
> File "/usr/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 3696, in delete
> delete_op.exec_()
> File "/usr/lib/python3.6/site-packages/sqlalchemy/orm/persistence.py", line 1691, in exec_
> self._do_exec()
> File "/usr/lib/python3.6/site-packages/sqlalchemy/orm/persistence.py", line 1919, in _do_exec
> self._execute_stmt(delete_stmt)
> File "/usr/lib/python3.6/site-packages/sqlalchemy/orm/persistence.py", line 1696, in _execute_stmt
> self.result = self.query._execute_crud(stmt, self.mapper)
> File "/usr/lib/python3.6/site-packages/sqlalchemy/orm/query.py", line 3363, in _execute_crud
> return conn.execute(stmt, self._params)
> File "/usr/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 988, in execute
> return meth(self, multiparams, params)
> File "/usr/lib/python3.6/site-packages/sqlalchemy/sql/elements.py", line 287, in _execute_on_connection
> return connection._execute_clauseelement(self, multiparams, params)
> File "/usr/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1107, in _execute_clauseelement
> distilled_params,
> File "/usr/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1248, in _execute_context
> e, statement, parameters, cursor, context
> File "/usr/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1466, in _handle_dbapi_exception
> util.raise_from_cause(sqlalchemy_exception, exc_info)
> File "/usr/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 398, in raise_from_cause
> reraise(type(exception), exception, tb=exc_tb, cause=cause)
> File "/usr/lib/python3.6/site-packages/sqlalchemy/util/compat.py", line 152, in reraise
> raise value.with_traceback(tb)
> File "/usr/lib/python3.6/site-packages/sqlalchemy/engine/base.py", line 1244, in _execute_context
> cursor, statement, parameters, context
> File "/usr/lib/python3.6/site-packages/sqlalchemy/engine/default.py", line 552, in do_execute
> cursor.execute(statement, parameters)
> sqlalchemy.exc.IntegrityError: (psycopg2.IntegrityError) update or delete on table "ab_permission_view" violates foreign key constraint "ab_permission_view_role_permission_view_id_fkey" on table "ab_permission_view_role"
> DETAIL: Key (id)=(57) is still referenced from table "ab_permission_view_role".
> [SQL: DELETE FROM ab_permission_view WHERE ab_permission_view.permission_id IS NULL OR ab_permission_view.view_menu_id IS NULL]
> (Background on this error at: http://sqlalche.me/e/gkpj)
> {noformat}
--
This message was sent by Atlassian JIRA
(v7.6.14#76016)