Unfortunately we cannot easily use the original Set and avoid copying the items as QueryResultSet contains records with both keys & values and some clients expect either keys or value - currently the separation is done by the QueryResultSet iterator.