sonames error when updating

Offen
#342 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Maintainer antworten meist innerhalb von 1 Tag

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Anfängerfreundlichkeit
35/100
Issue-Typ
Bug
Klarheit
Muss geklärt werden
Aktivitätsstatus
Veraltet
Tech-Stack
django, postgresql, python
Bereich
backend, databases

Rechercherichtung

Beginne in devel/management/commands/readlinks.py bei read_links und Soname.objects.bulk_create und verfolge dann den Callback durch readlinks_inotify.py und archweb_inotify.py. Reproduziere das Update und untersuche die Fremdschlüsselbeziehung von packages; abgeschlossen ist die Aufgabe, wenn das Update ohne den gemeldeten IntegrityError abgeschlossen wird.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

Apr 28 21:26:51 gemini.archlinux.org python[117262]: Traceback (most recent call last):
Apr 28 21:26:51 gemini.archlinux.org python[117262]:   File "/srv/http/archweb/env/lib/python3.9/site-packages/django/db/backends/base/base.py", line 242, in _commit
Apr 28 21:26:51 gemini.archlinux.org python[117262]:     return self.connection.commit()
Apr 28 21:26:51 gemini.archlinux.org python[117262]: psycopg2.errors.ForeignKeyViolation: insert or update on table "main_soname" violates foreign key constraint "main_soname_pkg_id_6ff0ad5b_fk_packages_id"
Apr 28 21:26:51 gemini.archlinux.org python[117262]: DETAIL:  Key (pkg_id)=(550173) is not present in table "packages".
Apr 28 21:26:51 gemini.archlinux.org python[117262]: The above exception was the direct cause of the following exception:
Apr 28 21:26:51 gemini.archlinux.org python[117262]: Traceback (most recent call last):
Apr 28 21:26:51 gemini.archlinux.org python[117262]:   File "/usr/lib/python3.9/multiprocessing/process.py", line 315, in _bootstrap
Apr 28 21:26:51 gemini.archlinux.org python[117262]:     self.run()
Apr 28 21:26:51 gemini.archlinux.org python[117262]:   File "/usr/lib/python3.9/multiprocessing/process.py", line 108, in run
Apr 28 21:26:51 gemini.archlinux.org python[117262]:     self._target(*self._args, **self._kwargs)
Apr 28 21:26:51 gemini.archlinux.org python[117262]:   File "/srv/http/archweb/devel/management/commands/archweb_inotify.py", line 76, in run
Apr 28 21:26:51 gemini.archlinux.org python[117262]:     self.callback_func(self.arch, self.path, {})
Apr 28 21:26:51 gemini.archlinux.org python[117262]:   File "/srv/http/archweb/devel/management/commands/readlinks_inotify.py", line 22, in wrapper_read_links
Apr 28 21:26:51 gemini.archlinux.org python[117262]:     read_links(filepath)
Apr 28 21:26:51 gemini.archlinux.org python[117262]:   File "/srv/http/archweb/devel/management/commands/readlinks.py", line 98, in read_links
Apr 28 21:26:51 gemini.archlinux.org python[117262]:     Soname.objects.bulk_create(sonames)
Apr 28 21:26:51 gemini.archlinux.org python[117262]:   File "/srv/http/archweb/env/lib/python3.9/site-packages/django/db/models/manager.py", line 85, in manager_method
Apr 28 21:26:51 gemini.archlinux.org python[117262]:     return getattr(self.get_queryset(), name)(*args, **kwargs)
Apr 28 21:26:51 gemini.archlinux.org python[117262]:   File "/srv/http/archweb/env/lib/python3.9/site-packages/django/db/models/query.py", line 523, in bulk_create
Apr 28 21:26:51 gemini.archlinux.org python[117262]:     obj_without_pk._state.db = self.db
Apr 28 21:26:51 gemini.archlinux.org python[117262]:   File "/srv/http/archweb/env/lib/python3.9/site-packages/django/db/transaction.py", line 246, in __exit__
Apr 28 21:26:51 gemini.archlinux.org python[117262]:     connection.commit()
Apr 28 21:26:51 gemini.archlinux.org python[117262]:   File "/srv/http/archweb/env/lib/python3.9/site-packages/django/utils/asyncio.py", line 26, in inner
Apr 28 21:26:51 gemini.archlinux.org python[117262]:     return func(*args, **kwargs)
Apr 28 21:26:51 gemini.archlinux.org python[117262]:   File "/srv/http/archweb/env/lib/python3.9/site-packages/django/db/backends/base/base.py", line 266, in commit
Apr 28 21:26:51 gemini.archlinux.org python[117262]:     self._commit()
Apr 28 21:26:51 gemini.archlinux.org python[117262]:   File "/srv/http/archweb/env/lib/python3.9/site-packages/django/db/backends/base/base.py", line 242, in _commit
Apr 28 21:26:51 gemini.archlinux.org python[117262]:     return self.connection.commit()
Apr 28 21:26:51 gemini.archlinux.org python[117262]:   File "/srv/http/archweb/env/lib/python3.9/site-packages/django/db/utils.py", line 90, in __exit__
Apr 28 21:26:51 gemini.archlinux.org python[117262]:     raise dj_exc_value.with_traceback(traceback) from exc_value
Apr 28 21:26:51 gemini.archlinux.org python[117262]:   File "/srv/http/archweb/env/lib/python3.9/site-packages/django/db/backends/base/base.py", line 242, in _commit
Apr 28 21:26:51 gemini.archlinux.org python[117262]:     return self.connection.commit()
Apr 28 21:26:51 gemini.archlinux.org python[117262]: django.db.utils.IntegrityError: insert or update on table "main_soname" violates foreign key constraint "main_soname_pkg_id_6ff0ad5b_fk_packages_id"
Apr 28 21:26:51 gemini.archlinux.org python[117262]: DETAIL:  Key (pkg_id)=(550173) is not present in table "packages".
Vorherrschende Sprache
JavaScript
Sterne
392
Forks
157
Ø Merge
14 Std. 33 Min.
Gemergte PRs (30 T.)
19

Entwicklungsumgebung

Dieses Projekt bietet weder Dev-Container noch Dockerfile noch Beitragsleitfaden – die Einrichtung liegt bei Ihnen. Beginnen Sie mit der README; die allgemeinen Schritte stehen in unserem Leitfaden für den ersten Beitrag.

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus archlinux/archweb

Alle Issues in archlinux/archweb

Ähnliche Issues

Weitere Issues zu JavaScript

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.