fix a couple possible bugs.

This commit is contained in:
Nathan TeBlunthuis 2025-08-05 23:20:04 -07:00
parent bd8c30d80f
commit 9b3237014d

View File

@ -52,7 +52,7 @@ async def diff_async(differ, last_text, text):
return differ.inline_json_diff(last_text, text)
try:
result = await asyncio.wait_for(_diff(), DIFF_TIMEOUT)
except asyncio.TimeoutError as e:
except TimeoutError as e:
raise e
return result
@ -676,11 +676,11 @@ class WikiqParser:
if self.diff:
last_text = last_rev_text
new_diffs = []
for text in row_buffer["text"]:
for i, text in enumerate(row_buffer["text"]):
try:
diff = asyncio.run(diff_async(differ, last_text, text))
except asyncio.TimeoutError:
print(f"WARNING! wikidiff2 timeout for rev: {row_buffer['revid']}. Falling back to default limits.", file=sys.stderr)
except TimeoutError:
print(f"WARNING! wikidiff2 timeout for rev: {row_buffer['revid'][i]}. Falling back to default limits.", file=sys.stderr)
diff = fast_differ.inline_json_diff(last_text, text)
new_diffs.append(diff)
last_text = text
@ -711,6 +711,10 @@ class WikiqParser:
"Done: %s revisions and %s pages." % (rev_count, page_count),
file=sys.stderr,
)
if self.partition_namespaces is True:
for writer in pq_writers.values():
writer.close()
else:
writer.close()