
<!DOCTYPE html>
<!--
 Generated by Apache Maven Doxia at 2015-12-08
 Rendered using Reflow Maven Skin 1.1.1 (http://andriusvelykis.github.io/reflow-maven-skin)
-->
<html  xml:lang="en" lang="en">

	<head>
		<meta charset="UTF-8" />
		<title>Apache Trafodion Release 1.0.1</title>
		<meta name="viewport" content="width=device-width, initial-scale=1.0" />
		<meta name="description" content="" />
		<meta http-equiv="content-language" content="en" />

		<link href="http://netdna.bootstrapcdn.com/bootswatch/2.3.2/cerulean/bootstrap.min.css" rel="stylesheet" />
		<link href="http://netdna.bootstrapcdn.com/twitter-bootstrap/2.3.1/css/bootstrap-responsive.min.css" rel="stylesheet" />
		<link href="./css/bootswatch.css" rel="stylesheet" />
		<link href="./css/reflow-skin.css" rel="stylesheet" />

		<link href="http://yandex.st/highlightjs/7.5/styles/default.min.css" rel="stylesheet" />

		<link href="./css/lightbox.css" rel="stylesheet" />

		<link href="./css/site.css" rel="stylesheet" />
		<link href="./css/print.css" rel="stylesheet" media="print" />

		<!-- Le HTML5 shim, for IE6-8 support of HTML5 elements -->
		<!--[if lt IE 9]>
			<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
		<![endif]-->



	</head>

	<body class="page-release-notes-1-0-1 project-trafodion" data-spy="scroll" data-offset="60" data-target="#toc-scroll-target">

		<div class="navbar navbar-fixed-top">
			<div class="navbar-inner">
				<div class="container">
					<a class="btn btn-navbar" data-toggle="collapse" data-target="#top-nav-collapse">
						<span class="icon-bar"></span>
						<span class="icon-bar"></span>
						<span class="icon-bar"></span>
					</a>
					<a class="brand" href="index.html">Apache <span class="color-highlight">Trafodion</span></a>
					<div class="nav-collapse collapse" id="top-nav-collapse">
						<ul class="nav pull-right">
							<li ><a href="download.html" title="Download">Download</a></li>
							<li class="dropdown">
								<a href="#" class="dropdown-toggle" data-toggle="dropdown">About <b class="caret"></b></a>
								<ul class="dropdown-menu">
									<li ><a href="index.html" title="Project Overview">Project Overview</a></li>
									<li ><a href="new-features.html" title="New Features">New Features</a></li>
									<li ><a href="roadmap.html" title="Roadmap">Roadmap</a></li>
									<li ><a href="performance.html" title="Performance">Performance</a></li>
									<li ><a href="http:divider" title=""></a></li>
									<li ><a href="team-list.html" title="Team">Team</a></li>
									<li ><a href="presentations.html" title="Presentations">Presentations</a></li>
									<li ><a href="mail-lists.html" title="Mailing List">Mailing List</a></li>
									<li ><a href="http:divider" title=""></a></li>
									<li ><a href="source-repository.html" title="Source Repository">Source Repository</a></li>
									<li ><a href="issue-tracking.html" title="Issue Tracking">Issue Tracking</a></li>
									<li ><a href="license.html" title="License">License</a></li>
								</ul>
							</li>
							<li class="dropdown">
								<a href="#" class="dropdown-toggle" data-toggle="dropdown">Using <b class="caret"></b></a>
								<ul class="dropdown-menu">
									<li ><a href="quickstart.html" title="Quick Start">Quick Start</a></li>
									<li ><a href="download.html" title="Download">Download</a></li>
									<li ><a href="install.html" title="Install">Install</a></li>
									<li ><a href="management.html" title="Managing Trafodion">Managing Trafodion</a></li>
									<li ><a href="http:divider" title=""></a></li>
									<li ><a href="documentation.html" title="Documentation">Documentation</a></li>
									<li ><a href="faq.html" title="FAQ">FAQ</a></li>
									<li ><a href="release-notes.html" title="Release Notes">Release Notes</a></li>
								</ul>
							</li>
							<li class="dropdown">
								<a href="#" class="dropdown-toggle" data-toggle="dropdown">Features <b class="caret"></b></a>
								<ul class="dropdown-menu">
									<li ><a href="architecture-overview.html" title="Architecture Overview">Architecture Overview</a></li>
									<li ><a href="http:divider" title=""></a></li>
									<li ><a href="https://blueprints.launchpad.net/trafodion/+spec/security-ansi-schemas" title="ANSI Schema Support" class="externalLink">ANSI Schema Support</a></li>
									<li ><a href="https://blueprints.launchpad.net/trafodion/+spec/ustat-automation" title="Automated Update Statistics" class="externalLink">Automated Update Statistics</a></li>
									<li ><a href="https://blueprints.launchpad.net/trafodion/+spec/bulkunload" title="Bulk Unload" class="externalLink">Bulk Unload</a></li>
									<li ><a href="https://wiki.trafodion.org/wiki/index.php/Trafodion_Manageability#Logging_Events" title="Event Handling" class="externalLink">Event Handling</a></li>
									<li ><a href="https://blueprints.launchpad.net/trafodion/+spec/hybrid-query-cache" title="Hybrid Query Cache" class="externalLink">Hybrid Query Cache</a></li>
									<li ><a href="https://blueprints.launchpad.net/trafodion/+spec/identity-column" title="Identity Column" class="externalLink">Identity Column</a></li>
									<li ><a href="https://wiki.trafodion.org/wiki/index.php/Creating_Statistics_During_Bulk_Load" title="Immediate Update Statistics" class="externalLink">Immediate Update Statistics</a></li>
									<li ><a href="https://blueprints.launchpad.net/trafodion/+spec/lob-support" title="Large Object (LOB)" class="externalLink">Large Object (LOB)</a></li>
									<li ><a href="https://blueprints.launchpad.net/trafodion/+spec/ddl-query-invalidation" title="Metadata Query Invalidation" class="externalLink">Metadata Query Invalidation</a></li>
									<li ><a href="https://cwiki.apache.org/confluence/display/TRAFODION/Cmp-divisioning" title="Multi-Temperature Data" class="externalLink">Multi-Temperature Data</a></li>
									<li ><a href="https://blueprints.launchpad.net/trafodion/+spec/access-external-hbase-tables" title="Native HBase Tables" class="externalLink">Native HBase Tables</a></li>
									<li ><a href="docs/Trafodion_odb_User_Guide.pdf" title="ODB">ODB</a></li>
									<li ><a href="https://blueprints.launchpad.net/trafodion/+spec/sql-query-cancel" title="Query Cancel" class="externalLink">Query Cancel</a></li>
									<li ><a href="https://blueprints.launchpad.net/trafodion/+spec/security-privilege-updates" title="Privilege Checking" class="externalLink">Privilege Checking</a></li>
									<li ><a href="https://wiki.trafodion.org/wiki/index.php/Trafodion_Manageability" title="Repository" class="externalLink">Repository</a></li>
									<li ><a href="https://blueprints.launchpad.net/trafodion/+spec/enable-get-statistics-thru-rms" title="Runtime Management System" class="externalLink">Runtime Management System</a></li>
									<li ><a href="https://blueprints.launchpad.net/trafodion/+spec/sequence-numbers" title="Sequence Numbers" class="externalLink">Sequence Numbers</a></li>
									<li ><a href="https://blueprints.launchpad.net/trafodion/+spec/skew-buster" title="Skew Buster" class="externalLink">Skew Buster</a></li>
									<li ><a href="https://wiki.trafodion.org/wiki/index.php/Tutorial:_The_object-oriented_UDF_interface" title="Table-Oriented UDF" class="externalLink">Table-Oriented UDF</a></li>
									<li ><a href="https://wiki.trafodion.org/wiki/index.php/Data_Loading#Trickle_Loading_Data_Into_Trafodion_Tables" title="Trickle Load" class="externalLink">Trickle Load</a></li>
									<li ><a href="http:divider" title=""></a></li>
									<li ><a href="https://wiki.trafodion.org/wiki/index.php/Backup_and_Restore" title="Backup/Restore Utility" class="externalLink">Backup/Restore Utility</a></li>
									<li ><a href="https://wiki.trafodion.org/wiki/index.php/Metadata_Cleanup" title="Metadata Cleanup Utility" class="externalLink">Metadata Cleanup Utility</a></li>
								</ul>
							</li>
							<li class="dropdown">
								<a href="#" class="dropdown-toggle" data-toggle="dropdown">Contributing <b class="caret"></b></a>
								<ul class="dropdown-menu">
									<li ><a href="contribute.html" title="Contribute">Contribute</a></li>
									<li ><a href="advocate.html" title="Advocate">Advocate</a></li>
									<li ><a href="develop.html" title="Develop">Develop</a></li>
									<li ><a href="testing.html" title="Test">Test</a></li>
									<li ><a href="merge.html" title="Merge">Merge</a></li>
									<li ><a href="release.html" title="Release">Release</a></li>
									<li ><a href="http:divider" title=""></a></li>
									<li ><a href="create-dev-environment.html" title="Create Dev Environment">Create Dev Environment</a></li>
									<li ><a href="manage-dev-environment.html" title="Manage Dev Environment">Manage Dev Environment</a></li>
									<li ><a href="setup-build-environment.html" title="Setup Build Environment">Setup Build Environment</a></li>
									<li ><a href="build.html" title="Build Trafodion">Build Trafodion</a></li>
									<li ><a href="http:divider" title=""></a></li>
									<li ><a href="code.html" title="Modify Code">Modify Code</a></li>
									<li ><a href="tests.html" title="Modify Tests">Modify Tests</a></li>
									<li ><a href="document.html" title="Modify Documentation">Modify Documentation</a></li>
									<li ><a href="website.html" title="Modify Web Site">Modify Web Site</a></li>
									<li ><a href="wiki.html" title="Modify Wiki Pages">Modify Wiki Pages</a></li>
									<li ><a href="http:divider" title=""></a></li>
									<li ><a href="cplusplus-coding-guidelines.html" title="C++ Coding Guidelines">C++ Coding Guidelines</a></li>
								</ul>
							</li>
							<li class="dropdown">
								<a href="#" class="dropdown-toggle" data-toggle="dropdown">Apache <b class="caret"></b></a>
								<ul class="dropdown-menu">
									<li ><a href="http://incubator.apache.org/projects/trafodion.html" title="Status Page" target="_blank" class="externalLink">Status Page</a></li>
									<li ><a href="http://www.apache.org/foundation/how-it-works.html" title="Apache Foundation" target="_blank" class="externalLink">Apache Foundation</a></li>
									<li ><a href="http://www.apache.org/licenses/" title="Apache License" target="_blank" class="externalLink">Apache License</a></li>
									<li ><a href="http://www.apache.org/security/" title="Apache Security" target="_blank" class="externalLink">Apache Security</a></li>
									<li ><a href="http:divider" title=""></a></li>
									<li ><a href="http://www.apache.org/foundation/sponsorship.html" title="Sponsorship" target="_blank" class="externalLink">Sponsorship</a></li>
									<li ><a href="http://www.apache.org/foundation/thanks.html" title="Thanks" target="_blank" class="externalLink">Thanks</a></li>
								</ul>
							</li>
						</ul>
					</div><!--/.nav-collapse -->
				</div>
			</div>
		</div>

	<div class="container">

	<!-- Masthead
	================================================== -->

	<header>
	<div class="jumbotron subhead">
		<div class="row" id="banner">
			<div class="span12">
				<div class="pull-left">
					<a href="index.html" id="bannerLeft"><h1>Apache <span class="color-highlight">Trafodion</span></h1></a>
					<p class="lead">Transactional SQL-on-Hadoop Database</p>
				</div>
				<div class="pull-right">
				</div>
			</div>
		</div>
	</div>
		<div>
			<ul class="breadcrumb">
				<li><a href="index.html" title="Trafodion">Trafodion</a></li>
				<li class="divider">/</li>
				<li>Release 1.0.1</li>
			</ul>
		</div>
		<hr class="toc-separator" />
		<div id="toc-bar" class="navbar" data-spy="affix" data-offset-top="250">
			<div class="navbar-inner">
				<div id="toc-scroll-target" class="container">
					<a class="btn btn-navbar" data-toggle="collapse" data-target="#toc-nav-collapse">
						<span class="icon-bar"></span>
						<span class="icon-bar"></span>
						<span class="icon-bar"></span>
					</a>
					<div class="nav-collapse collapse" id="toc-nav-collapse">
						<ul id="toc" class="nav">
						<li class="toplevel"><a href="#supported_platforms" title="Supported Platforms">Supported Platforms</a></li>
						<li class="divider-vertical"></li>
						<li class="toplevel"><a href="#enhancements" title="Enhancements">Enhancements</a></li>
						<li class="divider-vertical"></li>
						<li class="toplevel"><a href="#fixes" title="Fixes">Fixes</a></li>
						<li class="divider-vertical"></li>
						<li class="dropdown">
							<a href="#known_issues" title="Known Issues" class="dropdown-toggle" role="button" data-toggle="dropdown" data-target="#">Known Issues <b class="caret"></b></a>
							<ul class="dropdown-menu" role="menu">
								<!-- Repeat the item, otherwise it is not clickable as the dropdown root -->
								<li><a href="#known_issues" title="Known Issues">Known Issues</a></li>
								<li class="divider"></li>
								<li><a href="#Getting_TM_error_97_when_tables_split_or_get_moved" title="Getting TM error 97 when tables split or get moved">Getting TM error 97 when tables split or get moved</a></li>
								<li><a href="#EXECUTEBATCH_update_creates_core-file" title="EXECUTE.BATCH update creates core-file">EXECUTE.BATCH update creates core-file</a></li>
								<li><a href="#Random_update_statistics_failures_with_HBase_OutOfOrderScannerNextException" title="Random update statistics failures with HBase OutOfOrderScannerNextException">Random update statistics failures with HBase OutOfOrderScannerNextException</a></li>
								<li><a href="#Following_update_statistics_stats_do_not_take_effect_immediately" title="Following update statistics, stats do not take effect immediately">Following update statistics, stats do not take effect immediately</a></li>

							</ul>
						</li>
						</ul>
					</div>
				</div>
			</div>
		</div>
	</header>

	<div class="main-body">
	<div class="row">
		<div class="span12">
			<div class="body-content">
<!-- Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.
  You may obtain a copy of the License at

      http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License. --> 
<p>This is the source-only release of the Apache Trafodion (incubating) project. This release provides product-level collection of query statistics and critical bug fixes above <a href="release-notes-1-0-0.html">1.0.0</a>.</p> 
<p>Build instructions are available <a href="build.html">here</a>.</p> 
<div class="page-header">
 <h1 id="supported_platforms">Supported Platforms</h1>
</div> 
<p>The following platforms are supported in this release.</p> 
<p><span> </span></p> 
<table border="0" class="bodyTable table table-striped table-hover"> 
 <tbody> 
  <tr class="a"> 
   <td><b>Operating Systems</b></td> 
   <td>CentOS 6.5 – 6.7</td> 
  </tr> 
  <tr class="b"> 
   <td><b>Hadoop Distributions</b></td> 
   <td>Cloudera CDH distribution 5.1 and Hortonworks distribution HDP 2.1</td> 
  </tr> 
  <tr class="a"> 
   <td><b>Java Version</b></td> 
   <td>JDK 1.7.0_67 or newer</td> 
  </tr> 
  <tr class="b"> 
   <td><b>HBase Version</b></td> 
   <td>HBase 0.98.x</td> 
  </tr> 
 </tbody> 
</table> 
<h1 id="enhancements">Enhancements</h1> 
<p>This release contains the following new features.</p> 
<p><span> </span></p> 
<table border="0" class="bodyTable table table-striped table-hover"> 
 <thead> 
  <tr class="a"> 
   <th>Category</th> 
   <th>Feature</th> 
   <th>Defect ID</th> 
  </tr> 
 </thead> 
 <tbody> 
  <tr class="b"> 
   <td><b>High Availability</b></td> 
   <td>Production Ready: 
    <ul> 
     <li>Recovery from Trafodion infrastructure process failures. (Transaction Manager, Monitor)</li> 
     <li>Recovery from HBase Region Server failures.</li> 
     <li>Recovery from node failures.</li> 
     <li>Recovery from catastrophic system failures.</li> 
    </ul> </td> 
   <td></td> 
  </tr> 
  <tr class="a"> 
   <td><b>Performance</b></td> 
   <td>Production Ready: 
    <ul> 
     <li><a class="externalLink" href="https://blueprints.launchpad.net/trafodion/+spec/ustat-automation">Automated Update Statistics</a> (initial, basic support).</li> 
     <li>Nested join enhancements.</li> 
     <li>Index support enhancements.</li> 
     <li>Scan performance.</li> 
    </ul> Technology Preview: 
    <ul> 
     <li><a class="externalLink" href="https://cwiki.apache.org/confluence/display/TRAFODION/Cmp-divisioning">Multi-Temperature Data</a> (Complete But Not Tested)</li> 
    </ul> For more information about automated update statistics and index support enhancements, see the <a href="docs/Trafodion_SQL_Reference_Manual.pdf">Trafodion SQL Reference Manual</a>. </td> 
   <td></td> 
  </tr> 
  <tr class="b"> 
   <td><b>Usability</b></td> 
   <td>Technology Preview: 
    <ul> 
     <li><a class="externalLink" href="https://blueprints.launchpad.net/trafodion/+spec/access-external-hbase-tables">Native HBase Tables</a> — Select/insert/update/delete data. (Complete But Not Tested)</li> 
     <li><a class="externalLink" href="https://blueprints.launchpad.net/trafodion/+spec/sequence-numbers">Sequence numbers</a> and <a class="externalLink" href="https://blueprints.launchpad.net/trafodion/+spec/identity-column">IDENTITY column</a> (Complete But Not Tested)</li> 
     <li>Oracle compatibility features (disabled by default) (Complete But Not Tested)</li> 
     <li><a class="externalLink" href="https://blueprints.launchpad.net/trafodion/+spec/lob-support">Large Objects (LOB)</a> support (Work in Progress)</li> 
    </ul> </td> 
   <td></td> 
  </tr> 
  <tr class="a"> 
   <td><b>Database Movement and Connectivity</b></td> 
   <td>Production Ready: 
    <ul> 
     <li><a class="externalLink" href="https://blueprints.launchpad.net/trafodion/+spec/bulkunload">Bulk Unload</a></li> 
    </ul> Technology Preview: 
    <ul> 
     <li><a class="externalLink" href="https://wiki.trafodion.org/wiki/index.php/Backup_and_Restore">Backup/Restore</a>. (Complete But Not Tested)</li> 
     <li>Thread-Safe JDBC Type 2 Driver. (Complete But Not Tested)</li> 
    </ul> For more information about the new UNLOAD statement, see the <a href="docs/Trafodion_SQL_Reference_Manual.pdf">Trafodion SQL Reference Manual</a>. </td> 
   <td></td> 
  </tr> 
  <tr class="b"> 
   <td><b>Manageability</b></td> 
   <td>Production Ready: 
    <ul> 
     <li>Visibility of SQL runtime statistics via the <a class="externalLink" href="https://blueprints.launchpad.net/trafodion/+spec/enable-get-statistics-thru-rms">Runtime Management System (RMS)</a>.</li> 
     <li>Ability to <a class="externalLink" href="https://blueprints.launchpad.net/trafodion/+spec/sql-query-cancel">Cancel Queries</a> (DML statements only, not DDL, update statistics, and additional child query operations).</li> 
     <li><a class="externalLink" href="https://wiki.trafodion.org/wiki/index.php/Trafodion_Manageability#Logging_Events">Event Handling</a> through UDFs and log4cpp.</li> 
     <li>Collection of session and query statistics in <a class="externalLink" href="https://wiki.trafodion.org/wiki/index.php/Trafodion_Manageability">Repository Tables</a> (disabled by default)</li> 
    </ul> For more information about gathering SQL runtime statistics and canceling an executing query, see the <a href="docs/Trafodion_SQL_Reference_Manual.pdf">Trafodion SQL Reference Manual</a>. </td> 
   <td></td> 
  </tr> 
  <tr class="a"> 
   <td><b>Security</b></td> 
   <td>Production Ready: 
    <ul> 
     <li><a class="externalLink" href="https://blueprints.launchpad.net/trafodion/+spec/security-ansi-schemas">ANSI Schema Support</a>.</li> 
     <li><a class="externalLink" href="https://blueprints.launchpad.net/trafodion/+spec/security-privilege-updates">Privilege checking for SPJs, UDFs, libraries, and sequence generators</a>.</li> 
     <li><a class="externalLink" href="https://blueprints.launchpad.net/trafodion/+spec/security-privilege-updates">Privilege checking for utilities</a>.</li> 
     <li><a class="externalLink" href="https://blueprints.launchpad.net/trafodion/+spec/ddl-query-invalidation">Metadata Query Invalidation</a> (that is, detection and propagation of privilege changes to SQL compilers).</li> 
    </ul> For more information about ANSI schema support and privilege and authorization updates in this release, see the <a href="docs/Trafodion_SQL_Reference_Manual.pdf">Trafodion SQL Reference Manual</a>. </td> 
   <td></td> 
  </tr> 
 </tbody> 
</table> 
<h1 id="fixes">Fixes</h1> 
<p>This release contains fixes to around 85 defects, including 25 critical defects, 54 high defects, and 10 medium and low defects. Those defects were filed through <a class="externalLink" href="https://launchpad.net/trafodion/+milestone/r1.1">Launchpad</a>.</p> 
<h1 id="known_issues">Known Issues</h1> 
<p>Release 1.0.1 provides fixes to these bugs:</p> 
<ul> 
 <li><b><a class="externalLink" href="https://bugs.launchpad.net/trafodion/+bug/1415165">1415165</a></b>: MXOSRVR memory leak when stats are enabled</li> 
 <li><b><a class="externalLink" href="https://bugs.launchpad.net/trafodion/+bug/1421727">1421727</a></b>: Default/aggregated stats type not publishing query stats</li> 
 <li><b><a class="externalLink" href="https://bugs.launchpad.net/trafodion/+bug/1416539">1416539</a></b> Snapshot scan installer additions</li> 
 <li><b><a class="externalLink" href="https://bugs.launchpad.net/trafodion/+bug/1413418">1413418</a></b>: Need metadata upgrade option in installer</li> 
</ul> 
<div class="section"> 
 <h2 id="Getting_TM_error_97_when_tables_split_or_get_moved">Getting TM error 97 when tables split or get moved</h2> 
 <p><b>Defect:</b> <a class="externalLink" href="https://bugs.launchpad.net/trafodion/+bug/1274651">1274651</a></p> 
 <p><b>Symptom:</b> HBase Region Splits, Load Balancing, and Error 97.</p> 
 <p><b>Cause:</b> As part of an HBase environment’s ongoing operations (and based on the policies configured for the HBase environment), an HBase region can either get split (into two daughter regions) or moved to a different region server. (Please see the blog: <a class="externalLink" href="http://hortonworks.com/blog/apache-hbase-region-splitting-and-merging/">http://hortonworks.com/blog/apache-hbase-region-splitting-and-merging/</a>.) If that happens when a Trafodion transaction is active (and operates on rows within the region that is being split or load-balanced), then a subsequent transaction commit operation by the application might encounter an error 97. Please note that under such conditions the Trafodion Transaction Manager will abort the transaction and will preserve the integrity of the database.</p> 
 <p><b>Solution:</b> To minimize disruptions when this happens, we suggest that you use one or more of the following approaches:</p> 
 <ol style="list-style-type: decimal"> 
  <li>Enhance your JDBC application logic to retry when an error 97 is returned for a commit operation.</li> 
  <li>Update the HBase configuration to reduce the times when such disruptions happen. It involves updates to some properties that can be set in <tt>hbase-site.xml</tt> (or via the manageability interface of your Hadoop distribution).</li> 
  <ul> 
   <li>Set the maximum file size of an HBase Region to 100 GB. For example, set the value of the property <tt>hbase.hregion.max.filesize</tt> to <tt>107374182400</tt>.</li> 
   <li> <p>Set the HBase region split policy to '<tt>ConstantSizeRegionSplitPolicy</tt>'. For example, set the value of the property <tt>hbase.regionserver.region.split.policy</tt> to <tt>org.apache.hadoop.hbase.regionserver.ConstantSizeRegionSplitPolicy</tt>.</p> <p><b>NOTE</b>: The split policy should already be set to '<tt>onstantSizeRegionSplitPolicy</tt>' by the Trafodion installer.</p> <p><b>Summary</b></p> <p> <span> </span></p> 
    <table border="0" class="bodyTable table table-striped table-hover"> 
     <thead> 
      <tr class="a"> 
       <th>Property</th> 
       <th>Value</th> 
      </tr> 
     </thead> 
     <tbody> 
      <tr class="b"> 
       <td><tt>hbase.hregion.max.filesize</tt></td> 
       <td><tt>107374182400</tt></td> 
      </tr> 
      <tr class="a"> 
       <td><tt>hbase.regionserver.region.split.policy</tt></td> 
       <td><tt>org.apache.hadoop.hbase.regionserver.ConstantSizeRegionSplitPolicy</tt></td> 
      </tr> 
     </tbody> 
    </table> More information: [http://hortonworks.com/blog/apache-hbase-region-splitting-and-merging/](http://hortonworks.com/blog/apache-hbase-region-splitting-and-merging/) </li> 
  </ul> 
  <li> <p>Disable HBase Region Load Balancing. Use the HBase shell command balance_switch false to disable the movement of a region from one server to another.</p> <p><b>Example</b></p> 
   <div> 
    <pre>
hbase shell
hbase(main):002:0&gt; balance_switch false
true  -- Output will be the last setting of the balance_switch value
0 row(s) in 0.0080 seconds
        </pre> 
   </div> </li> 
  <li> Pre-split the table into multiple regions by using the <tt>SALT USING n PARTITIONS</tt> clause when creating the table. The number of partitions that you specify could be a function of the number of region servers present in the HBase cluster. Here is a simple example in which the table INVENTORY is pre-split into four regions when created: 
   <div> 
    <pre>
CREATE TABLE INVENTORY
  (
    ITEM_ID       INT UNSIGNED NO DEFAULT NOT NULL
  , ITEM_TYPE     INT UNSIGNED NO DEFAULT NOT NULL
  , ITEM_COUNT    INT UNSIGNED NO DEFAULT NOT NULL
  , PRIMARY KEY (ITEM_ID ASC)
  )  SALT USING 4 PARTITIONS
  ;    </pre> 
   </div> </li> 
 </ol> 
</div> 
<div class="section"> 
 <h2 id="EXECUTEBATCH_update_creates_core-file">EXECUTE.BATCH update creates core-file</h2> 
 <p><b>Defect:</b> <a class="externalLink" href="https://bugs.launchpad.net/trafodion/+bug/1274962">1274962</a></p> 
 <p><b>Symptom:</b> <tt>EXECUTE.BATCH</tt> hangs for a long time doing updates, and the update creates a core file.</p> 
 <p><b>Cause:</b> To be determined.</p> 
 <p><b>Solution:</b> Batch updates and ODBC row arrays do not currently work.</p> 
</div> 
<div class="section"> 
 <h2 id="Random_update_statistics_failures_with_HBase_OutOfOrderScannerNextException">Random update statistics failures with HBase OutOfOrderScannerNextException</h2> 
 <p><b>Defect:</b> <a class="externalLink" href="https://bugs.launchpad.net/trafodion/+bug/1391271">1391271</a></p> 
 <p><b>Symptom:</b> While running update statistics commands, you see HBase OutOfOrderScannerNextException errors.</p> 
 <p><b>Cause:</b> The default <tt>hbase.rpc.timeout</tt> and <tt>hbase.client.scanner.timeout.period</tt> values might be too low given the size of the tables. Sampling in update statistics is implemented using the HBase Random RowFilter. For very large tables with several billion rows, the sampling ratio required to get a sample of 1 million rows is very small. This can result in HBase client connection timeout errors since there may be no row returned by a RegionServer for an extended period of time.</p> 
 <p><b>Solution:</b> Increase the <tt>hbase.rpc.timeout</tt> and <tt>hbase.client.scanner.timeout.period</tt> values. We have found that increasing those values to 600 seconds (10 minutes) might sometimes prevent many timeout-related errors. For more information, see the <a class="externalLink" href="https://wiki.trafodion.org/wiki/index.php/Configuration#Recommendations">HBase Configuration and Fine Tuning Recommendations</a>.</p> 
 <p>If increasing the <tt>hbase.rpc.timeout</tt> and <tt>hbase.client.scanner.timeout.period</tt> values does not work, try increasing the chosen sampling size. Choose a sampling percentage higher than the default setting of 1 million rows for large tables. For example, suppose table T has one billion rows. The following <tt>UPDATE STATISTICS</tt> statement will sample a million rows, or approximately one-tenth of one percent of the total rows:</p> 
 <div class="source"> 
  <div class="source"> 
   <pre>update statistics for table T on every column sample;
</pre> 
  </div> 
 </div> 
 <p>To sample one percent of the rows, regardless of the table size, you must explicitly state the sampling rate as follows:</p> 
 <div class="source"> 
  <div class="source"> 
   <pre>update statistics for table T on every column sample random 1 percent;
</pre> 
  </div> 
 </div> 
</div> 
<div class="section"> 
 <h2 id="Following_update_statistics_stats_do_not_take_effect_immediately">Following update statistics, stats do not take effect immediately</h2> 
 <p><b>Defect:</b> <a class="externalLink" href="https://bugs.launchpad.net/trafodion/+bug/1409937">1409937</a></p> 
 <p><b>Symptom:</b> Immediately following an update statistics operation, the generated query plan does not seem to reflect the existence of statistics. For example, in a session, you create, and populate a table and then run update statistics on the table, prepare a query, and exit. A serial plan is generated and the estimated cardinality is 100 for both tables. In a new session, you prepare the same query, and a parallel plan is generated where the estimated cardinality reflects the statistics.</p> 
 <p><b>Cause:</b> This is a day-one issue.</p> 
 <p><b>Solution:</b> Retry the query after two minutes. Set <tt>CQD HIST_NO_STATS_REFRESH_INTERVAL</tt> to ‘<tt>0</tt>’. Run an <tt>UPDATE STATISTICS</tt> statement. Perform DML operations in a different session.</p> 
</div>
			</div>
		</div>
	</div>
	</div>

	</div><!-- /container -->

	<!-- Footer
	================================================== -->
	<footer class="well">
		<div class="container">
			<div class="row">
				<div class="span2 bottom-nav">
					<ul class="nav nav-list">
						<li class="nav-header">About</li>
						<li >
							<a href="index.html" title="Project Overview">Project Overview</a>
						</li>
						<li >
							<a href="new-features.html" title="New Features">New Features</a>
						</li>
						<li >
							<a href="roadmap.html" title="Roadmap">Roadmap</a>
						</li>
						<li >
							<a href="performance.html" title="Performance">Performance</a>
						</li>
						<li >
							<a href="http:divider" title=""></a>
						</li>
						<li >
							<a href="team-list.html" title="Team">Team</a>
						</li>
						<li >
							<a href="presentations.html" title="Presentations">Presentations</a>
						</li>
						<li >
							<a href="mail-lists.html" title="Mailing List">Mailing List</a>
						</li>
						<li >
							<a href="http:divider" title=""></a>
						</li>
						<li >
							<a href="source-repository.html" title="Source Repository">Source Repository</a>
						</li>
						<li >
							<a href="issue-tracking.html" title="Issue Tracking">Issue Tracking</a>
						</li>
						<li >
							<a href="license.html" title="License">License</a>
						</li>
					</ul>
				</div>
				<div class="span2 bottom-nav">
					<ul class="nav nav-list">
						<li class="nav-header">Using</li>
						<li >
							<a href="quickstart.html" title="Quick Start">Quick Start</a>
						</li>
						<li >
							<a href="download.html" title="Download">Download</a>
						</li>
						<li >
							<a href="install.html" title="Install">Install</a>
						</li>
						<li >
							<a href="management.html" title="Managing Trafodion">Managing Trafodion</a>
						</li>
						<li >
							<a href="http:divider" title=""></a>
						</li>
						<li >
							<a href="documentation.html" title="Documentation">Documentation</a>
						</li>
						<li >
							<a href="faq.html" title="FAQ">FAQ</a>
						</li>
						<li >
							<a href="release-notes.html" title="Release Notes">Release Notes</a>
						</li>
					</ul>
				</div>
				<div class="span2 bottom-nav">
					<ul class="nav nav-list">
						<li class="nav-header">Features</li>
						<li >
							<a href="architecture-overview.html" title="Architecture Overview">Architecture Overview</a>
						</li>
						<li >
							<a href="http:divider" title=""></a>
						</li>
						<li >
							<a href="https://blueprints.launchpad.net/trafodion/+spec/security-ansi-schemas" title="ANSI Schema Support" class="externalLink">ANSI Schema Support</a>
						</li>
						<li >
							<a href="https://blueprints.launchpad.net/trafodion/+spec/ustat-automation" title="Automated Update Statistics" class="externalLink">Automated Update Statistics</a>
						</li>
						<li >
							<a href="https://blueprints.launchpad.net/trafodion/+spec/bulkunload" title="Bulk Unload" class="externalLink">Bulk Unload</a>
						</li>
						<li >
							<a href="https://wiki.trafodion.org/wiki/index.php/Trafodion_Manageability#Logging_Events" title="Event Handling" class="externalLink">Event Handling</a>
						</li>
						<li >
							<a href="https://blueprints.launchpad.net/trafodion/+spec/hybrid-query-cache" title="Hybrid Query Cache" class="externalLink">Hybrid Query Cache</a>
						</li>
						<li >
							<a href="https://blueprints.launchpad.net/trafodion/+spec/identity-column" title="Identity Column" class="externalLink">Identity Column</a>
						</li>
						<li >
							<a href="https://wiki.trafodion.org/wiki/index.php/Creating_Statistics_During_Bulk_Load" title="Immediate Update Statistics" class="externalLink">Immediate Update Statistics</a>
						</li>
						<li >
							<a href="https://blueprints.launchpad.net/trafodion/+spec/lob-support" title="Large Object (LOB)" class="externalLink">Large Object (LOB)</a>
						</li>
						<li >
							<a href="https://blueprints.launchpad.net/trafodion/+spec/ddl-query-invalidation" title="Metadata Query Invalidation" class="externalLink">Metadata Query Invalidation</a>
						</li>
						<li >
							<a href="https://cwiki.apache.org/confluence/display/TRAFODION/Cmp-divisioning" title="Multi-Temperature Data" class="externalLink">Multi-Temperature Data</a>
						</li>
						<li >
							<a href="https://blueprints.launchpad.net/trafodion/+spec/access-external-hbase-tables" title="Native HBase Tables" class="externalLink">Native HBase Tables</a>
						</li>
						<li >
							<a href="docs/Trafodion_odb_User_Guide.pdf" title="ODB">ODB</a>
						</li>
						<li >
							<a href="https://blueprints.launchpad.net/trafodion/+spec/sql-query-cancel" title="Query Cancel" class="externalLink">Query Cancel</a>
						</li>
						<li >
							<a href="https://blueprints.launchpad.net/trafodion/+spec/security-privilege-updates" title="Privilege Checking" class="externalLink">Privilege Checking</a>
						</li>
						<li >
							<a href="https://wiki.trafodion.org/wiki/index.php/Trafodion_Manageability" title="Repository" class="externalLink">Repository</a>
						</li>
						<li >
							<a href="https://blueprints.launchpad.net/trafodion/+spec/enable-get-statistics-thru-rms" title="Runtime Management System" class="externalLink">Runtime Management System</a>
						</li>
						<li >
							<a href="https://blueprints.launchpad.net/trafodion/+spec/sequence-numbers" title="Sequence Numbers" class="externalLink">Sequence Numbers</a>
						</li>
						<li >
							<a href="https://blueprints.launchpad.net/trafodion/+spec/skew-buster" title="Skew Buster" class="externalLink">Skew Buster</a>
						</li>
						<li >
							<a href="https://wiki.trafodion.org/wiki/index.php/Tutorial:_The_object-oriented_UDF_interface" title="Table-Oriented UDF" class="externalLink">Table-Oriented UDF</a>
						</li>
						<li >
							<a href="https://wiki.trafodion.org/wiki/index.php/Data_Loading#Trickle_Loading_Data_Into_Trafodion_Tables" title="Trickle Load" class="externalLink">Trickle Load</a>
						</li>
						<li >
							<a href="http:divider" title=""></a>
						</li>
						<li >
							<a href="https://wiki.trafodion.org/wiki/index.php/Backup_and_Restore" title="Backup/Restore Utility" class="externalLink">Backup/Restore Utility</a>
						</li>
						<li >
							<a href="https://wiki.trafodion.org/wiki/index.php/Metadata_Cleanup" title="Metadata Cleanup Utility" class="externalLink">Metadata Cleanup Utility</a>
						</li>
					</ul>
				</div>
				<div class="span2 bottom-nav">
					<ul class="nav nav-list">
						<li class="nav-header">Contributing</li>
						<li >
							<a href="contribute.html" title="Contribute">Contribute</a>
						</li>
						<li >
							<a href="advocate.html" title="Advocate">Advocate</a>
						</li>
						<li >
							<a href="develop.html" title="Develop">Develop</a>
						</li>
						<li >
							<a href="testing.html" title="Test">Test</a>
						</li>
						<li >
							<a href="merge.html" title="Merge">Merge</a>
						</li>
						<li >
							<a href="release.html" title="Release">Release</a>
						</li>
						<li >
							<a href="http:divider" title=""></a>
						</li>
						<li >
							<a href="create-dev-environment.html" title="Create Dev Environment">Create Dev Environment</a>
						</li>
						<li >
							<a href="manage-dev-environment.html" title="Manage Dev Environment">Manage Dev Environment</a>
						</li>
						<li >
							<a href="setup-build-environment.html" title="Setup Build Environment">Setup Build Environment</a>
						</li>
						<li >
							<a href="build.html" title="Build Trafodion">Build Trafodion</a>
						</li>
						<li >
							<a href="http:divider" title=""></a>
						</li>
						<li >
							<a href="code.html" title="Modify Code">Modify Code</a>
						</li>
						<li >
							<a href="tests.html" title="Modify Tests">Modify Tests</a>
						</li>
						<li >
							<a href="document.html" title="Modify Documentation">Modify Documentation</a>
						</li>
						<li >
							<a href="website.html" title="Modify Web Site">Modify Web Site</a>
						</li>
						<li >
							<a href="wiki.html" title="Modify Wiki Pages">Modify Wiki Pages</a>
						</li>
						<li >
							<a href="http:divider" title=""></a>
						</li>
						<li >
							<a href="cplusplus-coding-guidelines.html" title="C++ Coding Guidelines">C++ Coding Guidelines</a>
						</li>
					</ul>
				</div>
				<div class="span4 bottom-description">
					<blockquote><a href="http://trafodion.apache.org/">Apache Trafodion</a> is a webscale SQL-on-Hadoop solution enabling transactional or operational
          workloads on Hadoop. <br /><br />The name &quot;Trafodion&quot; (the Welsh word for transactions, pronounced
          &quot;Tra-vod-eee-on&quot;) was chosen specifically to emphasize the differentiation that 
          Trafodion provides in closing a critical gap in the Hadoop ecosystem.<br /><br />          
          Trafodion builds on the scalability, elasticity, and flexibility of Hadoop. Trafodion extends 
          Hadoop to provide guaranteed transactional integrity, enabling new kinds of big data 
          applications to run on Hadoop.</blockquote>
				</div>
			</div>
		</div>
	</footer>

	<div class="container subfooter">
		<div class="row">
			<div class="span12">
				<p class="pull-right"><a href="#">Back to top</a></p>
				<p class="copyright">Copyright &copy;2015 <a href="http://www.apache.org">Apache Software Foundation</a>. All Rights Reserved.</p>
		
<hr/>
<div class="row span16">
  <span>Disclaimer: Apache Trafodion is an effort undergoing incubation at the Apache Software Foundation (ASF), sponsored by the Apache Incubator PMC. 
        Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making 
        process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the 
        completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.</span>
  <br/>
  <br/>
  <span>Apache, Apache Maven, Apache Maven Fluido Skin, the Apache feather logo, the Apache Maven project logo and the Apache Incubator project logo 
        are trademarks of The Apache Software Foundation.</span>
  <br/>
  <br/>
  <span>
    <a target="_blank" href="http://www.apache.org">
      <img id="asf-logo" alt="Apache Software Foundation" src="images/logos/feather-small.gif"/>
    </a>
    <a target="_blank" href="http://incubator.apache.org/">
      <img id="incubator-logo" alt="Apache Incubator" src="images/logos/egg-logo.gif"/>
    </a>
  </span>
</div>			</div>
		</div>
	</div>

	<!-- Le javascript
	================================================== -->
	<!-- Placed at the end of the document so the pages load faster -->
	<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>

	<script src="http://netdna.bootstrapcdn.com/twitter-bootstrap/2.3.2/js/bootstrap.min.js"></script>
	<script src="./js/lightbox.min.js"></script>
	<script src="./js/reflow-scroll.js"></script>
	<script src="http://yandex.st/highlightjs/7.5/highlight.min.js"></script>

	<script src="./js/reflow-skin.js"></script>

	</body>
</html>
