Skip to content

Intensive usage leads to GitHub API RateLimit exceeded #48

Description

@pega3

User Squiddy reported that installation of a PR did not work because he got an error message about the GitHub API RateLimit being exceeded.
I tried to run my version of the launcher with a different PR and get the same error message, so it seems there is an overall limit. We should:

Activity

  1. MCOfficer commented on Jul 6, 2020

    @MCOfficer
    Member

    This is already being reported in the console. From the log:

    17:09:17 [ERROR] Github API RateLimit exceeded!
    17:09:17 [INFO] RateLimit resets in 58 minutes
    17:09:17 [ERROR] Install failed: Failed to read JSON: missing field `workflow_runs` at line 1 column 248
    

    I tried to reduce the API calls as much as possible already, but some things (looking at you, PR installations) require roundabout API calls to get what we want, because the actions API sucks.

    Is there anything left to address in this issue?

  2. pega3 commented on Jul 7, 2020

    @pega3
    ContributorAuthor

    Yah, I saw that it's written out in the log and the original reporter also saw that message, so that's probably sufficient. Unless we decide to display a pop-up or something like it in case something goes wrong.

    As for working around the actions API insufficiencies, a couple of things come to my mind, but nothing which could be implemented in a reasonable amount of time with the current resources. (Caching the results somewhere and only going to the actions API if the result cannot be found in the cache / tweaking the search criteria so that the most sought responses are retrieved with the least amount of calls (if not already done) / hard-coding the releases int the tool (don't change) / keeping the resources on a separate server and retrieve them from there / split the load on several "mirror-"projects / writing "our" criteria on a separate table which we could use to perform the searching on)

    So, I guess this is a will-not-fix right now....
    Let's hope the launcher does not get too popular. ;-)

  3. MCOfficer commented on Jul 7, 2020

    @MCOfficer
    Member

    I do have one idea. I already have a (proprietary, shame on me) blob of code that acts as proxy for actions artifacts (https://endlesssky.mcofficer.me/artifacts.html). The backend uses its own github token, if ratelimits become too common of a problem, we can route most stuff through there.

    It should be noted that as of now, each client has an individual ratelimit based on IP. If we were to route more traffic through said backend, that's when the launcher's popularity matters.

    Let's just keep an eye on this for now.

  4. pinned this issue on Aug 28, 2025
  5. MCOfficer commented on Aug 28, 2025

    @MCOfficer
    Member

    2025 update: this is still an issue, though you'd have to try pretty hard to run into it. the current plan is to eventually allow power users to provide their own github access token (see #480)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    wontfixThis will not be worked on

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions