Page MenuHomePhabricator

interwiki.py fails with RuntimeError(dictionary changed)
Closed, ResolvedPublic

Description

ERROR: RuntimeError: dictionary changed size during iteration
Traceback (most recent call last):
  File ".\scripts\interwiki.py", line 2477, in main
    bot.run()
  File ".\scripts\interwiki.py", line 2115, in run
    self.queryStep()
  File ".\scripts\interwiki.py", line 2092, in queryStep
    self.oneQuery()
  File ".\scripts\interwiki.py", line 2087, in oneQuery
    subject.batchLoaded(self)
  File ".\scripts\interwiki.py", line 1115, in batchLoaded
    for page in self.pending:
  File "C:\pwb\GIT\core\pywikibot\tools\__init__.py", line 341, in __iter__
    yield from chain.from_iterable(self.data.values())
RuntimeError: dictionary changed size during iterationDump cs (wikipedia) appended.

Event Timeline

Xqt triaged this task as Medium priority.May 14 2021, 12:20 PM

Change 691167 had a related patch set uploaded (by Xqt; author: Xqt):

[pywikibot/core@master] [IMPR] interwiki: write traceback in -verbose mode

https://gerrit.wikimedia.org/r/691167

Change 691167 merged by jenkins-bot:

[pywikibot/core@master] [bugfix] Use dict for data container instead of defaultdict

https://gerrit.wikimedia.org/r/691167