Clone
Hans Zeller <hans.zeller@hp.com>
committed
on 09 Mar 15
Normalizer interface for TMUDFs, blueprint cmp-tmudf-compile-time-interface
Added new compiler interfaces:

describeParamsAndColumns has bee… Show more
Normalizer interface for TMUDFs, blueprint cmp-tmudf-compile-time-interface

Added new compiler interfaces:

describeParamsAndColumns has been extended to allow updating

PARTITION BY and ORDER BY clauses specified for input tables.

describeDataFlowAndPredicates() allows the TMUDF to eliminate

columns not needed by the query and to push predicates into

the TMUDF or to the children.

describeConstraints() allows the TMUDF to see cardinality and

uniqueness constraints of the table-valued inputs (children) and

to synthesize cardinality and uniqueness constraints on the

TMUDF result.

TMUDFs now have 3 function types:

 GENERIC - makes most conservative assumptions in the compiler

 MAPPER  - assumes TMUDF carries no state between input rows

 REDUCER - assumes TMUDF carries no state between input partitions

           defined by PARTITION BY clause

Query id and user id are now available to the UDR.

Added doxygen documentation for the C++ UDR interface. The resulting

web page will be published on the wiki. To generate the documentation

yourself, do the following:

  cd $MY_SQROOT/../sql/sqludr

  doxygen doxygen_tmudr.1.6.config

  # now open tmudr_1.0/html/index.html in a web browser

Patch set 2: Updated copyrights in 2 files.

Change-Id: I3735eb3dd7e5292ba308ac00332fdebdf66a7472

Show less

default + 9 more