You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafodion.apache.org by sa...@apache.org on 2017/03/03 08:44:34 UTC

[14/49] incubator-trafodion-site git commit: Updates for python installer documentation in provisioning guide.

http://git-wip-us.apache.org/repos/asf/incubator-trafodion-site/blob/be8dfc15/apidocs/2.1.0/tmudr_javadoc/apidocs/org/trafodion/sql/udr/UDR.html
----------------------------------------------------------------------
diff --git a/apidocs/2.1.0/tmudr_javadoc/apidocs/org/trafodion/sql/udr/UDR.html b/apidocs/2.1.0/tmudr_javadoc/apidocs/org/trafodion/sql/udr/UDR.html
new file mode 100644
index 0000000..63188d6
--- /dev/null
+++ b/apidocs/2.1.0/tmudr_javadoc/apidocs/org/trafodion/sql/udr/UDR.html
@@ -0,0 +1,856 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc (version 1.7.0_99) on Fri Mar 03 08:42:48 UTC 2017 -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>UDR (trafodion-sql 2.1.0 API)</title>
+<meta name="date" content="2017-03-03">
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+</head>
+<body>
+<script type="text/javascript"><!--
+    if (location.href.indexOf('is-external=true') == -1) {
+        parent.document.title="UDR (trafodion-sql 2.1.0 API)";
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar_top">
+<!--   -->
+</a><a href="#skip-navbar_top" title="Skip navigation links"></a><a name="navbar_top_firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/UDR.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/trafodion/sql/udr/TypeInfo.SQLTypeSubClassCode.html" title="enum in org.trafodion.sql.udr"><span class="strong">Prev Class</span></a></li>
+<li><a href="../../../../org/trafodion/sql/udr/UDR.QueueStateInfo.html" title="class in org.trafodion.sql.udr"><span class="strong">Next Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/trafodion/sql/udr/UDR.html" target="_top">Frames</a></li>
+<li><a href="UDR.html" target="_top">No Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li><a href="#nested_class_summary">Nested</a>&nbsp;|&nbsp;</li>
+<li><a href="#field_summary">Field</a>&nbsp;|&nbsp;</li>
+<li><a href="#constructor_summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method_summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#field_detail">Field</a>&nbsp;|&nbsp;</li>
+<li><a href="#constructor_detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method_detail">Method</a></li>
+</ul>
+</div>
+<a name="skip-navbar_top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.trafodion.sql.udr</div>
+<h2 title="Class UDR" class="title">Class UDR</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li>org.trafodion.sql.udr.UDR</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<hr>
+<br>
+<pre>public abstract class <span class="strong">UDR</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre>
+<div class="block">This class represents the code associated with a UDR.
+ <p>
+ UDR writers can create a derived class and implement these methods
+ for their specific UDR. The base class also has default methods
+ for all but the runtime call <a href="../../../../org/trafodion/sql/udr/UDR.html#processData(org.trafodion.sql.udr.UDRInvocationInfo,%20org.trafodion.sql.udr.UDRPlanInfo)"><code>processData(UDRInvocationInfo, UDRPlanInfo)</code></a>. See 
+ https://wiki.trafodion.org/wiki/index.php/Tutorial:_The_object-oriented_UDF_interface
+ for examples.
+ <p>
+ A UDR writer can decide to override none, some or all of the virtual         
+ methods that comprise the complier interaction. The run-time interaction
+ <a href="../../../../org/trafodion/sql/udr/UDR.html#processData(org.trafodion.sql.udr.UDRInvocationInfo,%20org.trafodion.sql.udr.UDRPlanInfo)"><code>processData(UDRInvocationInfo, UDRPlanInfo)</code></a>, must always be provided.
+ <p>
+ When overriding methods, the UDR writer has the option to call the default
+ method to do part of the work, and then to implement additional logic.
+ <p>
+ Multiple UDRs could share the same subclass of UDR. The UDR name is passed
+ in UDRInvocationInfo, so the logic can depend on the name.
+ <p>
+ A single query may invoke the same UDR more than once. A different
+ UDRInvocationInfo object will be passed for each such invocation.
+ <p>
+ The UDR object or the object of its derived class may be reused for
+ multiple queries, so its life time can exceed that of a UDRInvocation
+ object.
+ <p>
+ Different instances of UDR (or derived class)objects will be created
+ in the processes that compile and execute a query.
+ <p>
+ Based on the previous three bullets, UDR writers should not store state
+ that relates to a UDR invocation in a UDR (or derived) object. There are
+ special classes to do that. It is ok to use the UDR derived class to store
+ resources that are shared between UDR invocations, such as connections to
+ server processes etc. These need to be cleaned up in <a href="../../../../org/trafodion/sql/udr/UDR.html#close()"><code>close()</code></a>.
+ <p>
+ The optimizer may try different execution plans for a UDR invocation, e.g.
+ with different partitioning and ordering of input and/or output data. These
+ alternative plans share the same UDRInvocationInfo object but they will use
+ different UDRPlanInfo objects.</div>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ======== NESTED CLASS SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="nested_class_summary">
+<!--   -->
+</a>
+<h3>Nested Class Summary</h3>
+<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Nested Class Summary table, listing nested classes, and an explanation">
+<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Class and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>static class&nbsp;</code></td>
+<td class="colLast"><code><strong><a href="../../../../org/trafodion/sql/udr/UDR.QueueStateInfo.html" title="class in org.trafodion.sql.udr">UDR.QueueStateInfo</a></strong></code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- =========== FIELD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="field_summary">
+<!--   -->
+</a>
+<h3>Field Summary</h3>
+<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
+<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Field and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><strong><a href="../../../../org/trafodion/sql/udr/UDR.html#SQLUDR_Q_CANCEL">SQLUDR_Q_CANCEL</a></strong></code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><strong><a href="../../../../org/trafodion/sql/udr/UDR.html#SQLUDR_Q_EOD">SQLUDR_Q_EOD</a></strong></code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><strong><a href="../../../../org/trafodion/sql/udr/UDR.html#SQLUDR_Q_MORE">SQLUDR_Q_MORE</a></strong></code>&nbsp;</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor_summary">
+<!--   -->
+</a>
+<h3>Constructor Summary</h3>
+<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
+<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Constructor and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><strong><a href="../../../../org/trafodion/sql/udr/UDR.html#UDR()">UDR</a></strong>()</code>
+<div class="block">Default constructor, to be used by derived classes</div>
+</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method_summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span>Methods</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><strong><a href="../../../../org/trafodion/sql/udr/UDR.html#close()">close</a></strong>()</code>
+<div class="block">Currently not used.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><strong><a href="../../../../org/trafodion/sql/udr/UDR.html#completeDescription(org.trafodion.sql.udr.UDRInvocationInfo,%20org.trafodion.sql.udr.UDRPlanInfo)">completeDescription</a></strong>(<a href="../../../../org/trafodion/sql/udr/UDRInvocationInfo.html" title="class in org.trafodion.sql.udr">UDRInvocationInfo</a>&nbsp;info,
+                   <a href="../../../../org/trafodion/sql/udr/UDRPlanInfo.html" title="class in org.trafodion.sql.udr">UDRPlanInfo</a>&nbsp;plan)</code>
+<div class="block">Final call of the compiler interaction for TMUDFs.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><strong><a href="../../../../org/trafodion/sql/udr/UDR.html#debugLoop()">debugLoop</a></strong>()</code>
+<div class="block">Debugging hook for UDRs.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><strong><a href="../../../../org/trafodion/sql/udr/UDR.html#describeConstraints(org.trafodion.sql.udr.UDRInvocationInfo)">describeConstraints</a></strong>(<a href="../../../../org/trafodion/sql/udr/UDRInvocationInfo.html" title="class in org.trafodion.sql.udr">UDRInvocationInfo</a>&nbsp;info)</code>&nbsp;</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><strong><a href="../../../../org/trafodion/sql/udr/UDR.html#describeDataflowAndPredicates(org.trafodion.sql.udr.UDRInvocationInfo)">describeDataflowAndPredicates</a></strong>(<a href="../../../../org/trafodion/sql/udr/UDRInvocationInfo.html" title="class in org.trafodion.sql.udr">UDRInvocationInfo</a>&nbsp;info)</code>
+<div class="block">Eliminate unneeded columns and decide where to execute predicates.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><strong><a href="../../../../org/trafodion/sql/udr/UDR.html#describeDesiredDegreeOfParallelism(org.trafodion.sql.udr.UDRInvocationInfo,%20org.trafodion.sql.udr.UDRPlanInfo)">describeDesiredDegreeOfParallelism</a></strong>(<a href="../../../../org/trafodion/sql/udr/UDRInvocationInfo.html" title="class in org.trafodion.sql.udr">UDRInvocationInfo</a>&nbsp;info,
+                                  <a href="../../../../org/trafodion/sql/udr/UDRPlanInfo.html" title="class in org.trafodion.sql.udr">UDRPlanInfo</a>&nbsp;plan)</code>
+<div class="block">Describe the desired parallelism of a UDR.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><strong><a href="../../../../org/trafodion/sql/udr/UDR.html#describeParamsAndColumns(org.trafodion.sql.udr.UDRInvocationInfo)">describeParamsAndColumns</a></strong>(<a href="../../../../org/trafodion/sql/udr/UDRInvocationInfo.html" title="class in org.trafodion.sql.udr">UDRInvocationInfo</a>&nbsp;info)</code>
+<div class="block">First method called during compilation of a TMUDF invocation.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><strong><a href="../../../../org/trafodion/sql/udr/UDR.html#describePlanProperties(org.trafodion.sql.udr.UDRInvocationInfo,%20org.trafodion.sql.udr.UDRPlanInfo)">describePlanProperties</a></strong>(<a href="../../../../org/trafodion/sql/udr/UDRInvocationInfo.html" title="class in org.trafodion.sql.udr">UDRInvocationInfo</a>&nbsp;info,
+                      <a href="../../../../org/trafodion/sql/udr/UDRPlanInfo.html" title="class in org.trafodion.sql.udr">UDRPlanInfo</a>&nbsp;plan)</code>
+<div class="block">Sixth method of the compiler interface (optional).</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><strong><a href="../../../../org/trafodion/sql/udr/UDR.html#describeStatistics(org.trafodion.sql.udr.UDRInvocationInfo)">describeStatistics</a></strong>(<a href="../../../../org/trafodion/sql/udr/UDRInvocationInfo.html" title="class in org.trafodion.sql.udr">UDRInvocationInfo</a>&nbsp;info)</code>
+<div class="block">Fourth method of the compiler interface (optional).</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><strong><a href="../../../../org/trafodion/sql/udr/UDR.html#emitRow(org.trafodion.sql.udr.UDRInvocationInfo)">emitRow</a></strong>(<a href="../../../../org/trafodion/sql/udr/UDRInvocationInfo.html" title="class in org.trafodion.sql.udr">UDRInvocationInfo</a>&nbsp;info)</code>
+<div class="block">Emit a row of a table-valued result.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><strong><a href="../../../../org/trafodion/sql/udr/UDR.html#getCurrentVersion()">getCurrentVersion</a></strong>()</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>int</code></td>
+<td class="colLast"><code><strong><a href="../../../../org/trafodion/sql/udr/UDR.html#getFeaturesSupportedByUDF()">getFeaturesSupportedByUDF</a></strong>()</code>
+<div class="block">For versioning, return features supported by the UDR writer.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>boolean</code></td>
+<td class="colLast"><code><strong><a href="../../../../org/trafodion/sql/udr/UDR.html#getNextRow(org.trafodion.sql.udr.UDRInvocationInfo)">getNextRow</a></strong>(<a href="../../../../org/trafodion/sql/udr/UDRInvocationInfo.html" title="class in org.trafodion.sql.udr">UDRInvocationInfo</a>&nbsp;info)</code>
+<div class="block">Read a row of the first table-value input.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>abstract void</code></td>
+<td class="colLast"><code><strong><a href="../../../../org/trafodion/sql/udr/UDR.html#processData(org.trafodion.sql.udr.UDRInvocationInfo,%20org.trafodion.sql.udr.UDRPlanInfo)">processData</a></strong>(<a href="../../../../org/trafodion/sql/udr/UDRInvocationInfo.html" title="class in org.trafodion.sql.udr">UDRInvocationInfo</a>&nbsp;info,
+           <a href="../../../../org/trafodion/sql/udr/UDRPlanInfo.html" title="class in org.trafodion.sql.udr">UDRPlanInfo</a>&nbsp;plan)</code>
+<div class="block">Runtime code for UDRs.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>void</code></td>
+<td class="colLast"><code><strong><a href="../../../../org/trafodion/sql/udr/UDR.html#traceRow(org.trafodion.sql.udr.UDRInvocationInfo,%20org.trafodion.sql.udr.TupleInfo,%20int,%20java.lang.String)">traceRow</a></strong>(<a href="../../../../org/trafodion/sql/udr/UDRInvocationInfo.html" title="class in org.trafodion.sql.udr">UDRInvocationInfo</a>&nbsp;info,
+        <a href="../../../../org/trafodion/sql/udr/TupleInfo.html" title="class in org.trafodion.sql.udr">TupleInfo</a>&nbsp;ti,
+        int&nbsp;tableIndex,
+        <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;formattedMsg)</code>&nbsp;</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods_inherited_from_class_java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/j
 ava/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait(long,%20int)" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ============ FIELD DETAIL =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="field_detail">
+<!--   -->
+</a>
+<h3>Field Detail</h3>
+<a name="SQLUDR_Q_MORE">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>SQLUDR_Q_MORE</h4>
+<pre>public final&nbsp;int SQLUDR_Q_MORE</pre>
+<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.trafodion.sql.udr.UDR.SQLUDR_Q_MORE">Constant Field Values</a></dd></dl>
+</li>
+</ul>
+<a name="SQLUDR_Q_EOD">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>SQLUDR_Q_EOD</h4>
+<pre>public final&nbsp;int SQLUDR_Q_EOD</pre>
+<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.trafodion.sql.udr.UDR.SQLUDR_Q_EOD">Constant Field Values</a></dd></dl>
+</li>
+</ul>
+<a name="SQLUDR_Q_CANCEL">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>SQLUDR_Q_CANCEL</h4>
+<pre>public final&nbsp;int SQLUDR_Q_CANCEL</pre>
+<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../constant-values.html#org.trafodion.sql.udr.UDR.SQLUDR_Q_CANCEL">Constant Field Values</a></dd></dl>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor_detail">
+<!--   -->
+</a>
+<h3>Constructor Detail</h3>
+<a name="UDR()">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>UDR</h4>
+<pre>public&nbsp;UDR()</pre>
+<div class="block">Default constructor, to be used by derived classes</div>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method_detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="close()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>close</h4>
+<pre>public&nbsp;void&nbsp;close()</pre>
+<div class="block">Currently not used.
+
+  <p>This might be used in the future as a final call, to allow
+  the UDR to deallocate any resources it holds, like connections
+  to other databases. Right now, it is advisable to deallocate
+  any resources that could cause a leak before exiting the
+  processData() method.</div>
+</li>
+</ul>
+<a name="describeParamsAndColumns(org.trafodion.sql.udr.UDRInvocationInfo)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>describeParamsAndColumns</h4>
+<pre>public&nbsp;void&nbsp;describeParamsAndColumns(<a href="../../../../org/trafodion/sql/udr/UDRInvocationInfo.html" title="class in org.trafodion.sql.udr">UDRInvocationInfo</a>&nbsp;info)
+                              throws <a href="../../../../org/trafodion/sql/udr/UDRException.html" title="class in org.trafodion.sql.udr">UDRException</a></pre>
+<div class="block">First method called during compilation of a TMUDF invocation.
+ <p>
+  Describe the output columns of a TMUDF, based on a description of
+  its parameters (including parameter values that are specified as a
+  constant) and the description of the table-valued input columns.
+ <p>
+  When the compiler calls this, it will have set up the formal and
+  actual parameter descriptions as well as an output column
+  description containing all the output parameters defined in the
+  CREATE FUNCTION DDL (if any).
+ <p>
+  This method should do a general check of things it expects that can be
+  validated at this time such as input table columns. It should then generate
+  a description of the table-valued output columns, if applicable
+  and if the columns provided at DDL time are not sufficient. The
+  "See also" section points to methods to set these values.
+ <p>
+  Columns of the table-valued output can be declard as "pass-thru"
+  columns to make many optimizations simpler.
+ <p>
+  This method must also add or alter the formal parameter list
+  to match the list of actual parameters.
+ <p>
+  The default implementation does nothing. If this method is not used, all
+  parameters and result table columns must be declared in the
+  CREATE TABLE MAPPING FUNCTION DDL.</div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>info</code> - A description of the UDR invocation.</dd>
+<dt><span class="strong">Throws:</span></dt>
+<dd><code><a href="../../../../org/trafodion/sql/udr/UDRException.html" title="class in org.trafodion.sql.udr">UDRException</a></code> - If an exception occured in the UDR</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../org/trafodion/sql/udr/UDRInvocationInfo.html#addFormalParameter(org.trafodion.sql.udr.ColumnInfo)"><code>UDRInvocationInfo.addFormalParameter(ColumnInfo)</code></a>, 
+<a href="../../../../org/trafodion/sql/udr/UDRInvocationInfo.html#setFuncType(org.trafodion.sql.udr.UDRInvocationInfo.FuncType)"><code>UDRInvocationInfo.setFuncType(FuncType)</code></a>, 
+<a href="../../../../org/trafodion/sql/udr/UDRInvocationInfo.html#addPassThruColumns()"><code>UDRInvocationInfo.addPassThruColumns()</code></a>, 
+<a href="../../../../org/trafodion/sql/udr/TupleInfo.html#addColumn(org.trafodion.sql.udr.ColumnInfo)"><code>TupleInfo.addColumn(ColumnInfo)</code></a>, 
+<a href="../../../../org/trafodion/sql/udr/TupleInfo.html#addIntColumn(java.lang.String,%20boolean)"><code>TupleInfo.addIntColumn(String, boolean)</code></a>, 
+<a href="../../../../org/trafodion/sql/udr/TupleInfo.html#addLongColumn(java.lang.String,%20boolean)"><code>TupleInfo.addLongColumn(String, boolean)</code></a>, 
+<a href="../../../../org/trafodion/sql/udr/TupleInfo.html#addCharColumn(java.lang.String,%20int,%20boolean,%20org.trafodion.sql.udr.TypeInfo.SQLCharsetCode,%20org.trafodion.sql.udr.TypeInfo.SQLCollationCode)"><code>TupleInfo.addCharColumn(String, int, boolean, TypeInfo.SQLCharsetCode, TypeInfo.SQLCollationCode)</code></a>, 
+<a href="../../../../org/trafodion/sql/udr/TupleInfo.html#addVarCharColumn(java.lang.String,%20int,%20boolean,%20org.trafodion.sql.udr.TypeInfo.SQLCharsetCode,%20org.trafodion.sql.udr.TypeInfo.SQLCollationCode)"><code>TupleInfo.addVarCharColumn(String, int, boolean, TypeInfo.SQLCharsetCode, TypeInfo.SQLCollationCode)</code></a>, 
+<a href="../../../../org/trafodion/sql/udr/TupleInfo.html#addColumns(java.util.Vector)"><code>TupleInfo.addColumns(Vector)</code></a>, 
+<a href="../../../../org/trafodion/sql/udr/TupleInfo.html#addColumnAt(org.trafodion.sql.udr.ColumnInfo,%20int)"><code>TupleInfo.addColumnAt(ColumnInfo, int)</code></a>, 
+<a href="../../../../org/trafodion/sql/udr/TupleInfo.html#deleteColumn(int)"><code>TupleInfo.deleteColumn(int)</code></a>, 
+<a href="../../../../org/trafodion/sql/udr/TupleInfo.html#deleteColumn(java.lang.String)"><code>TupleInfo.deleteColumn(String)</code></a></dd></dl>
+</li>
+</ul>
+<a name="describeDataflowAndPredicates(org.trafodion.sql.udr.UDRInvocationInfo)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>describeDataflowAndPredicates</h4>
+<pre>public&nbsp;void&nbsp;describeDataflowAndPredicates(<a href="../../../../org/trafodion/sql/udr/UDRInvocationInfo.html" title="class in org.trafodion.sql.udr">UDRInvocationInfo</a>&nbsp;info)
+                                   throws <a href="../../../../org/trafodion/sql/udr/UDRException.html" title="class in org.trafodion.sql.udr">UDRException</a></pre>
+<div class="block">Eliminate unneeded columns and decide where to execute predicates.
+ <p>
+ This is the second call in the compiler interaction, after
+ describeParamsAndColumns(). When the compiler calls this, it will have
+ marked the UDF result columns with a usage code, indicating any output
+ columns that are not required for this particular query. It will also have
+ created a list of predicates that need to be evaluated.
+ <p>
+ This method can mark any of the columns of the table-valued inputs as not
+ used, based on the result column usage and internal needs of the UDF. It can
+ also decide where to evaluate each predicate, a) on the UDF result,
+ b) inside the UDF and c) in the table-valued inputs.
+ <p>
+ The default implementation does not mark any of the table-valued input
+ columns as unused. Predicate handling in the default implementation
+ depends on the function type:
+ <ul>
+ <li> 
+ GENERIC: No predicates are pushed down, because the compiler does not
+          know whether any of the eliminated rows might have altered the
+          output of the UDF. One example is the "sessionize" UDF, where
+          eliminated rows can lead to differences in session ids.
+ </li>
+ <li>
+ MAPPER:  All predicates on pass-thru columns are pushed down to table-valued
+          inputs. Since the UDF carries no state between the input rows it
+          sees, eliminating any input rows will not alter results for other
+          rows.
+ </li>
+ <li>
+ REDUCER: Only predicates on the PARTITION BY columns will be pushed to
+          table-valued inputs. These predicates may eliminate entire groups
+          of rows (partitions), and since no state is carried between such
+          groups that is valid.
+ </li>
+ </ul>
+ <p></div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>info</code> - A description of the UDR invocation.</dd>
+<dt><span class="strong">Throws:</span></dt>
+<dd><code><a href="../../../../org/trafodion/sql/udr/UDRException.html" title="class in org.trafodion.sql.udr">UDRException</a></code> - If an exception occured in the UDR</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../org/trafodion/sql/udr/ColumnInfo.html#getUsage()"><code>ColumnInfo.getUsage()</code></a>, 
+<a href="../../../../org/trafodion/sql/udr/UDRInvocationInfo.html#setFuncType(org.trafodion.sql.udr.UDRInvocationInfo.FuncType)"><code>UDRInvocationInfo.setFuncType(FuncType)</code></a>, 
+<a href="../../../../org/trafodion/sql/udr/UDRInvocationInfo.html#setChildColumnUsage(int,%20int,%20org.trafodion.sql.udr.ColumnInfo.ColumnUseCode)"><code>UDRInvocationInfo.setChildColumnUsage(int, int, ColumnInfo.ColumnUseCode)</code></a>, 
+<a href="../../../../org/trafodion/sql/udr/UDRInvocationInfo.html#setUnusedPassthruColumns()"><code>UDRInvocationInfo.setUnusedPassthruColumns()</code></a>, 
+<a href="../../../../org/trafodion/sql/udr/UDRInvocationInfo.html#pushPredicatesOnPassthruColumns()"><code>UDRInvocationInfo.pushPredicatesOnPassthruColumns()</code></a>, 
+<a href="../../../../org/trafodion/sql/udr/UDRInvocationInfo.html#setPredicateEvaluationCode(int,%20org.trafodion.sql.udr.PredicateInfo.EvaluationCode)"><code>UDRInvocationInfo.setPredicateEvaluationCode(int, PredicateInfo.EvaluationCode)</code></a></dd></dl>
+</li>
+</ul>
+<a name="describeConstraints(org.trafodion.sql.udr.UDRInvocationInfo)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>describeConstraints</h4>
+<pre>public&nbsp;void&nbsp;describeConstraints(<a href="../../../../org/trafodion/sql/udr/UDRInvocationInfo.html" title="class in org.trafodion.sql.udr">UDRInvocationInfo</a>&nbsp;info)
+                         throws <a href="../../../../org/trafodion/sql/udr/UDRException.html" title="class in org.trafodion.sql.udr">UDRException</a></pre>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>info</code> - A description of the UDR invocation.</dd>
+<dt><span class="strong">Throws:</span></dt>
+<dd><code><a href="../../../../org/trafodion/sql/udr/UDRException.html" title="class in org.trafodion.sql.udr">UDRException</a></code> - If an exception occured in the UDR</dd></dl>
+</li>
+</ul>
+<a name="describeStatistics(org.trafodion.sql.udr.UDRInvocationInfo)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>describeStatistics</h4>
+<pre>public&nbsp;void&nbsp;describeStatistics(<a href="../../../../org/trafodion/sql/udr/UDRInvocationInfo.html" title="class in org.trafodion.sql.udr">UDRInvocationInfo</a>&nbsp;info)
+                        throws <a href="../../../../org/trafodion/sql/udr/UDRException.html" title="class in org.trafodion.sql.udr">UDRException</a></pre>
+<div class="block">Fourth method of the compiler interface (optional).
+
+  <p>Set up statistics for the table-valued result.
+
+  <p>When the optimizer calls this method, it will have synthesized
+  some statistics for the table-valued inputs, if any. The UDR
+  writer can now indicate the estimated row count for the table-valued
+  result and estimated number of unique values for the output columns.
+
+  <p>The default implementation does nothing. If no estimated cardinality
+  is set for the output table and no estimated number of unique values
+  is set for output columns, the optimizer will make default assumptions.
+  Here are some of these default assumptions:
+  <ul>
+  <li>UDRs of type UDRInvocationInfo.MAPPER return one output row for
+      each row in their largest input table.
+  <li>UDRs of type UDRInvocationInfo.REDUCER and REDUCER_NC return one
+      output row for every partition in their largest partitioned input
+      table.
+  <li>For output columns that are passthru columns, the estimated
+      unique entries are the same as for the underlying column in the
+      table-valued input.
+  <li>Other default cardinality and unique entry counts can be influenced
+      with defaults (CONTROL QUERY DEFAULT) in Trafodion SQL.
+  </ul></div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>info</code> - A description of the UDR invocation.</dd>
+<dt><span class="strong">Throws:</span></dt>
+<dd><code><a href="../../../../org/trafodion/sql/udr/UDRException.html" title="class in org.trafodion.sql.udr">UDRException</a></code></dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../org/trafodion/sql/udr/UDRInvocationInfo.html#setFuncType(org.trafodion.sql.udr.UDRInvocationInfo.FuncType)"><code>UDRInvocationInfo.setFuncType(org.trafodion.sql.udr.UDRInvocationInfo.FuncType)</code></a>, 
+<a href="../../../../org/trafodion/sql/udr/ColumnInfo.html#getEstimatedUniqueEntries()"><code>ColumnInfo.getEstimatedUniqueEntries()</code></a>, 
+<a href="../../../../org/trafodion/sql/udr/ColumnInfo.html#setEstimatedUniqueEntries(long)"><code>ColumnInfo.setEstimatedUniqueEntries(long)</code></a>, 
+<a href="../../../../org/trafodion/sql/udr/TableInfo.html#getEstimatedNumRows()"><code>TableInfo.getEstimatedNumRows()</code></a>, 
+<a href="../../../../org/trafodion/sql/udr/TableInfo.html#setEstimatedNumRows(long)"><code>TableInfo.setEstimatedNumRows(long)</code></a>, 
+<a href="../../../../org/trafodion/sql/udr/TableInfo.html#getEstimatedNumPartitions()"><code>TableInfo.getEstimatedNumPartitions()</code></a></dd></dl>
+</li>
+</ul>
+<a name="describeDesiredDegreeOfParallelism(org.trafodion.sql.udr.UDRInvocationInfo, org.trafodion.sql.udr.UDRPlanInfo)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>describeDesiredDegreeOfParallelism</h4>
+<pre>public&nbsp;void&nbsp;describeDesiredDegreeOfParallelism(<a href="../../../../org/trafodion/sql/udr/UDRInvocationInfo.html" title="class in org.trafodion.sql.udr">UDRInvocationInfo</a>&nbsp;info,
+                                      <a href="../../../../org/trafodion/sql/udr/UDRPlanInfo.html" title="class in org.trafodion.sql.udr">UDRPlanInfo</a>&nbsp;plan)
+                                        throws <a href="../../../../org/trafodion/sql/udr/UDRException.html" title="class in org.trafodion.sql.udr">UDRException</a></pre>
+<div class="block">Describe the desired parallelism of a UDR.
+  <p>
+  This method can be used to specify a desired degree of
+  parallelism, either in absolute or relative terms.
+  <p>
+  The default behavior is to allow any degree of parallelism for
+  TMUDFs of function type UDRInvocationInfo.MAPPER or
+  UDRInvocationInfo.REDUCER (or REDUCER_NC) that have exactly
+  one table-valued input. The default behavior forces serial
+  execution in all other cases. The reason is that for a single
+  table-valued input, there is a natural way to parallelize the
+  function by parallelizing its input a la MapReduce. In all
+  other cases, parallel execution requires active participation
+  by the UDF, which is why the UDF needs to signal explicitly
+  that it can handle such flavors of parallelism.
+
+  Default implementation:
+  <pre>
+        if (info.getNumTableInputs() == 1 &&
+            (info.getFuncType() == UDRInvocationInfo.FuncType.MAPPER ||
+             info.getFuncType() == UDRInvocationInfo.FuncType.REDUCER ||
+             info.getFuncType() == UDRInvocationInfo.FuncType.REDUCER_NC))
+          plan.setDesiredDegreeOfParallelism(UDRPlanInfo.ANY_DEGREE_OF_PARALLELISM);
+        else
+          plan.setDesiredDegreeOfParallelism(1); // serial execution
+        </pre>
+ <p>
+  Note that this is NOT foolproof, and that the TMUDF might still
+  need to validate the PARTITION BY and ORDER BY syntax used in its
+  invocation.
+  <p> Note also that in order to get parallel execution, you may need to
+  implement the <a href="../../../../org/trafodion/sql/udr/UDR.html#describeStatistics(org.trafodion.sql.udr.UDRInvocationInfo)"><code>describeStatistics(org.trafodion.sql.udr.UDRInvocationInfo)</code></a> interface and provide a
+  cardinality estimate. Alternatively, you can set the
+  PARALLEL_NUM_ESPS CQD.
+ <p></div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>info</code> - A description of the UDR invocation.</dd><dd><code>plan</code> - Plan-related description of the UDR invocation.</dd>
+<dt><span class="strong">Throws:</span></dt>
+<dd><code><a href="../../../../org/trafodion/sql/udr/UDRException.html" title="class in org.trafodion.sql.udr">UDRException</a></code> - If an exception occured in the UDR</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../org/trafodion/sql/udr/UDRPlanInfo.html#getDesiredDegreeOfParallelism()"><code>UDRPlanInfo.getDesiredDegreeOfParallelism()</code></a>, 
+<a href="../../../../org/trafodion/sql/udr/UDRPlanInfo.html#setDesiredDegreeOfParallelism(int)"><code>UDRPlanInfo.setDesiredDegreeOfParallelism(int)</code></a>, 
+<a href="../../../../org/trafodion/sql/udr/UDRInvocationInfo.html#getNumParallelInstances()"><code>UDRInvocationInfo.getNumParallelInstances()</code></a>, 
+<a href="../../../../org/trafodion/sql/udr/UDRInvocationInfo.html#setFuncType(org.trafodion.sql.udr.UDRInvocationInfo.FuncType)"><code>UDRInvocationInfo.setFuncType(org.trafodion.sql.udr.UDRInvocationInfo.FuncType)</code></a>, 
+<a href="../../../../org/trafodion/sql/udr/UDR.html#describeStatistics(org.trafodion.sql.udr.UDRInvocationInfo)"><code>describeStatistics(org.trafodion.sql.udr.UDRInvocationInfo)</code></a>, 
+<a href="../../../../org/trafodion/sql/udr/TableInfo.html#setEstimatedNumRows(long)"><code>TableInfo.setEstimatedNumRows(long)</code></a></dd></dl>
+</li>
+</ul>
+<a name="describePlanProperties(org.trafodion.sql.udr.UDRInvocationInfo, org.trafodion.sql.udr.UDRPlanInfo)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>describePlanProperties</h4>
+<pre>public&nbsp;void&nbsp;describePlanProperties(<a href="../../../../org/trafodion/sql/udr/UDRInvocationInfo.html" title="class in org.trafodion.sql.udr">UDRInvocationInfo</a>&nbsp;info,
+                          <a href="../../../../org/trafodion/sql/udr/UDRPlanInfo.html" title="class in org.trafodion.sql.udr">UDRPlanInfo</a>&nbsp;plan)
+                            throws <a href="../../../../org/trafodion/sql/udr/UDRException.html" title="class in org.trafodion.sql.udr">UDRException</a></pre>
+<div class="block">Sixth method of the compiler interface (optional).
+
+  The query optimizer calls this method once for every plan alternative
+  considered for a UDR invocation. It provides the required partitioning
+  and ordering of the result. The UDR writer can decide whether these
+  requirements are acceptable to the UDR and whether any partitioning
+  or ordering of the table-valued inputs is required to produce the required
+  result properties.
+
+  <p>This interface is currently not used.</div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>info</code> - A description of the UDR invocation.</dd><dd><code>plan</code> - Plan-related description of the UDR invocation.</dd>
+<dt><span class="strong">Throws:</span></dt>
+<dd><code><a href="../../../../org/trafodion/sql/udr/UDRException.html" title="class in org.trafodion.sql.udr">UDRException</a></code></dd></dl>
+</li>
+</ul>
+<a name="completeDescription(org.trafodion.sql.udr.UDRInvocationInfo, org.trafodion.sql.udr.UDRPlanInfo)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>completeDescription</h4>
+<pre>public&nbsp;void&nbsp;completeDescription(<a href="../../../../org/trafodion/sql/udr/UDRInvocationInfo.html" title="class in org.trafodion.sql.udr">UDRInvocationInfo</a>&nbsp;info,
+                       <a href="../../../../org/trafodion/sql/udr/UDRPlanInfo.html" title="class in org.trafodion.sql.udr">UDRPlanInfo</a>&nbsp;plan)
+                         throws <a href="../../../../org/trafodion/sql/udr/UDRException.html" title="class in org.trafodion.sql.udr">UDRException</a></pre>
+<div class="block">Final call of the compiler interaction for TMUDFs.
+  <p>
+  This final compile time call gives the UDF writer the opportunity
+  to examine the chosen query plan, to pass information on to the
+  runtime method, using <a href="../../../../org/trafodion/sql/udr/UDRPlanInfo.html#addPlanData(byte[])"><code>addPlanData</code></a>, and to
+  clean up any resources related to the compile phase of a particular TMUDF
+  invocation.
+  <p>
+  The default implementation does nothing.
+  <p></div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>info</code> - A description of the UDR invocation.</dd><dd><code>plan</code> - Plan-related description of the UDR invocation.</dd>
+<dt><span class="strong">Throws:</span></dt>
+<dd><code><a href="../../../../org/trafodion/sql/udr/UDRException.html" title="class in org.trafodion.sql.udr">UDRException</a></code> - If an exception occured in the UDR</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../org/trafodion/sql/udr/UDRPlanInfo.html#addPlanData(byte[])"><code>UDRPlanInfo.addPlanData(byte[])</code></a>, 
+<a href="../../../../org/trafodion/sql/udr/UDRPlanInfo.html#getUDRWriterCompileTimeData()"><code>UDRPlanInfo.getUDRWriterCompileTimeData()</code></a>, 
+<a href="../../../../org/trafodion/sql/udr/UDRInvocationInfo.html#getUDRWriterCompileTimeData()"><code>UDRInvocationInfo.getUDRWriterCompileTimeData()</code></a></dd></dl>
+</li>
+</ul>
+<a name="processData(org.trafodion.sql.udr.UDRInvocationInfo, org.trafodion.sql.udr.UDRPlanInfo)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>processData</h4>
+<pre>public abstract&nbsp;void&nbsp;processData(<a href="../../../../org/trafodion/sql/udr/UDRInvocationInfo.html" title="class in org.trafodion.sql.udr">UDRInvocationInfo</a>&nbsp;info,
+               <a href="../../../../org/trafodion/sql/udr/UDRPlanInfo.html" title="class in org.trafodion.sql.udr">UDRPlanInfo</a>&nbsp;plan)
+                          throws <a href="../../../../org/trafodion/sql/udr/UDRException.html" title="class in org.trafodion.sql.udr">UDRException</a></pre>
+<div class="block">Runtime code for UDRs.
+ <p>
+ This method must be implemented in derived class.</div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>info</code> - A description of the UDR invocation.</dd><dd><code>plan</code> - Plan-related description of the UDR invocation.</dd>
+<dt><span class="strong">Throws:</span></dt>
+<dd><code><a href="../../../../org/trafodion/sql/udr/UDRException.html" title="class in org.trafodion.sql.udr">UDRException</a></code> - If an exception occured in the UDR</dd></dl>
+</li>
+</ul>
+<a name="getNextRow(org.trafodion.sql.udr.UDRInvocationInfo)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getNextRow</h4>
+<pre>public final&nbsp;boolean&nbsp;getNextRow(<a href="../../../../org/trafodion/sql/udr/UDRInvocationInfo.html" title="class in org.trafodion.sql.udr">UDRInvocationInfo</a>&nbsp;info)
+                         throws <a href="../../../../org/trafodion/sql/udr/UDRException.html" title="class in org.trafodion.sql.udr">UDRException</a></pre>
+<div class="block">Read a row of the first table-value input.
+  <p>
+  This method can only be called from within processData().</div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>info</code> - A description of the UDR invocation.</dd>
+<dt><span class="strong">Returns:</span></dt><dd>true if another row could be read, false if it reached end of data.</dd>
+<dt><span class="strong">Throws:</span></dt>
+<dd><code><a href="../../../../org/trafodion/sql/udr/UDRException.html" title="class in org.trafodion.sql.udr">UDRException</a></code> - If an exception occured in the UDR</dd></dl>
+</li>
+</ul>
+<a name="emitRow(org.trafodion.sql.udr.UDRInvocationInfo)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>emitRow</h4>
+<pre>public final&nbsp;void&nbsp;emitRow(<a href="../../../../org/trafodion/sql/udr/UDRInvocationInfo.html" title="class in org.trafodion.sql.udr">UDRInvocationInfo</a>&nbsp;info)
+                   throws <a href="../../../../org/trafodion/sql/udr/UDRException.html" title="class in org.trafodion.sql.udr">UDRException</a></pre>
+<div class="block">Emit a row of a table-valued result.
+  <p>
+  This method can only be called from within UDR#processData(UDRInvocationInfo, UDRPlanInfo).</div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>info</code> - A description of the UDR invocation.</dd>
+<dt><span class="strong">Throws:</span></dt>
+<dd><code><a href="../../../../org/trafodion/sql/udr/UDRException.html" title="class in org.trafodion.sql.udr">UDRException</a></code> - If an exception occured in the UDR</dd></dl>
+</li>
+</ul>
+<a name="debugLoop()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>debugLoop</h4>
+<pre>public final&nbsp;void&nbsp;debugLoop()</pre>
+<div class="block">Debugging hook for UDRs.
+
+  This method is called in debug Trafodion builds when certain
+  flags are set in the UDR_DEBUG_FLAGS CQD (CONTROL QUERY DEFAULT).
+  See https://wiki.trafodion.org/wiki/index.php/Tutorial:_The_object-oriented_UDF_interface#Debugging_UDF_code
+  for details.
+
+  The default implementation prints out the process id and then
+  goes into an endless loop. The UDF writer can then attach a
+  debugger, set breakpoints and force the execution out of the loop.
+
+  Note that the printout of the pid may not always be displayed on
+  a terminal, for example if the process is executing on a different node.</div>
+</li>
+</ul>
+<a name="traceRow(org.trafodion.sql.udr.UDRInvocationInfo, org.trafodion.sql.udr.TupleInfo, int, java.lang.String)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>traceRow</h4>
+<pre>public&nbsp;void&nbsp;traceRow(<a href="../../../../org/trafodion/sql/udr/UDRInvocationInfo.html" title="class in org.trafodion.sql.udr">UDRInvocationInfo</a>&nbsp;info,
+            <a href="../../../../org/trafodion/sql/udr/TupleInfo.html" title="class in org.trafodion.sql.udr">TupleInfo</a>&nbsp;ti,
+            int&nbsp;tableIndex,
+            <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;formattedMsg)
+              throws <a href="../../../../org/trafodion/sql/udr/UDRException.html" title="class in org.trafodion.sql.udr">UDRException</a></pre>
+<dl><dt><span class="strong">Throws:</span></dt>
+<dd><code><a href="../../../../org/trafodion/sql/udr/UDRException.html" title="class in org.trafodion.sql.udr">UDRException</a></code></dd></dl>
+</li>
+</ul>
+<a name="getCurrentVersion()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getCurrentVersion</h4>
+<pre>public final&nbsp;int&nbsp;getCurrentVersion()</pre>
+</li>
+</ul>
+<a name="getFeaturesSupportedByUDF()">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>getFeaturesSupportedByUDF</h4>
+<pre>public&nbsp;int&nbsp;getFeaturesSupportedByUDF()</pre>
+<div class="block">For versioning, return features supported by the UDR writer.
+ <p>
+  This method can be used in the future to facilitate changes in
+  the UDR interface. UDR writers will be able to indicte through this
+  method whether they support new features.
+ <p>
+  The default implementation returns 0 (no extra features are supported).
+ <p></div>
+<dl><dt><span class="strong">Returns:</span></dt><dd>A yet to be determined set of bit flags or codes for supported features.</dd></dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar_bottom">
+<!--   -->
+</a><a href="#skip-navbar_bottom" title="Skip navigation links"></a><a name="navbar_bottom_firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/UDR.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/trafodion/sql/udr/TypeInfo.SQLTypeSubClassCode.html" title="enum in org.trafodion.sql.udr"><span class="strong">Prev Class</span></a></li>
+<li><a href="../../../../org/trafodion/sql/udr/UDR.QueueStateInfo.html" title="class in org.trafodion.sql.udr"><span class="strong">Next Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/trafodion/sql/udr/UDR.html" target="_top">Frames</a></li>
+<li><a href="UDR.html" target="_top">No Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li><a href="#nested_class_summary">Nested</a>&nbsp;|&nbsp;</li>
+<li><a href="#field_summary">Field</a>&nbsp;|&nbsp;</li>
+<li><a href="#constructor_summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method_summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li><a href="#field_detail">Field</a>&nbsp;|&nbsp;</li>
+<li><a href="#constructor_detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method_detail">Method</a></li>
+</ul>
+</div>
+<a name="skip-navbar_bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017. All rights reserved.</small></p>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/incubator-trafodion-site/blob/be8dfc15/apidocs/2.1.0/tmudr_javadoc/apidocs/org/trafodion/sql/udr/UDRException.html
----------------------------------------------------------------------
diff --git a/apidocs/2.1.0/tmudr_javadoc/apidocs/org/trafodion/sql/udr/UDRException.html b/apidocs/2.1.0/tmudr_javadoc/apidocs/org/trafodion/sql/udr/UDRException.html
new file mode 100644
index 0000000..4a4c26d
--- /dev/null
+++ b/apidocs/2.1.0/tmudr_javadoc/apidocs/org/trafodion/sql/udr/UDRException.html
@@ -0,0 +1,353 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!-- NewPage -->
+<html lang="en">
+<head>
+<!-- Generated by javadoc (version 1.7.0_99) on Fri Mar 03 08:42:48 UTC 2017 -->
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+<title>UDRException (trafodion-sql 2.1.0 API)</title>
+<meta name="date" content="2017-03-03">
+<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
+</head>
+<body>
+<script type="text/javascript"><!--
+    if (location.href.indexOf('is-external=true') == -1) {
+        parent.document.title="UDRException (trafodion-sql 2.1.0 API)";
+    }
+//-->
+</script>
+<noscript>
+<div>JavaScript is disabled on your browser.</div>
+</noscript>
+<!-- ========= START OF TOP NAVBAR ======= -->
+<div class="topNav"><a name="navbar_top">
+<!--   -->
+</a><a href="#skip-navbar_top" title="Skip navigation links"></a><a name="navbar_top_firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/UDRException.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/trafodion/sql/udr/UDR.QueueStateInfo.html" title="class in org.trafodion.sql.udr"><span class="strong">Prev Class</span></a></li>
+<li><a href="../../../../org/trafodion/sql/udr/UDRInvocationInfo.html" title="class in org.trafodion.sql.udr"><span class="strong">Next Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/trafodion/sql/udr/UDRException.html" target="_top">Frames</a></li>
+<li><a href="UDRException.html" target="_top">No Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_top">
+<li><a href="../../../../allclasses-noframe.html">All Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_top");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor_summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method_summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor_detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method_detail">Method</a></li>
+</ul>
+</div>
+<a name="skip-navbar_top">
+<!--   -->
+</a></div>
+<!-- ========= END OF TOP NAVBAR ========= -->
+<!-- ======== START OF CLASS DATA ======== -->
+<div class="header">
+<div class="subTitle">org.trafodion.sql.udr</div>
+<h2 title="Class UDRException" class="title">Class UDRException</h2>
+</div>
+<div class="contentContainer">
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
+<li>
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">java.lang.Throwable</a></li>
+<li>
+<ul class="inheritance">
+<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">java.lang.Exception</a></li>
+<li>
+<ul class="inheritance">
+<li>org.trafodion.sql.udr.UDRException</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+<div class="description">
+<ul class="blockList">
+<li class="blockList">
+<dl>
+<dt>All Implemented Interfaces:</dt>
+<dd><a href="http://docs.oracle.com/javase/7/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a></dd>
+</dl>
+<hr>
+<br>
+<pre>public class <span class="strong">UDRException</span>
+extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
+<div class="block">This is the exception to throw when an error occurs in a UDR.
+ <p>
+  The SQLState value must be a value between 38000 and 38999,
+  since the SQL standard reserves SQLState class 38 for user-written
+  code. SQLState values 38950 to 38999 are reserved for use by
+  Trafodion code. Trafodion will produce SQL error code -11252 when
+  this exception is thrown.</div>
+<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../serialized-form.html#org.trafodion.sql.udr.UDRException">Serialized Form</a></dd></dl>
+</li>
+</ul>
+</div>
+<div class="summary">
+<ul class="blockList">
+<li class="blockList">
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor_summary">
+<!--   -->
+</a>
+<h3>Constructor Summary</h3>
+<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
+<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colOne" scope="col">Constructor and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colOne"><code><strong><a href="../../../../org/trafodion/sql/udr/UDRException.html#UDRException(int,%20java.lang.String,%20java.lang.Object...)">UDRException</a></strong>(int&nbsp;sqlState,
+            <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;printf_format,
+            <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>...&nbsp;args)</code>
+<div class="block">Constructor with an integer value for SQLSTATE</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colOne"><code><strong><a href="../../../../org/trafodion/sql/udr/UDRException.html#UDRException(java.lang.String,%20java.lang.String,%20java.lang.Object...)">UDRException</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;sqlState,
+            <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;printf_format,
+            <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>...&nbsp;args)</code>
+<div class="block">Constructor with a string value for SQLSTATE</div>
+</td>
+</tr>
+</table>
+</li>
+</ul>
+<!-- ========== METHOD SUMMARY =========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method_summary">
+<!--   -->
+</a>
+<h3>Method Summary</h3>
+<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
+<caption><span>Methods</span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><strong><a href="../../../../org/trafodion/sql/udr/UDRException.html#getSQLState()">getSQLState</a></strong>()</code>
+<div class="block">Get the SQLSTATE value for this exception</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
+<td class="colLast"><code><strong><a href="../../../../org/trafodion/sql/udr/UDRException.html#getText()">getText</a></strong>()</code>
+<div class="block"><strong>Deprecated.</strong>&nbsp;
+<div class="block"><i>Use getMessage(), provided by the base class, instead.</i></div>
+</div>
+</td>
+</tr>
+</table>
+<ul class="blockList">
+<li class="blockList"><a name="methods_inherited_from_class_java.lang.Throwable">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true#addSuppressed(java.lang.Throwable)" title="class or interface in java.lang">addSuppressed</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true#fillInStackTrace()" title="class or interface in java.lang">fillInStackTrace</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true#getCause()" title="class or interface in java.lang">getCause</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true#getLocalizedMessage()" title="class or interface in java.lang">getLocalizedMessage</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true#getMessage()" title="class or interface in java.lang">getMessage</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true#getStackTrace()" title="class or inter
 face in java.lang">getStackTrace</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true#getSuppressed()" title="class or interface in java.lang">getSuppressed</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true#initCause(java.lang.Throwable)" title="class or interface in java.lang">initCause</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true#printStackTrace()" title="class or interface in java.lang">printStackTrace</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true#printStackTrace(java.io.PrintStream)" title="class or interface in java.lang">printStackTrace</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true#printStackTrace(java.io.PrintWriter)" title="class or interface in java.lang">printStackTrace</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lan
 g/Throwable.html?is-external=true#setStackTrace(java.lang.StackTraceElement[])" title="class or interface in java.lang">setStackTrace</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true#toString()" title="class or interface in java.lang">toString</a></code></li>
+</ul>
+<ul class="blockList">
+<li class="blockList"><a name="methods_inherited_from_class_java.lang.Object">
+<!--   -->
+</a>
+<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
+<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang
 /Object.html?is-external=true#wait(long)" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait(long,%20int)" title="class or interface in java.lang">wait</a></code></li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+<div class="details">
+<ul class="blockList">
+<li class="blockList">
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+<ul class="blockList">
+<li class="blockList"><a name="constructor_detail">
+<!--   -->
+</a>
+<h3>Constructor Detail</h3>
+<a name="UDRException(int, java.lang.String, java.lang.Object...)">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>UDRException</h4>
+<pre>public&nbsp;UDRException(int&nbsp;sqlState,
+            <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;printf_format,
+            <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>...&nbsp;args)</pre>
+<div class="block">Constructor with an integer value for SQLSTATE</div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>sqlState</code> - ISO/ANSI SQLSTATE value to produce for this error.
+                  According to the standard, this must be a value in
+                  the range of 38000 - 38999 (note that since we use
+                  an integer, non-numeric SQLSTATE values cannot be
+                  generated.</dd><dd><code>printf_format</code> - a format string like it is used in printf,
+                  with a variable list of arguments to be substituted.
+                  Example:
+                  new UDRException(38001, "num %d, string %s", 1, "a");</dd></dl>
+</li>
+</ul>
+<a name="UDRException(java.lang.String, java.lang.String, java.lang.Object...)">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>UDRException</h4>
+<pre>public&nbsp;UDRException(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;sqlState,
+            <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;printf_format,
+            <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>...&nbsp;args)</pre>
+<div class="block">Constructor with a string value for SQLSTATE</div>
+<dl><dt><span class="strong">Parameters:</span></dt><dd><code>sqlState</code> - ISO/ANSI SQLSTATE value to produce for this error.
+                  According to the standard, this must be a value of
+                  the form 38xxx, with the xxx being digits or upper
+                  case letters.</dd><dd><code>printf_format</code> - a format string like it is used in printf,
+                  with a variable list of arguments to be substituted.</dd></dl>
+</li>
+</ul>
+</li>
+</ul>
+<!-- ============ METHOD DETAIL ========== -->
+<ul class="blockList">
+<li class="blockList"><a name="method_detail">
+<!--   -->
+</a>
+<h3>Method Detail</h3>
+<a name="getSQLState()">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>getSQLState</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getSQLState()</pre>
+<div class="block">Get the SQLSTATE value for this exception</div>
+<dl><dt><span class="strong">Returns:</span></dt><dd>A string, representing the SQLSTATE.</dd></dl>
+</li>
+</ul>
+<a name="getText()">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>getText</h4>
+<pre><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
+public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getText()</pre>
+<div class="block"><span class="strong">Deprecated.</span>&nbsp;<i>Use getMessage(), provided by the base class, instead.</i></div>
+<div class="block">Get the error message associated with this exception</div>
+<dl><dt><span class="strong">Returns:</span></dt><dd>A string, representing the error message, including
+          any substituted text with the additional arguments
+          in the constructor.</dd></dl>
+</li>
+</ul>
+</li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+<!-- ========= END OF CLASS DATA ========= -->
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<div class="bottomNav"><a name="navbar_bottom">
+<!--   -->
+</a><a href="#skip-navbar_bottom" title="Skip navigation links"></a><a name="navbar_bottom_firstrow">
+<!--   -->
+</a>
+<ul class="navList" title="Navigation">
+<li><a href="../../../../overview-summary.html">Overview</a></li>
+<li><a href="package-summary.html">Package</a></li>
+<li class="navBarCell1Rev">Class</li>
+<li><a href="class-use/UDRException.html">Use</a></li>
+<li><a href="package-tree.html">Tree</a></li>
+<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
+<li><a href="../../../../index-all.html">Index</a></li>
+<li><a href="../../../../help-doc.html">Help</a></li>
+</ul>
+</div>
+<div class="subNav">
+<ul class="navList">
+<li><a href="../../../../org/trafodion/sql/udr/UDR.QueueStateInfo.html" title="class in org.trafodion.sql.udr"><span class="strong">Prev Class</span></a></li>
+<li><a href="../../../../org/trafodion/sql/udr/UDRInvocationInfo.html" title="class in org.trafodion.sql.udr"><span class="strong">Next Class</span></a></li>
+</ul>
+<ul class="navList">
+<li><a href="../../../../index.html?org/trafodion/sql/udr/UDRException.html" target="_top">Frames</a></li>
+<li><a href="UDRException.html" target="_top">No Frames</a></li>
+</ul>
+<ul class="navList" id="allclasses_navbar_bottom">
+<li><a href="../../../../allclasses-noframe.html">All Classes</a></li>
+</ul>
+<div>
+<script type="text/javascript"><!--
+  allClassesLink = document.getElementById("allclasses_navbar_bottom");
+  if(window==top) {
+    allClassesLink.style.display = "block";
+  }
+  else {
+    allClassesLink.style.display = "none";
+  }
+  //-->
+</script>
+</div>
+<div>
+<ul class="subNavList">
+<li>Summary:&nbsp;</li>
+<li>Nested&nbsp;|&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor_summary">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method_summary">Method</a></li>
+</ul>
+<ul class="subNavList">
+<li>Detail:&nbsp;</li>
+<li>Field&nbsp;|&nbsp;</li>
+<li><a href="#constructor_detail">Constr</a>&nbsp;|&nbsp;</li>
+<li><a href="#method_detail">Method</a></li>
+</ul>
+</div>
+<a name="skip-navbar_bottom">
+<!--   -->
+</a></div>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+<p class="legalCopy"><small>Copyright &#169; 2017. All rights reserved.</small></p>
+</body>
+</html>