This is the first release of the Apache Trafodion (incubating) project. In addition to including a number of new features and improvements across the project, the focus of this release is to comply with Apache release guidelines.

Build instructions are available here.

Supported Platforms

The following platforms are supported in this release.

Operating Systems CentOS 6.5 – 6.7
Hadoop Distributions Cloudera distributions CDH 5.3.x
Hortonworks distribution HDP 2.2
Java Version JDK 1.7.0_67 or newer
HBase Version HBase 0.98.x

New Features

This release contains the following new features.

Category Feature Defect ID
SQL Support for IDENTITY columns. (TRAFODION-62)
SQL Support HBase region splitting and re-balancing with active transactions. (TRAFODION-34)
Installer Support for Batch feature in Installer. (TRAFODION-1543)
Installer Support for Cloudera parcels feature in Installer. (TRAFODION-1452)
SQL Support for Multi-Temperate data – Part 1. (TRAFODION-49)
UDF Compile time interface for Table Mapping UDFs (TMUDF). (TRAFODION-51)
SQL Support for multiple column families in a Trafodion table. (TRAFODION-1419)
SQL Support for MODIFY COLUMN attribute for ALTER TABLE. (TRAFODION-18)

Improvements

This release contains the following improvements.

Category Feature Defect ID
SQL Enable HBase serialization feature. TRAFODION-1462
SQL Enable EXPLAIN_IN_RMS feature by default. TRAFODION-1460
Performance Reduce the path length for IUD operations in Trafodion. TRAFODION-1444
SQL Enable Compressed Internal Format (CIF) for Trafodion scan operator. TRAFODION-1424
Build Maven components to use locally built JDBC jar file. TRAFODION-1437
Build Numerous build improvements.

Fixes

This release contains fixes for 114 bugs.

Known Issues

HBase Lease Timeout Patch

HBase uses a lease mechanism to protect against memory leaks in Region Servers caused by potential client instabilities that would open scanners, but die before having the opportunity to close cleanly and release resources. This mechanism relies on a server side timer, configured by the ‘hbase.client.scanner.timeout.period’ parameter in ‘hbase-site.xml’. If a client fails to call ‘next()’ within the timeout period, the server will assume the client died, and will force close the server side scanner and release resources. However, in Trafodion, there are legitimate use cases where client is busy doing heavy processing, and needs more time than specified in the default scanner timeout value. Increasing the ‘hbase.client.scanner.timeout.period’ value has the side effect of weakening the safety mechanism previously described.

The HBase community agrees that the correct behavior of this safety feature should be to have the client reset the scanner and resume where it left off instead of giving up and throwing an exception. The change will be implemented in a future release of HBase. In the meantime, this release includes a mechanism to invoke the correct behavior via a custom setting. You can enable the behavior by adding this parameter in ‘hbase-site.xml’.

<property> 
  <name>hbase.trafodion.patchclientscanner.enabled</name>
  <value>true</value> 
  <description>
    Enable a Trafodion feature to allow a client to reset the HBase scanner and resume where it left off instead of throwing an exception upon expiration of the HBase hbase.client.scanner.timeout.period timer.
  </description>
</property>

The default value of the parameter is false.

Back to top


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.