Java External Environment for UDFs

In this release, the query engine has been enhanced to allow execution of Java table functions. You can now build Java functions that can return a java.sql.ResultSet back to the IQ query engine. In previous releases, calls to Java table functions were processed by the row store query engine resulting in slower performance when joined with the IQ column store.

Java table UDFs are out-of-process (external environment) table UDFs implemented in Java code. A table UDFs is a procedure that produces a set of rows and can be used as a table expression in the FROM clause of a SQL statement.

Java UDFs and Java scalar UDFs work as before, but with improved performance. Java aggregate UDFs are not supported.

Parallel processing (either SMP or DQP) is not permitted for Java UDFs or Java table UDFs. This restriction applies to both the UDF call and the portion of the SQL query that involves the Java UDF or Java table UDF.

For more Java UDF restrictions, and for further information on the Java external environment, see these topics in the Sybase IQ documentation: