code: public List<String> calculateRollupBaseFields() {
  		if(rollupFrom == null) {
  			return getGroupByFields();
  		}
  
  		List<String> result = new ArrayList<String>();
  		for(SortElement element : commonCriteria.getElements()) {
  			result.add(element.getName());
  			if(element.getName().equals(rollupFrom)) {
  				break;
  			}
  		}
  		return result;
  	}
docs: Returns the fields that are a subset from the groupBy fields and will be
  used when rollup is needed.
  
  @see RollupReducer