I’m posting a message here as I found no disccusion here or within TWIF news.
It seems there was an issue with the Requests For Packaging pipelines for a few weeks and that the F-Droid Bot wasn’t going through Work Items as expected.
The pipeline was fixed and roughly the last three weeks issues and todos have been processed recently. But older work items (~40 issues/todos between 3 weeks to a month old) seems to be stuck in this process.
Is there a reason or is there any action to make that I missed? Thanks!
I think I have identified two problems in the process from the last job.
A new pipeline was triggered by issue 4043 which created this job 14977842398. It processed some issues but in this job logs line 281 :
/builds/fdroid/rfp/./issuebot.py:403: UserWarning: Calling a `list()` method without specifying `get_all=True` or `iterator=True` will return a maximum of 100 items. Your query returned 100 of 1113 items. See https://python-gitlab.readthedocs.io/en/v4.9.0/api-usage.html#pagination for more details.
The REST API limitation for the per_page is max 100 so this may explain why the issues stacked while the pipeline was down and when it was fixed it didn’t go through all the issues as there where more than 100 if I understand it correctly.
During the following logs, starting line 1450 it times out after 30mn due to issue 3479 which is pending for 5 months.
subprocess.TimeoutExpired: Command '['/builds/fdroid/rfp/modules/active-hostnames.py']' timed out after 1800 seconds
Due to this issue it stopped the job and never went further which blocks all the other pending issues in the Request For Packaging repo.
Also a few hours ago, job 14973739701 ran into the exact problem with the same issue.
@Licaon_Kter is it possible to make a quick fix with issue 3479 in order to process the pending issues ?
When you added & removed the label it seems it started three jobs simultaneously and the times they check the running pipelines they conflict themselves as they are all running at the same time they stop when checking jq length.
I’ve not searched the feasibility but maybe instead of checking if there are multiple running pipelines it should check the oldest running pipeline which will prevent this kind of concurrency. I don’t know the global scope so maybe it’s not the best idea.
Unfortunately the issue 3479 seems to still block the process.
Good news is, new issues are still being processed correctly even if the job failed when reaching issue 3479.
Regarding the issue 3479, it seems the repo contains large .dex files, would this explain why the active-hostnames.py times out?
find extracted_apk -type f -exec du -sh {} + | sort -rh | head -n 5
31M extracted_apk/classes.dex
9.6M extracted_apk/classes2.dex
904K extracted_apk/lib/arm64-v8a/librasp_detector.so
876K extracted_apk/lib/x86_64/librasp_detector.so
872K extracted_apk/lib/x86/librasp_detector.so