RequestError [HttpError]: {
"data": null,
"errors":[
{
"message":"Something went wrong while executing your query. This may be the result of a timeout, or it could be a GitHub bug. Please include `D3C2:1AFB:7226D1:76338B:63A2690D` when reporting this issue."
}
]
}
: {"message":"Something went wrong while executing your query. This may be the result of a timeout, or it could be a GitHub bug. Please include `D3C2:1AFB:7226D1:76338B:63A2690D` when reporting this issue."}
...
body: '{"query":"query {\\n search(type: USER, query:\\"location:ukraine location:kyiv location:lviv location:kharkiv location:odesa sort:followers-desc\\", first:10, after:null) {\\n edges {\\n node {\\n __typename\\n ... on User {\\n login,\\n avatarUrl(size: 72),\\n name,\\n location,\\n company,\\n twitterUsername,\\n followers {\\n totalCount\\n }\\n contributionsCollection {\\n contributionCalendar {\\n totalContributions\\n }\\n restrictedContributionsCount\\n }\\n }\\n }\\n }\\n pageInfo {\\n endCursor\\n hasNextPage\\n }\\n }\\n }"}'
I opened a ticket to github support, and they replied:
I took a look and it seems the query in itself is timing out --All API requests, both for the REST API and GraphQL API, have a 10 second limit on execution time. If that limit is reached for a request, the request is terminated and you get back that error.
This normally happens when your query involves too much data, so the way to avoid timeouts is to write smaller queries. If you have a query that touches a lot of data -- split it into several smaller queries and execute them separately.
In my tests, I noticed running the search by filtering the location to just one city at a time reduced the execution time and thus returns a non-error response.
{
search(
type: USER
query: "location:Odesa sort:followers-desc"
first: 10
after: null
) {
edges {
node {
__typename
... on User {
login
avatarUrl(size: 72)
name
location
company
twitterUsername
followers {
totalCount
}
contributionsCollection {
contributionCalendar {
totalContributions
}
restrictedContributionsCount
}
}
}
}
pageInfo {
endCursor
hasNextPage
}
}
It appears that you'd want to split the query by city and then merge and filter the results.
https://github.com/gayanvoice/top-github-users/actions/runs/3745728170/jobs/6360444412#step:4:137
I opened a ticket to github support, and they replied:
It appears that you'd want to split the query by city and then merge and filter the results.