make query results reusable

Return a clone of the rows that as query results so the query can be
executed multiple times.