Bradley Barrows
unread,Jun 8, 2021, 3:05:34 AM6/8/21Sign in to reply to author
Sign in to forward
You do not have permission to delete messages in this group
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to Google App Engine
Hi
This weekend we ran into an issue. A function, using Mongoose (a NodeJS MongoDB library) was making a pretty simple query, which when run locally either by running the query directly or when running the entire Node server directly ran fine.
However, when deployed to Google App Engine we noticed that logging was logged out up until we awaited the query to MongoDB and then never continued. No exception was ever logged as well.
It is as if the Mongo query was taking too long and App Engine just killed the Node process all together.
The server did return a 500 error. I believe it was a 503 specifically.
We ended up realizing by using limit or projection we could decrease the response size of the query and get a result and the execution of the NodeJS application would continue.
Now if Mongo was an HTTP server I would see that there is a 32MB maximum request size and be able to find that there are only so many records I can query at once. However, since this is a TCP connection to the Mongo server I cannot find any quotas or limitations on how much data a TCP connection from an App Engine server can send or receive.
As we know that decreasing the size of the response from MongoDB fixed our issue, I believe it is safe to say the issue is related to the amount of data sent/received or more specifically received over TCP when communicating with an App Engine server.
Does anyone have any details on known limitations of App Engine communicating with other services over TCP?
Thank you so much!
Brad