private Object executeOnServer(Object[] parameters) {
    long startTime = statisticsClock.getTime();
    Object result;
    try {
      if (proxyCache != null) {
        if (proxyCache.isClosed()) {
          throw proxyCache.getCacheClosedException("Cache is closed for this user.");
        }
        UserAttributes.userAttributes.set(proxyCache.getUserAttributes());
      }
      result = serverProxy.query(queryString, parameters);
    } finally {
      UserAttributes.userAttributes.set(null);
      long endTime = statisticsClock.getTime();
      updateStatistics(endTime - startTime);
    }
    return result;
  }
For Order by queries ,since they are already ordered by the comparator && it takes care of
conversion, we do not have to wrap it in a wrapper
geode-core/src/main/java/org/apache/geode/cache/query/internal/DefaultQuery.java