-
Notifications
You must be signed in to change notification settings - Fork 140
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Snippet bot is exhausting memory in Cloud Functions #1134
Comments
Not 100% sure, but it seems like it is happening on few repos: googleapis/google-api-python-client I'll try to debug the bot with my clone. |
Hm, I'm buffled. The bot works perfectly fine with a test PR: So it's not repo specific. Maybe the payloads are somehow corrupted and it causes some kind of infinite loop? |
I think I spotted a PR which likely caused the memory death: 3443 files were deleted in a single PR. |
Downgrading to P2 since it's not a widespread issue. |
The bot is using parse-diff which accepts a string for the diff. We pass around the 75MB of string several times. I guess that the string is copied multiple times. |
I bumped the function from 512MB to 1GB - let's do that, and keep an eye on the loggies |
The other one is: googleapis/google-api-python-client#1059 2704 files affected. The diff is ~180MB. |
The request for the above PR went through, amusingly it took 539 seconds (almost 9 minutes).
|
Interestingly the go-genproto pr took about 10 seconds.
This is because this PR only deletes the files whereas the other one modifies the files (and the bot is fetching all the files). |
It's still possible that we'll see similar memory errors, but I feel good now because the bot can handle such significant PRs without dying now. |
Seeing this in the logs today:
Search query for logs:
The text was updated successfully, but these errors were encountered: