OSDir


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

TableFunctions/TableMacros and Cursors?


Hi All,

Hoping for a pointer in the right direction.  It looks like that at one
point Calcite/Optiq supported table generation via
TableFunctions/TableMacros by passing the result set of another query into
the function via a CURSOR.

>> select * from table(s.process(2,cursor(select * from
table(s.GenerateStrings(1)))))

Currently, it appears this no longer works, as the test cases in
TableFunctionTest have been commented out, and when attempting to build
functions that take an Enumerable or Queryable as input from a cursor (as
above), they fall down on SqlTypeAssignmentRules throwing an assertion
error that "No assign rules for OTHER defined" in checking canCastFrom().

My questions:
1) Would TableFunctions/TableMacros still be the preferred way to generate
a new Table as the result of another query?  (Or is there another approach
that I'm missing)
2) If so, is there an easy (i.e. without patching up the type checking
system) way to bring this functionality back to life?
3) If not an easy way, any pointers on where to start on (2)?

Thanks a ton!

--Jeff