What does it mean Pipeline length and What factors affect Pipeline length?


I’m getting the below error when login to MongoDB Atlas from my custom iOS app.

error handling “query” message: error updating hashes in client file store: (AtlasError) Pipeline length greater than 50 not supported

I haven’t run the aggregation query, just login and open a synced Realm and subscribe. The Sync Type is ‘Flexible’.
As far as I’ve tested, it seems to occur when there are a large number of schema.
What does it mean Pipeline length and What factors affect Pipeline length? How can I solve the error?

Hi. This is happening because of an internal metadata operation where the number of stages is (as you stated) related to the number of tables. We can try to optimize this on our side (I have an idea), but one note is that the specific error you are getting is actually one from the Free-Tier Proxy in Atlas. So if you want to get around this issue immediately, there are 2 things you can do:

  1. Dont sync on so many tables for now
  2. Upgrade to an M10 cluster where the limit is much much higher and you are unlikely to run into it. Note that this will require terminating and re-enabling sync

Hi Tyler,
Thank you so much your help. Yes, this happened in M0 cluster. I understand and it’s solved.

As an update. I figured out a way to avoid generating a long pipeline update for this so the issue will go away in our next release (in 2 weeks).

Thanks for bringing this to our attention :slight_smile:

Thanks. That’s good to know.

This topic was automatically closed 5 days after the last reply. New replies are no longer allowed.