No longer push refs/changes to GitHub mirrors
By default gerrit replication pushes +refs/*:refs/*, which includes refs/changes. For large repositories that potentially means hundreds of thousands of references. Per-repo git mirroring does not push refs/changes, so when it runs it ends up deleting those references, which can take a long time, blocking the executor. To fix that, we should: - stop pushing refs/changes to GitHub (this change) - delete refs/changes on GitHub repositories, asynchronously - enable per-repo replication - disable Gerrit-wide replication NB: it is unclear if Gerrit replication would start deleting the extraneous references on remote GitHub repositories once this merges. If this is the case, since replication is limited to a single thread (default value for 'threads') and is not happening in an executor, this should not have negative impact, beyond potentially delaying GitHub mirroring. Change-Id: I94f69c889c9b4418ef81b3b2ca436ba99696ba72
This commit is contained in:
parent
4a9e839dd0
commit
6935318712
@ -9,6 +9,9 @@ gerrit_replication:
|
||||
- '^openstack/(?!ara$|ara-web$|ara-infra$).*'
|
||||
- 'openstack-dev/*'
|
||||
- 'openstack-infra/*'
|
||||
push:
|
||||
- '+refs/heads/*:refs/heads/*'
|
||||
- '+refs/tags/*:refs/tags/*'
|
||||
- name: 'gitea01'
|
||||
url: 'ssh://git@gitea01.opendev.org:222/'
|
||||
authGroup: 'Anonymous Users'
|
||||
|
@ -29,4 +29,9 @@ replicateOnStartup = false
|
||||
projects = {{ project }}
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
{% if 'push' in replication %}
|
||||
{% for refspec in replication.push %}
|
||||
push = {{ refspec }}
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
|
Loading…
x
Reference in New Issue
Block a user