There is no hard limit but it's definitely recommended to keep those arrays "reasonable". When performing an update, Elasticsearch needs to fetch the entire doc, apply the update, then index the updated document and replicate the entire updated document to the replica, so very large arrays would come with a performance penalty indeed.