Default Result Processor

If you omit the WITH RESULT PROCESSOR clause when you invoke a data-aware procedure, GemFire XD uses a default result processor implementation.

The default result processor for data-aware procedures performs unordered merges on the dynamic result sets from each member that executes the procedure code. The default processor presents the same number of ResultSets to the JDBC client that were declared in the CREATE PROCEDURE statement.

The default processor handles OUT and INOUT parameters as follows:
  • If the type is a basic SQL type, the default processor returns only the first value returned by the procedure.
  • If the type is a JAVA_OBJECT type, the values from all the servers that run the procedure are concatenated together as an object array and provided to the client as the object value. The ordering of the array elements is significant because a given array position corresponds to the same GemFire XD member for each of the parameters. For example, the first element of each array corresponds to the OUT parameters that were provided by the same GemFire XD member.