Giovani GranzottoG
Convex Community10mo ago
7 replies
Giovani Granzotto

Feedback on limits documentation, invisible "limits"

My app recently ran into the

 Too many reads in a single function execution (limit: 4096).


error on a mass-deletion function . I fixed it by just using
.take(2048)
and re-scheduling the function. I had to use 2048 instead of 4096 because I found out that the
.delete(record._id)
calls were also counting towards the "read" limit.

Looking at the limits page, the only reference to "4096" I could find is on the "vector search" and on "log streaming", both of which seem unrelated to this "read" limit I was hitting on my function.

Also, I was experiencing this error on another function:
Function myfunction.js:list return value invalid: Object has too many fields (1261 > maximum number 1024)


On the limits page, the only references to
1024
I could find were on the "full text search" section and on the "documents" section, which states that key limit applies to documents and nested objects. This one seems fair enough, but I got confused because I don't have a document or any nested objects within it that are going over the limit. Rather, I built an object out of a query array result and returned it, and since the array had more than 1024 elements it failed. So I guess it would be nice to have the documentation explicitly mention the return value object restriction.
Was this page helpful?