-
Notifications
You must be signed in to change notification settings - Fork 22
Troubleshooting
If a repository gets into a bad state, the Issue Labeler workflows can be disabled using GitHub's Actions UI. This should only apply to the Labeler: Predict (Issues) and Labeler: Predict (Pulls) workflows, as they are automatically triggered as issues and pull request are opened.
If prediction is failing, go to the Actions page for the repository and select each of these workflows from the list on the left. Once selected, use the ··· button next to the "Filter workflow runs" text box in the upper-right of the page, and click Disable Workflow.
To get back to a fully clean state and prepare for a fresh re-training of the models, the Issue Labeler cache entries can be deleted using GitHub's UI. From the Actions page, click Caches in the lower left under the Management section. Delete some or all of the issue-labeler/
caches as needed. If the repository uses the Action Cache heavily for other purposes, entering key:issue-labeler
will filter the list to those created by the Issue Labeler.
These are the cache entries created by Issue Labeler:
- issue-labeler/data/issues/staged. The staged slot for raw issue data downloaded from GitHub by the Download action during training. This data is consumed by the Train action.
- issue-labeler/data/pulls/staged. The staged slot for raw pull request data downloaded from GitHub by the Download action during training. This data is consumed by the Train action.
- issue-labeler/model/issues/staged. The staged slot for the ML.NET issue model produced by the Train action. This model is consumed when Promote Models is used to copy a staged model into the ACTIVE slot.
- issue-labeler/model/pulls/staged. The staged slot for the ML.NET pull request model produced by the Train action. This model is consumed when Promote Models is used to copy a staged model into the ACTIVE slot.
- issue-labeler/model/issues/ACTIVE. The ACTIVE ML.NET issue model used by the Predict action.
- issue-labeler/model/pulls/ACTIVE. The ACTIVE ML.NET pull request model used by the Predict action.
Additional entries with backup suffixes will be created if training or promotion is performed and the destination cache entry already existed. In that case, any prior backup entry will be deleted and replaced by the new backup.
GitHub automatically evicts/deletes cache entries that are not used for 7 days. Because no processes consume the /data/ cache entries after training is completed, those entries will be automatically evicted 7 days after training is conducted. /staged and /backup entries will also be evicted after 7 days automatically.
The issue-labeler/model/issues/ACTIVE, and issue-labeler/model/pulls/ACTIVE cache entries are what keep the system running and these should never be evicted automatically, but they can be deleted if the Issue Labeler is malfunctioning and the onboarding steps need to be followed again.
For low-volume repositories that could go 7 or more days without an issue or pull request being opened, it's important for the Labeler: Cache Retention workflow to be scheduled to run daily to ensure there are reads of the required cache entries to prevent automatic eviction.