2 Replies Latest reply on Aug 21, 2012 3:01 PM by shawkins

    SQL ARRAY type not supported but referenced in the Reference Guide

    markaddleman

      The Client Developer's Guide lists Array as not supported at all but the Reference Guide indicates that it can be used by the ARRAYTABLE function. 

      Is there some discrepency?

        • 1. Re: SQL ARRAY type not supported but referenced in the Reference Guide
          markaddleman

          As an aside, it seems like ARRAYTABLE *could* support implementations of ListIterator (perhaps Iterator?) as well.  That would simplify hooking up some of our Java collections to Teiid.

          • 2. Re: SQL ARRAY type not supported but referenced in the Reference Guide
            shawkins

            There is no end-to-end support for array types.  The client driver doesn't have any logic for them, and unless a serializable array is supplied, vendor java.sql.Array values are unlikely to work in remote situations.  There is an existing JIRA https://issues.jboss.org/browse/TEIID-247 covering full array type support.

             

            There is partial support for arrays in two forms.  The engine has arraytable, array_length, and array_get all work against java.sql.Array or java array values.  There is now also pushdown support for array comparsion for multi-attribute depedent joins, i.e. (col1, col2) IN ((a, b), (c, d) ...).

             

            Having ARRAYTABLE operate against an Iterable value is more like having a cursor type, which is not yet a proper concept for us either.  However this should be addressed somewhat by https://issues.jboss.org/browse/TEIID-2141, which would have the notion of a row generating expression that will allow us to step over something that is Iteratable.

             

            Steve