Hi,
when "git push"ing updates to Fedora's git, I am currently encountering
this
kind of tracebacks:
$ git push
Total 0 (delta 0), reused 0 (delta 0)
remote: Emitting a message to the fedmsg bus.
remote: * Publishing information for 1 commits
remote: Traceback (most recent call last):
remote: File "/usr/lib/python2.7/site-packages/pagure/hooks/__init__.py",
line 394, in run_project_hooks
remote: changes=changes,
remote: File "/usr/lib/python2.7/site-packages/pagure/hooks/__init__.py",
line 111, in runhook
remote: changes=changes,
remote: File "/usr/lib/python2.7/site-packages/pagure/hooks/default.py",
line 336, in post_receive
remote: but_uids=pr_uids,
remote: File "/usr/lib/python2.7/site-packages/celery/local.py", line 191,
in __call__
remote: return self._get_current_object()(*a, **kw)
remote: File "/usr/lib/python2.7/site-packages/celery/app/task.py", line
375, in __call__
remote: return self.run(*args, **kwargs)
remote: File "/usr/lib/python2.7/site-packages/pagure/lib/tasks_utils.py",
line 36, in decorated_function
remote: return function(self, session, *args, **kwargs)
remote: File "/usr/lib/python2.7/site-packages/pagure/lib/tasks.py", line
700, in refresh_pr_cache
remote: session, project, but_uids=but_uids
remote: File "/usr/lib/python2.7/site-packages/pagure/lib/query.py", line
3318, in reset_status_pull_request
remote: {model.PullRequest.merge_status: None},
synchronize_session=False
remote: File "/usr/lib64/python2.7/site-packages/sqlalchemy/orm/query.py",
line 2796, in update
remote: update_op.exec_()
remote: File
"/usr/lib64/python2.7/site-packages/sqlalchemy/orm/persistence.py", line
897, in exec_
remote: self._do_exec()
remote: File
"/usr/lib64/python2.7/site-packages/sqlalchemy/orm/persistence.py", line
995, in _do_exec
remote: update_stmt, params=self.query._params)
remote: File
"/usr/lib64/python2.7/site-packages/sqlalchemy/orm/session.py", line 991, in
execute
remote: bind, close_with_result=True).execute(clause, params or {})
remote: File
"/usr/lib64/python2.7/site-packages/sqlalchemy/engine/base.py", line 729, in
execute
remote: return meth(self, multiparams, params)
remote: File
"/usr/lib64/python2.7/site-packages/sqlalchemy/sql/elements.py", line 322,
in _execute_on_connection
remote: return connection._execute_clauseelement(self, multiparams,
params)
remote: File
"/usr/lib64/python2.7/site-packages/sqlalchemy/engine/base.py", line 826, in
_execute_clauseelement
remote: compiled_sql, distilled_params
remote: File
"/usr/lib64/python2.7/site-packages/sqlalchemy/engine/base.py", line 958, in
_execute_context
remote: context)
remote: File
"/usr/lib64/python2.7/site-packages/sqlalchemy/engine/base.py", line 1159,
in _handle_dbapi_exception
remote: exc_info
remote: File
"/usr/lib64/python2.7/site-packages/sqlalchemy/util/compat.py", line 199, in
raise_from_cause
remote: reraise(type(exception), exception, tb=exc_tb)
remote: File
"/usr/lib64/python2.7/site-packages/sqlalchemy/engine/base.py", line 951, in
_execute_context
remote: context)
remote: File
"/usr/lib64/python2.7/site-packages/sqlalchemy/engine/default.py", line 436,
in do_execute
remote: cursor.execute(statement, parameters)
remote: ProgrammingError: (ProgrammingError) permission denied for relation
pull_requests
remote: 'UPDATE pull_requests SET merge_status=%(merge_status)s,
last_updated=%(last_updated)s WHERE pull_requests.project_id =
%(project_id_1)s AND pull_requests.status = %(status_1)s' {'project_id_1':
14960, 'last_updated': datetime.datetime(2019, 3, 6, 3, 55, 50, 495151),
'merge_status': None, 'status_1': u'Open'}
remote: Sending to redis to send commit notification emails
remote: * Publishing information for 1 commits
remote:
remote: Create a pull-request for f30
remote:
https://src.fedoraproject.org/rpms/perl-Pod-Tests/diff/master..f30
remote:
To
ssh://pkgs.fedoraproject.org/rpms/perl-Pod-Tests
723ef5b..e29a00d f30 -> f30
What's going on here?
It's known and can be ignored. Basically, the hook only has read access to the
database in dist-git and tries to write to it. This isn't an issue on pagure.io
and it comes down to how dist-git was setup years ago.
There is no fix known yet but it is in our radar and to be fixed.
Sorry for the inconvenience,
Pierre