// execute the query, read the results and cache them
try {
IPentahoResultSet resultSet = ( (XQConnection) localConnection ).executeQuery( finalQuery, columnTypes );
if ( resultSet != null ) {
if ( !xQueryAction.getLive().getBooleanValue( true ) ) {
resultSet = resultSet.memoryCopy();
}
try {
IActionOutput resultSetOutput = xQueryAction.getOutputResultSet();
if ( resultSetOutput != null ) {
resultSetOutput.setValue( resultSet );