This is the second release of the Apache Trafodion (incubating) project. It builds on the initial R1.3 release, with many new features and improvements, and will offer a binary package for the first time.
Build instructions are available here.
This release contains 250+ fixes.
This release does not include convenience binaries for the client package due to a licensing issue. Convenience binaries will be included in a follow-on patch release (R2.0.1) that should be available shortly. During this time, existing documentation (Trafodion Client Installation Guide and Trafodion Provisioning Guide), which refer to binaries, will be briefly out of sync.
New SQL procedures have been added to manage user libraries. If you have an existing Trafodion installation, execute the following as user trafodion.
$ sqlci sql> initialize trafodion, create library management; sql> exit;
This statement creates a new schema called _LIBMGR_ and creates the library management procedures in this schema. If security is enabled, a new system role called DM__LIBMGRROLE is added.
A new CQD ESP_IDLE_TIMEOUT has been introduced in this release. This setting governs the life of an idle ESP (defined as an ESP that is not executing any work). On expiry of the timer, the ESP will kill itself.
sql> CQD ESP_IDLE_TIMEOUT ‘<seconds>’;
The default timer value is 1800 seconds.
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.