Hi,

Current implementation of EnumerableRelImplementor has some assumption
on the physical representation of the data.

The most "surprising" is that a row with single Integer field should
be represented as Enumerable<Integer>, while a row with two fields
should be Enumberable<Object[]>.

While this is a performance optimization, it bites you unexpectedly.

The second problem is you cannot force a particular physical format.
It is a must when calling "external procedure".
For instance, when calling a procedure with cursor() argument, there
must be some predefined calling convention. You can't call
user-defined java function with Enumerable<CustomClass> if it expects
Enumerable<Object[]>.

I am planning to update EnumerableRelImplementor so it will be
possible to implement Enumerable<Object[]> even for single column
stuff and it will be possible to call UDF with cursor parameters with
desired physical type.

Any comments/ideas are welcome.

-- 
Regards,
Vladimir Sitnikov

Reply via email to