since push info is fetched lazily anyway, get it with the join