Hmm. What is rotating?
Discussion
I do not intend to hit the database 50 (100, 200+?) times, actually cross the whole stack, for just one query (that is very common)

Relays are databases, period
Was a joke, because, yes, they should be.
The protocol is just not there yet so all you can do for now is a shitload of requests and be a database, which in itself is funny.
Rest assured, as more use cases that make this kind of filter needed arise, the protocol will have to adapt to it.
There is some motivation behind the current limitations tho. In my opinion, useless efforts of premature optimization that resulted in limited database querying capabilities, which in turn limits possible use cases which ultimately limits growth.
No biggie, this journey is just starting. We'll get there. Keep building 💪
Most relays don't take 50 filters or 50 subs at the same time, so you need to split it, resolve some npubs, mark the EOSE, move to the next group and so on. Then use the eose cache for each sub to avoid downloading the same event many times.
My usecase is a bit different probably but appreciate the explanation