Surely without an order by clause, nothing about the order of rows
returned by an SQL select can be guaranteed or assumed, by definition.
What you get back is a *set* of tuples. So I'd say it's not so much a
matter of 'vacuum analyze' breaking anything, more of your code making
an assumption that it simply ought not to make in the SQL world?