| <!DOCTYPE html> |
| <html lang="en"> |
| <head> |
| <meta charset="utf-8" /> |
| <meta http-equiv="X-UA-Compatible" content="IE=edge" /> |
| <meta name="viewport" content="width=device-width, initial-scale=1" /> |
| <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags --> |
| <meta name="description" content="A new open source Apache Hadoop ecosystem project, Apache Kudu completes Hadoop's storage layer to enable fast analytics on fast data" /> |
| <meta name="author" content="Cloudera" /> |
| <title>Apache Kudu - Apache Kudu 1.7.0 Release Notes</title> |
| <!-- Bootstrap core CSS --> |
| <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" |
| integrity="sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7" |
| crossorigin="anonymous"> |
| |
| <!-- Custom styles for this template --> |
| <link href="/css/kudu.css" rel="stylesheet"/> |
| <link href="/css/asciidoc.css" rel="stylesheet"/> |
| <link rel="shortcut icon" href="/img/logo-favicon.ico" /> |
| <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.1/css/font-awesome.min.css" /> |
| |
| |
| |
| <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries --> |
| <!--[if lt IE 9]> |
| <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script> |
| <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script> |
| <![endif]--> |
| </head> |
| <body> |
| <div class="kudu-site container-fluid"> |
| <!-- Static navbar --> |
| <nav class="navbar navbar-default"> |
| <div class="container-fluid"> |
| <div class="navbar-header"> |
| <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar"> |
| <span class="sr-only">Toggle navigation</span> |
| <span class="icon-bar"></span> |
| <span class="icon-bar"></span> |
| <span class="icon-bar"></span> |
| </button> |
| |
| <a class="logo" href="/"><img |
| src="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png" |
| srcset="//d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_80px.png 1x, //d3dr9sfxru4sde.cloudfront.net/i/k/apachekudu_logo_0716_160px.png 2x" |
| alt="Apache Kudu"/></a> |
| |
| </div> |
| <div id="navbar" class="collapse navbar-collapse"> |
| <ul class="nav navbar-nav navbar-right"> |
| <li > |
| <a href="/">Home</a> |
| </li> |
| <li > |
| <a href="/overview.html">Overview</a> |
| </li> |
| <li class="active"> |
| <a href="/docs/">Documentation</a> |
| </li> |
| <li > |
| <a href="/releases/">Releases</a> |
| </li> |
| <li > |
| <a href="/blog/">Blog</a> |
| </li> |
| <!-- NOTE: this dropdown menu does not appear on Mobile, so don't add anything here |
| that doesn't also appear elsewhere on the site. --> |
| <li class="dropdown"> |
| <a href="/community.html" role="button" aria-haspopup="true" aria-expanded="false">Community <span class="caret"></span></a> |
| <ul class="dropdown-menu"> |
| <li class="dropdown-header">GET IN TOUCH</li> |
| <li><a class="icon email" href="/community.html">Mailing Lists</a></li> |
| <li><a class="icon slack" href="https://getkudu-slack.herokuapp.com/">Slack Channel</a></li> |
| <li role="separator" class="divider"></li> |
| <li><a href="/community.html#meetups-user-groups-and-conference-presentations">Events and Meetups</a></li> |
| <li><a href="/committers.html">Project Committers</a></li> |
| <!--<li><a href="/roadmap.html">Roadmap</a></li>--> |
| <li><a href="/community.html#contributions">How to Contribute</a></li> |
| <li role="separator" class="divider"></li> |
| <li class="dropdown-header">DEVELOPER RESOURCES</li> |
| <li><a class="icon github" href="https://github.com/apache/incubator-kudu">GitHub</a></li> |
| <li><a class="icon gerrit" href="http://gerrit.cloudera.org:8080/#/q/status:open+project:kudu">Gerrit Code Review</a></li> |
| <li><a class="icon jira" href="https://issues.apache.org/jira/browse/KUDU">JIRA Issue Tracker</a></li> |
| <li role="separator" class="divider"></li> |
| <li class="dropdown-header">SOCIAL MEDIA</li> |
| <li><a class="icon twitter" href="https://twitter.com/ApacheKudu">Twitter</a></li> |
| <li><a href="https://www.reddit.com/r/kudu/">Reddit</a></li> |
| <li role="separator" class="divider"></li> |
| <li class="dropdown-header">APACHE SOFTWARE FOUNDATION</li> |
| <li><a href="https://www.apache.org/security/" target="_blank">Security</a></li> |
| <li><a href="https://www.apache.org/foundation/sponsorship.html" target="_blank">Sponsorship</a></li> |
| <li><a href="https://www.apache.org/foundation/thanks.html" target="_blank">Thanks</a></li> |
| <li><a href="https://www.apache.org/licenses/" target="_blank">License</a></li> |
| </ul> |
| </li> |
| <li > |
| <a href="/faq.html">FAQ</a> |
| </li> |
| </ul><!-- /.nav --> |
| </div><!-- /#navbar --> |
| </div><!-- /.container-fluid --> |
| </nav> |
| |
| <!-- |
| |
| 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. |
| --> |
| |
| |
| <div class="container"> |
| <div class="row"> |
| <div class="col-md-9"> |
| |
| <h1>Apache Kudu 1.7.0 Release Notes</h1> |
| <div class="sect1"> |
| <h2 id="rn_1.7.0_upgrade_notes"><a class="link" href="#rn_1.7.0_upgrade_notes">Upgrade Notes</a></h2> |
| <div class="sectionbody"> |
| <div class="ulist"> |
| <ul> |
| <li> |
| <p>Upgrading directly from Kudu 1.6.0 is supported and no special upgrade steps |
| are required. A rolling upgrade of the server side will <em>not</em> work because |
| the default replica management scheme changed, and running masters and tablet |
| servers with different replica management schemes is not supported, see |
| <a href="#rn_1.7.0_incompatible_changes">Incompatible Changes in Kudu 1.7.0</a> for details. However, mixing client and |
| server sides of different versions is not a problem. You can still |
| update your clients before your servers or vice versa. |
| When upgrading to Kudu 1.7, it is required to first shut down all Kudu processes |
| across the cluster, then upgrade the software on all servers, then restart |
| the Kudu processes on all servers in the cluster.</p> |
| </li> |
| </ul> |
| </div> |
| </div> |
| </div> |
| <div class="sect1"> |
| <h2 id="rn_1.7.0_obsoletions"><a class="link" href="#rn_1.7.0_obsoletions">Obsoletions</a></h2> |
| <div class="sectionbody"> |
| <div class="ulist"> |
| <ul> |
| <li> |
| <p>The <code>tcmalloc_contention_time</code> metric, which previously tracked the amount |
| of time spent in memory allocator lock contention, has been removed.</p> |
| </li> |
| </ul> |
| </div> |
| </div> |
| </div> |
| <div class="sect1"> |
| <h2 id="rn_1.7.0_deprecations"><a class="link" href="#rn_1.7.0_deprecations">Deprecations</a></h2> |
| <div class="sectionbody"> |
| <div class="ulist"> |
| <ul> |
| <li> |
| <p>Support for Java 7 has been deprecated since Kudu 1.5.0 and may be removed in |
| the next major release.</p> |
| </li> |
| </ul> |
| </div> |
| </div> |
| </div> |
| <div class="sect1"> |
| <h2 id="rn_1.7.0_new_features"><a class="link" href="#rn_1.7.0_new_features">New features</a></h2> |
| <div class="sectionbody"> |
| <div class="ulist"> |
| <ul> |
| <li> |
| <p>Kudu now supports the decimal column type. The decimal type is a numeric data type |
| with fixed scale and precision suitable for financial and other arithmetic |
| calculations where the imprecise representation and rounding behavior of float and |
| double make those types impractical. The decimal type is also useful for integers |
| larger than int64 and cases with fractional values in a primary key. |
| See <a href="schema_design.html#decimal">Decimal Type</a> for more details.</p> |
| </li> |
| <li> |
| <p>The strategy Kudu uses for automatically healing tablets which have lost a |
| replica due to server or disk failures has been improved. The new re-replication |
| strategy, or replica management scheme, first adds a replacement tablet replica |
| before evicting the failed one. With the previous replica management scheme, |
| the system first evicts the failed replica and then adds a replacement. The new |
| replica management scheme allows for much faster recovery of tablets in |
| scenarios where one tablet server goes down and then returns back shortly after |
| 5 minutes or so. The new scheme also provides substantially better overall |
| stability on clusters with frequent server failures. |
| (see <a href="https://issues.apache.org/jira/browse/KUDU-1097">KUDU-1097</a>).</p> |
| </li> |
| <li> |
| <p>The <code>kudu fs update_dirs</code> tool now supports removing directories. Unless the |
| <code>--force</code> flag is specified, Kudu will not allow the removal of a directory |
| across which tablets are configured to spread data. If specified, all tablet |
| replicas configured to use that directory will fail upon starting up and be |
| replicated elsewhere, provided a majority exists elsewhere.</p> |
| </li> |
| <li> |
| <p>Users can use the new <code>--fs_metadata_dir</code> to specify the directory in which |
| to place tablet-specific metadata. It is recommended, although not |
| necessary, that this be placed on a high-performance drive with high |
| bandwidth and low latency, e.g. a solid-state drive. If not specified, |
| metadata will be placed in the directory specified by <code>--fs_wal_dir</code>, or in |
| the directory specified by the first entry of <code>--fs_data_dirs</code> if metadata |
| already exists there from a pre-Kudu 1.7 deployment. Kudu will not |
| automatically move existing metadata based on this configuration.</p> |
| </li> |
| <li> |
| <p>Kudu 1.7 introduces a new scan read mode READ_YOUR_WRITES. Users can specify |
| READ_YOUR_WRITES when creating a new scanner in C++, Java and Python clients. |
| If this mode is used, the client will perform a read such that it follows all |
| previously known writes and reads from this client. Reads in this mode ensure |
| read-your-writes and read-your-reads session guarantees, while minimizing |
| latency caused by waiting for outstanding write transactions to complete. |
| Note that this is still an experimental feature which may be stabilized in |
| future releases.</p> |
| </li> |
| <li> |
| <p>The tablet server web UI scans dashboard (/scans) has been improved with |
| several new features, including: showing the most recently completed scans, |
| a pseudo-SQL scan descriptor that concisely shows the selected columns and |
| applied predicates, and more complete and better documented scan statistics.</p> |
| </li> |
| <li> |
| <p>Kudu daemons now expose a web page <code>/stacks</code> which dumps the current stack |
| trace of every thread running in the server. This information can be helpful |
| when diagnosing performance issues.</p> |
| </li> |
| </ul> |
| </div> |
| </div> |
| </div> |
| <div class="sect1"> |
| <h2 id="_optimizations_and_improvements"><a class="link" href="#_optimizations_and_improvements">Optimizations and improvements</a></h2> |
| <div class="sectionbody"> |
| <div class="ulist"> |
| <ul> |
| <li> |
| <p>By default, each tablet replica will now stripe data blocks across 3 data |
| directories instead of all data directories. This decreases the likelihood |
| that any given tablet will be affected in the event of a single disk failure. |
| No substantial performance impact is expected due to this feature based on |
| <a href="https://github.com/apache/kudu/commit/60276c54a221d554287c6645df7df542fe6d6443">performance testing</a>. |
| This change only affects new replicas created after upgrading to Kudu 1.7.</p> |
| </li> |
| <li> |
| <p>Kudu servers previously offered the ability to enable a separate metrics log |
| which stores periodic snapshots of all metrics available on a server. This |
| functionality is now available as part of a more general “diagnostics log” |
| which is enabled by default. The diagnostics log includes periodic dumps of |
| server metrics as well as collections of thread stack traces. The default |
| configuration ensures that no more than 640MB of diagnostics logs are retained, |
| and typically the space consumption is significantly less due to compression. |
| The format and contents of this log file are documented in the |
| <a href="administration.html">Administration guide</a>.</p> |
| </li> |
| <li> |
| <p>The handling of errors in the synchronous Java client has been improved so that, |
| when an exception is thrown, the stack trace indicates the correct location |
| where the client function was invoked rather than a call stack of an internal |
| worker thread. The original call stack from the worker thread is available as |
| a “suppressed exception”.</p> |
| </li> |
| <li> |
| <p>The logging of errors in the Java client has been improved to exclude exception |
| stack traces for expected scenarios such as failure to connect to a server in a |
| cluster. Instead, only a single line informational message will be logged in |
| such cases to aid in debugging.</p> |
| </li> |
| <li> |
| <p>The Java client now uses a predefined prioritized list of TLS ciphers when |
| establishing an encrypted connection to Kudu servers. This cipher list matches |
| the list of ciphers preferred for server-to-server communication and ensures |
| that the most efficient and secure ciphers are preferred. When the Kudu client |
| is running on Java 8 or newer, this provides a substantial speed-up to read |
| and write performance.</p> |
| </li> |
| <li> |
| <p>Reporting for the <code>kudu cluster ksck</code> tool has been updated so tablets and |
| tables with on-going tablet copies are shown as "recovering". Additional |
| reporting changes have been made to make various common scenarios, |
| particularly tablet copies, less alarming.</p> |
| </li> |
| <li> |
| <p>The performance of inserting rows containing many string or binary columns has |
| been improved, especially in the case of highly concurrent write workloads.</p> |
| </li> |
| <li> |
| <p>By default, Spark tasks that scan Kudu will now be able to scan non-leader |
| replicas. This allows Spark to more easily schedule kudu-spark tasks local to |
| the data. Users can disable this behavior by passing 'leader_only' to the |
| 'kudu.scanLocality' option."</p> |
| </li> |
| <li> |
| <p>The number of OS threads used in the steady state and during bursts of |
| activity (such as in Raft leader elections triggered by a node failure) has |
| been drastically reduced and should no longer exceed the value of <code>ulimit -u</code>. |
| As such, it should no longer be necessary to increase the value of <code>ulimit -u</code> |
| (or of /proc/sys/kernel/threads-max) in order to run a Kudu tablet server in |
| most cases. |
| (see <a href="https://issues.apache.org/jira/browse/KUDU-1913">KUDU-1913</a>).</p> |
| </li> |
| <li> |
| <p>An issue where sparse column predicates could cause excessive data-block reads |
| has been fixed. Previously in certain scans with sparsely matching predicates |
| on multiple columns, Kudu would read and decode the same data blocks many times. |
| The improvement typically results in a 5-10x performance increase for the |
| affected scans. |
| (see <a href="https://issues.apache.org/jira/browse/KUDU-2231">KUDU-2231</a>).</p> |
| </li> |
| <li> |
| <p>The efficiency and on-disk size of large updated values has been improved. |
| This will improve update-heavy workloads which overwrite large (1KiB+) values. |
| (see <a href="https://issues.apache.org/jira/browse/KUDU-2253">KUDU-2253</a>).</p> |
| </li> |
| </ul> |
| </div> |
| </div> |
| </div> |
| <div class="sect1"> |
| <h2 id="rn_1.7.0_fixed_issues"><a class="link" href="#rn_1.7.0_fixed_issues">Fixed Issues</a></h2> |
| <div class="sectionbody"> |
| <div class="ulist"> |
| <ul> |
| <li> |
| <p>Fixed a scenario where the on-disk data of a tablet server was completely |
| erased and and a new tablet server was started on the same host. This issue |
| could prevent tablet replicas previously hosted on the server from being |
| evicted and re-replicated. |
| Tablets now immediately evict replicas that respond with a different server |
| UUID than expected. |
| (see <a href="https://issues.apache.org/jira/browse/KUDU-1613">KUDU-1613</a>).</p> |
| </li> |
| <li> |
| <p>Fixed a rare race condition when connecting to masters during their |
| startup which might cause a client to get a response without a CA certificate |
| and/or authentication token. This would cause the client to fail to authenticate |
| with other servers in the cluster. The leader master now always sends a CA |
| certificate and an authentication token (when applicable) to a Kudu client |
| with a successful ConnectToMaster response. |
| (see <a href="https://issues.apache.org/jira/browse/KUDU-1927">KUDU-1927</a>).</p> |
| </li> |
| <li> |
| <p>The Kudu Java client now will retry a connection if no master is discovered as a |
| leader, and the user has a valid authentication token. This avoids failure |
| in recoverable cases when masters are in the process of the very first leader |
| election after starting up. |
| (see <a href="https://issues.apache.org/jira/browse/KUDU-2262">KUDU-2262</a>).</p> |
| </li> |
| <li> |
| <p>The Java client will now automatically attempt to re-acquire Kerberos |
| credentials from the ticket cache when the prior credentials are about to |
| expire. This allows client instances to persist longer than the expiration |
| time of a single Kerberos ticket so long as some other process renews the |
| credentials in the ticket cache. Documentation on interacting with Kerberos |
| authentication has been added to the Javadoc for the <code>AsyncKuduClient</code> class. |
| (see <a href="https://issues.apache.org/jira/browse/KUDU-2264">KUDU-2264</a>).</p> |
| </li> |
| <li> |
| <p>Follower masters are now able to verify authentication tokens even if they have never |
| been a leader. Prior to this fix, if a follower master had never been a leader, |
| clients would be unable to authenticate to that master, resulting in spurious |
| error messages being logged. |
| (see <a href="https://issues.apache.org/jira/browse/KUDU-2265">KUDU-2265</a>).</p> |
| </li> |
| <li> |
| <p>Fixed a tablet server crash when a tablet replica is deleted during a scan. |
| (see <a href="https://issues.apache.org/jira/browse/KUDU-2295">KUDU-2295</a>).</p> |
| </li> |
| <li> |
| <p>The evaluation order of predicates in scans with multiple predicates has been |
| made deterministic. Due to a bug, this was not necessarily the case previously. |
| Predicates are applied in most to least selective order, with ties broken by |
| column index. The evaluation order may change in the future, particularly when |
| better column statistics are made available internally. |
| (see <a href="https://issues.apache.org/jira/browse/KUDU-2312">KUDU-2312</a>).</p> |
| </li> |
| <li> |
| <p>Previously, the <code>kudu tablet change_config move_replica</code> tool required all |
| tablet servers in the cluster to be available when performing a move. This |
| restriction has been relaxed: only the tablet server that will receive a replica |
| of the tablet being moved and the hosts of the tablet’s existing replicas need to be |
| available for the move to occur. |
| (see <a href="https://issues.apache.org/jira/browse/KUDU-2331">KUDU-2331</a>).</p> |
| </li> |
| <li> |
| <p>Fixed a bug in the Java client which prevented the client from locating the |
| new leader master after a leader failover in the case that the previous leader |
| either remained online or restarted quickly. This bug resulted in the client |
| timing out operations with errors indicating that there was no leader master. |
| (see <a href="https://issues.apache.org/jira/browse/KUDU-2343">KUDU-2343</a>).</p> |
| </li> |
| <li> |
| <p>The Unix process username of the client is now included inside the exported |
| security credentials, so that the effective username of clients who import |
| credentials and subsequently use unauthenticated (SASL PLAIN) connections |
| matches the client who exported the security credentials. For example, this is |
| useful to let the Spark executors know which username to use if the Spark |
| driver has no authentication token. This change only affects clusters with |
| encryption disabled using <code>--rpc-encryption=disabled</code>. |
| (see <a href="https://issues.apache.org/jira/browse/KUDU-2259">KUDU-2259</a>).</p> |
| </li> |
| </ul> |
| </div> |
| </div> |
| </div> |
| <div class="sect1"> |
| <h2 id="rn_1.7.0_wire_compatibility"><a class="link" href="#rn_1.7.0_wire_compatibility">Wire Protocol compatibility</a></h2> |
| <div class="sectionbody"> |
| <div class="paragraph"> |
| <p>Kudu 1.7.0 is wire-compatible with previous versions of Kudu:</p> |
| </div> |
| <div class="ulist"> |
| <ul> |
| <li> |
| <p>Kudu 1.7 clients may connect to servers running Kudu 1.0 or later. If the client uses |
| features that are not available on the target server, an error will be returned.</p> |
| </li> |
| <li> |
| <p>Rolling upgrade between Kudu 1.6 and Kudu 1.7 servers is believed to be possible |
| though has not been sufficiently tested. Users are encouraged to shut down all nodes |
| in the cluster, upgrade the software, and then restart the daemons on the new version.</p> |
| </li> |
| <li> |
| <p>Kudu 1.0 clients may connect to servers running Kudu 1.7 with the exception of the |
| below-mentioned restrictions regarding secure clusters.</p> |
| </li> |
| </ul> |
| </div> |
| <div class="paragraph"> |
| <p>The authentication features introduced in Kudu 1.3 place the following limitations |
| on wire compatibility between Kudu 1.7 and versions earlier than 1.3:</p> |
| </div> |
| <div class="ulist"> |
| <ul> |
| <li> |
| <p>If a Kudu 1.7 cluster is configured with authentication or encryption set to "required", |
| clients older than Kudu 1.3 will be unable to connect.</p> |
| </li> |
| <li> |
| <p>If a Kudu 1.7 cluster is configured with authentication and encryption set to "optional" |
| or "disabled", older clients will still be able to connect.</p> |
| </li> |
| </ul> |
| </div> |
| </div> |
| </div> |
| <div class="sect1"> |
| <h2 id="rn_1.7.0_incompatible_changes"><a class="link" href="#rn_1.7.0_incompatible_changes">Incompatible Changes in Kudu 1.7.0</a></h2> |
| <div class="sectionbody"> |
| <div class="ulist"> |
| <ul> |
| <li> |
| <p>The newly introduced replica management scheme is not compatible with the |
| old scheme, so it’s not possible to run pre-1.7 Kudu masters with |
| 1.7 Kudu tablet servers or vice versa. This is a server-side |
| incompatibility only and it does not affect client compatibility. In other words, |
| Kudu clients of prior versions are compatible with upgraded Kudu clusters.</p> |
| <div class="ulist"> |
| <ul> |
| <li> |
| <p>Kudu masters of 1.7 version will not register Kudu tablet servers of 1.6 |
| and prior versions.</p> |
| </li> |
| <li> |
| <p>Kudu tablet servers of 1.7 version will not work with Kudu masters of 1.6 |
| and prior versions.</p> |
| </li> |
| </ul> |
| </div> |
| </li> |
| <li> |
| <p>The format of the previously-optional metrics log has changed to include a |
| human-readable timestamp on each line. The path of the log file has also |
| changed with the word “diagnostics” replacing the word “metrics” in the file |
| name. The metrics log has been optimized to only include those metrics which |
| have changed in between successive samples, and to not include entity attributes |
| such as tablet partition information in the log. |
| (see <a href="https://issues.apache.org/jira/browse/KUDU-2297">KUDU-2297</a>).</p> |
| </li> |
| </ul> |
| </div> |
| <div class="sect2"> |
| <h3 id="rn_1.7.0_client_compatibility"><a class="link" href="#rn_1.7.0_client_compatibility">Client Library Compatibility</a></h3> |
| <div class="ulist"> |
| <ul> |
| <li> |
| <p>The Kudu 1.7 Java client library is API- and ABI-compatible with Kudu 1.6. Applications |
| written against Kudu 1.6 will compile and run against the Kudu 1.7 client library and |
| vice-versa.</p> |
| </li> |
| <li> |
| <p>The Kudu 1.7 C++ client is API- and ABI-forward-compatible with Kudu 1.6. |
| Applications written and compiled against the Kudu 1.6 client library will run without |
| modification against the Kudu 1.7 client library. Applications written and compiled |
| against the Kudu 1.7 client library will run without modification against the Kudu 1.6 |
| client library.</p> |
| </li> |
| <li> |
| <p>The Kudu 1.7 Python client is API-compatible with Kudu 1.6. Applications |
| written against Kudu 1.6 will continue to run against the Kudu 1.7 client |
| and vice-versa.</p> |
| </li> |
| <li> |
| <p>Kudu 1.7 clients that attempt to create a table with a decimal column on a |
| target server running Kudu 1.6 or earlier will receive an error response. |
| Similarly Kudu clients running Kudu 1.6 or earlier will result in an error |
| when attempting to access any table containing containing a decimal |
| column.</p> |
| </li> |
| </ul> |
| </div> |
| </div> |
| </div> |
| </div> |
| <div class="sect1"> |
| <h2 id="rn_1.7.0_known_issues"><a class="link" href="#rn_1.7.0_known_issues">Known Issues and Limitations</a></h2> |
| <div class="sectionbody"> |
| <div class="paragraph"> |
| <p>Please refer to the <a href="known_issues.html">Known Issues and Limitations</a> section of the |
| documentation.</p> |
| </div> |
| </div> |
| </div> |
| <div class="sect1"> |
| <h2 id="rn_1.7.0_contributors"><a class="link" href="#rn_1.7.0_contributors">Contributors</a></h2> |
| <div class="sectionbody"> |
| <div class="paragraph"> |
| <p>Kudu 1.7 includes contributions from 22 people, including two first-time |
| contributors, Clemens Valiente and Tsuyoshi Ozawa.</p> |
| </div> |
| <div class="paragraph"> |
| <p>Thank you for helping to make Kudu even better!</p> |
| </div> |
| </div> |
| </div> |
| <div class="sect1"> |
| <h2 id="resources_and_next_steps"><a class="link" href="#resources_and_next_steps">Resources</a></h2> |
| <div class="sectionbody"> |
| <div class="ulist"> |
| <ul> |
| <li> |
| <p><a href="http://kudu.apache.org">Kudu Website</a></p> |
| </li> |
| <li> |
| <p><a href="http://github.com/apache/kudu">Kudu GitHub Repository</a></p> |
| </li> |
| <li> |
| <p><a href="index.html">Kudu Documentation</a></p> |
| </li> |
| <li> |
| <p><a href="prior_release_notes.html">Release notes for older releases</a></p> |
| </li> |
| </ul> |
| </div> |
| </div> |
| </div> |
| <div class="sect1"> |
| <h2 id="_installation_options"><a class="link" href="#_installation_options">Installation Options</a></h2> |
| <div class="sectionbody"> |
| <div class="paragraph"> |
| <p>For full installation details, see <a href="installation.html">Kudu Installation</a>.</p> |
| </div> |
| </div> |
| </div> |
| <div class="sect1"> |
| <h2 id="_next_steps"><a class="link" href="#_next_steps">Next Steps</a></h2> |
| <div class="sectionbody"> |
| <div class="ulist"> |
| <ul> |
| <li> |
| <p><a href="quickstart.html">Kudu Quickstart</a></p> |
| </li> |
| <li> |
| <p><a href="installation.html">Installing Kudu</a></p> |
| </li> |
| <li> |
| <p><a href="configuration.html">Configuring Kudu</a></p> |
| </li> |
| </ul> |
| </div> |
| </div> |
| </div> |
| </div> |
| <div class="col-md-3"> |
| |
| <div id="toc" data-spy="affix" data-offset-top="70"> |
| <ul> |
| |
| <li> |
| |
| <a href="index.html">Introducing Kudu</a> |
| </li> |
| <li> |
| <span class="active-toc">Kudu Release Notes</span> |
| <ul class="sectlevel1"> |
| <li><a href="#rn_1.7.0_upgrade_notes">Upgrade Notes</a></li> |
| <li><a href="#rn_1.7.0_obsoletions">Obsoletions</a></li> |
| <li><a href="#rn_1.7.0_deprecations">Deprecations</a></li> |
| <li><a href="#rn_1.7.0_new_features">New features</a></li> |
| <li><a href="#_optimizations_and_improvements">Optimizations and improvements</a></li> |
| <li><a href="#rn_1.7.0_fixed_issues">Fixed Issues</a></li> |
| <li><a href="#rn_1.7.0_wire_compatibility">Wire Protocol compatibility</a></li> |
| <li><a href="#rn_1.7.0_incompatible_changes">Incompatible Changes in Kudu 1.7.0</a> |
| <ul class="sectlevel2"> |
| <li><a href="#rn_1.7.0_client_compatibility">Client Library Compatibility</a></li> |
| </ul> |
| </li> |
| <li><a href="#rn_1.7.0_known_issues">Known Issues and Limitations</a></li> |
| <li><a href="#rn_1.7.0_contributors">Contributors</a></li> |
| <li><a href="#resources_and_next_steps">Resources</a></li> |
| <li><a href="#_installation_options">Installation Options</a></li> |
| <li><a href="#_next_steps">Next Steps</a></li> |
| </ul> |
| </li> |
| <li> |
| |
| <a href="quickstart.html">Getting Started with Kudu</a> |
| </li> |
| <li> |
| |
| <a href="installation.html">Installation Guide</a> |
| </li> |
| <li> |
| |
| <a href="configuration.html">Configuring Kudu</a> |
| </li> |
| <li> |
| |
| <a href="kudu_impala_integration.html">Using Impala with Kudu</a> |
| </li> |
| <li> |
| |
| <a href="administration.html">Administering Kudu</a> |
| </li> |
| <li> |
| |
| <a href="troubleshooting.html">Troubleshooting Kudu</a> |
| </li> |
| <li> |
| |
| <a href="developing.html">Developing Applications with Kudu</a> |
| </li> |
| <li> |
| |
| <a href="schema_design.html">Kudu Schema Design</a> |
| </li> |
| <li> |
| |
| <a href="security.html">Kudu Security</a> |
| </li> |
| <li> |
| |
| <a href="transaction_semantics.html">Kudu Transaction Semantics</a> |
| </li> |
| <li> |
| |
| <a href="background_tasks.html">Background Maintenance Tasks</a> |
| </li> |
| <li> |
| |
| <a href="configuration_reference.html">Kudu Configuration Reference</a> |
| </li> |
| <li> |
| |
| <a href="command_line_tools_reference.html">Kudu Command Line Tools Reference</a> |
| </li> |
| <li> |
| |
| <a href="known_issues.html">Known Issues and Limitations</a> |
| </li> |
| <li> |
| |
| <a href="contributing.html">Contributing to Kudu</a> |
| </li> |
| <li> |
| |
| <a href="export_control.html">Export Control Notice</a> |
| </li> |
| </ul> |
| </div> |
| </div> |
| </div> |
| </div> |
| <footer class="footer"> |
| <div class="row"> |
| <div class="col-md-9"> |
| <p class="small"> |
| Copyright © 2019 The Apache Software Foundation. Last updated 2018-03-19 08:09:15 CDT |
| </p> |
| <p class="small"> |
| Apache Kudu, Kudu, Apache, the Apache feather logo, and the Apache Kudu |
| project logo are either registered trademarks or trademarks of The |
| Apache Software Foundation in the United States and other countries. |
| </p> |
| </div> |
| <div class="col-md-3"> |
| <a class="pull-right" href="https://www.apache.org/events/current-event.html"> |
| <img src="https://www.apache.org/events/current-event-234x60.png"/> |
| </a> |
| </div> |
| </div> |
| </footer> |
| </div> |
| <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script> |
| <script> |
| // Try to detect touch-screen devices. Note: Many laptops have touch screens. |
| $(document).ready(function() { |
| if ("ontouchstart" in document.documentElement) { |
| $(document.documentElement).addClass("touch"); |
| } else { |
| $(document.documentElement).addClass("no-touch"); |
| } |
| }); |
| </script> |
| <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js" |
| integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS" |
| crossorigin="anonymous"></script> |
| <script> |
| (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ |
| (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), |
| m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) |
| })(window,document,'script','//www.google-analytics.com/analytics.js','ga'); |
| |
| ga('create', 'UA-68448017-1', 'auto'); |
| ga('send', 'pageview'); |
| </script> |
| <script src="https://cdnjs.cloudflare.com/ajax/libs/anchor-js/3.1.0/anchor.js"></script> |
| <script> |
| anchors.options = { |
| placement: 'right', |
| visible: 'touch', |
| }; |
| anchors.add(); |
| </script> |
| </body> |
| </html> |
| |