You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kudu.apache.org by ad...@apache.org on 2016/09/26 19:25:06 UTC
[5/6] kudu git commit: release_notes: prepare for 1.1
release_notes: prepare for 1.1
This is merely mechanical, moving the 1.0 release notes to
prior_release_notes.adoc and preparing new sections in release_notes.adoc
for 1.1.0.
Change-Id: Id9fca5e62a7179186e89ffc7249213693467f39b
Reviewed-on: http://gerrit.cloudera.org:8080/4532
Reviewed-by: Jean-Daniel Cryans <jd...@apache.org>
Tested-by: Adar Dembo <ad...@cloudera.com>
Project: http://git-wip-us.apache.org/repos/asf/kudu/repo
Commit: http://git-wip-us.apache.org/repos/asf/kudu/commit/9bcd522a
Tree: http://git-wip-us.apache.org/repos/asf/kudu/tree/9bcd522a
Diff: http://git-wip-us.apache.org/repos/asf/kudu/diff/9bcd522a
Branch: refs/heads/master
Commit: 9bcd522a06fcd8326132c67cf99eedb7b732dc68
Parents: 1670a89
Author: Adar Dembo <ad...@cloudera.com>
Authored: Thu Sep 22 20:44:40 2016 -0700
Committer: Adar Dembo <ad...@cloudera.com>
Committed: Mon Sep 26 19:23:14 2016 +0000
----------------------------------------------------------------------
docs/prior_release_notes.adoc | 142 +++++++++++++++++++++++++++++++++++++
docs/release_notes.adoc | 142 +++----------------------------------
2 files changed, 151 insertions(+), 133 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/kudu/blob/9bcd522a/docs/prior_release_notes.adoc
----------------------------------------------------------------------
diff --git a/docs/prior_release_notes.adoc b/docs/prior_release_notes.adoc
index 90bed78..821248c 100644
--- a/docs/prior_release_notes.adoc
+++ b/docs/prior_release_notes.adoc
@@ -28,6 +28,148 @@
:sectlinks:
:experimental:
+[[rn_1.0.0]]
+== Release notes specific to 1.0.0
+
+After approximately a year of beta releases, Apache Kudu has reached version 1.0.
+This version number signifies that the development team feels that Kudu is stable
+enough for usage in production environments.
+
+If you are new to Kudu, check out its list of link:index.html[features and benefits].
+
+[[rn_1.0.0_new_features]]
+=== New features
+
+Kudu 1.0.0 delivers a number of new features, bug fixes, and optimizations.
+
+- Removal of multiversion concurrency control (MVCC) history is now supported.
+ This is known as tablet history GC. This allows Kudu to reclaim disk space,
+ where previously Kudu would keep a full history of all changes made to a
+ given table since the beginning of time. Previously, the only way to reclaim
+ disk space was to drop a table.
++
+Kudu will still keep historical data, and the amount of history retained is
+ controlled by setting the configuration flag `--tablet_history_max_age_sec`,
+ which defaults to 15 minutes (expressed in seconds). The timestamp
+ represented by the current time minus `tablet_history_max_age_sec` is known
+ as the ancient history mark (AHM). When a compaction or flush occurs, Kudu
+ will remove the history of changes made prior to the ancient history mark.
+ This only affects historical data; currently-visible data will not be
+ removed. A specialized maintenance manager background task to remove existing
+ "cold" historical data that is not in a row affected by the normal compaction
+ process will be added in a future release.
+
+- Most of Kudu's command line tools have been consolidated under a new
+ top-level `kudu` tool. This reduces the number of large binaries distributed
+ with Kudu and also includes much-improved help output.
+
+- The Kudu Flume Sink now supports processing events containing Avro-encoded
+ records, using the new `AvroKuduOperationsProducer`.
+
+- Administrative tools including `kudu cluster ksck` now support running
+ against multi-master Kudu clusters.
+
+- The output of the `ksck` tool is now colorized and much easier to read.
+
+- The {cpp} client API now supports writing data in `AUTO_FLUSH_BACKGROUND` mode.
+ This can provide higher throughput for ingest workloads.
+
+=== Optimizations and improvements
+
+- The performance of comparison predicates on dictionary-encoded columns has
+ been substantially optimized. Users are encouraged to use dictionary encoding
+ on any string or binary columns with low cardinality, especially if these
+ columns will be filtered with predicates.
+
+- The Java client is now able to prune partitions from scanners based on the
+ provided predicates. For example, an equality predicate on a hash-partitioned
+ column will now only access those tablets that could possibly contain matching
+ data. This is expected to improve performance for the Spark integration as well
+ as applications using the Java client API.
+
+- The performance of compaction selection in the tablet server has been
+ substantially improved. This can increase the efficiency of the background
+ maintenance threads and improve overall throughput of heavy write workloads.
+
+- The policy by which the tablet server retains write-ahead log (WAL) files has
+ been improved so that it takes into account other replicas of the tablet.
+ This should help mitigate the spurious eviction of tablet replicas on machines
+ that temporarily lag behind the other replicas.
+
+=== Wire protocol compatibility
+
+Kudu 1.0.0 maintains client-server wire-compatibility with previous releases.
+Applications using the Kudu client libraries may be upgraded either
+before, at the same time, or after the Kudu servers.
+
+Kudu 1.0.0 does _not_ maintain server-server wire compatibility with previous
+releases. Therefore, rolling upgrades between earlier versions of Kudu and
+Kudu 1.0.0 are not supported.
+
+[[rn_1.0.0_incompatible_changes]]
+=== Incompatible changes in Kudu 1.0.0
+
+==== Command line tools
+
+- The `kudu-pbc-dump` tool has been removed. The same functionality is now
+ implemented as `kudu pbc dump`.
+
+- The `kudu-ksck` tool has been removed. The same functionality is now
+ implemented as `kudu cluster ksck`.
+
+- The `cfile-dump` tool has been removed. The same functionality is now
+ implemented as `kudu fs cfile dump`.
+
+- The `log-dump` tool has been removed. The same functionality is now
+ implemented as `kudu wal dump` and `kudu local_replica dump wals`.
+
+- The `kudu-admin` tool has been removed. The same functionality is now
+ implemented within `kudu table` and `kudu tablet`.
+
+- The `kudu-fs_dump` tool has been removed. The same functionality is now
+ implemented as `kudu fs dump`.
+
+- The `kudu-ts-cli` tool has been removed. The same functionality is now
+ implemented within `kudu master`, `kudu remote_replica`, and `kudu tserver`.
+
+- The `kudu-fs_list` tool has been removed and some similar useful
+ functionality has been moved under 'kudu local_replica'.
+
+==== Configuration flags
+
+- Some configuration flags are now marked as 'unsafe' and 'experimental'. Such flags
+ are disallowed by default. Users may access these flags by enabling the additional
+ flags `--unlock_unsafe_flags` and `--unlock_experimental_flags`. Usage of such flags
+ is not recommended, as the flags may be removed or modified with no deprecation period
+ and without notice in future Kudu releases.
+
+==== Client APIs ({cpp}/Java/Python)
+
+- The `TIMESTAMP` column type has been renamed to `UNIXTIME_MICROS` in order to
+ reduce confusion between Kudu's timestamp support and the timestamps supported
+ by other systems such as Apache Hive and Apache Impala (incubating). Existing
+ tables will automatically be updated to use the new name for the type.
++
+Clients upgrading to the new client libraries must move to the new name for
+ the type. Clients using old client libraries will continue to operate using
+ the old type name, even when connected to clusters that have been
+ upgraded. Similarly, if clients are upgraded before servers, existing
+ timestamp columns will be available using the new type name.
+
+
+- `KuduSession` methods in the {cpp} library are no longer advertised as thread-safe
+ to have one set of semantics for both {cpp} and Java Kudu client libraries.
+
+- The `KuduScanToken::TabletServers` method in the {cpp} library has been removed.
+ The same information can now be found in the KuduScanToken::tablet method.
+
+==== Apache Flume Integration
+
+- The `KuduEventProducer` interface used to process Flume events into Kudu operations
+ for the Kudu Flume Sink has changed, and has been renamed `KuduOperationsProducer`.
+ The existing `KuduEventProducer`s have been updated for the new interface, and have
+ been renamed similarly.
+
[[rn_0.10.0]]
== Release notes specific to 0.10.0
http://git-wip-us.apache.org/repos/asf/kudu/blob/9bcd522a/docs/release_notes.adoc
----------------------------------------------------------------------
diff --git a/docs/release_notes.adoc b/docs/release_notes.adoc
index 2f0da5e..a218852 100644
--- a/docs/release_notes.adoc
+++ b/docs/release_notes.adoc
@@ -16,7 +16,7 @@
// under the License.
[[release_notes]]
-= Apache Kudu 1.0 Release Notes
+= Apache Kudu 1.1 Release Notes
:author: Kudu Team
:imagesdir: ./images
@@ -28,149 +28,25 @@
:sectlinks:
:experimental:
-[[rn_1.0.0]]
+[[rn_1.1.0]]
-== Overview
-
-After approximately a year of beta releases, Apache Kudu has reached version 1.0.
-This version number signifies that the development team feels that Kudu is stable
-enough for usage in production environments.
-
-If you are new to Kudu, check out its list of link:index.html[features and benefits].
-
-[[rn_1.0.0_new_features]]
+[[rn_1.1.0_new_features]]
== New features
-Kudu 1.0.0 delivers a number of new features, bug fixes, and optimizations.
-
-- Removal of multiversion concurrency control (MVCC) history is now supported.
- This is known as tablet history GC. This allows Kudu to reclaim disk space,
- where previously Kudu would keep a full history of all changes made to a
- given table since the beginning of time. Previously, the only way to reclaim
- disk space was to drop a table.
-+
-Kudu will still keep historical data, and the amount of history retained is
- controlled by setting the configuration flag `--tablet_history_max_age_sec`,
- which defaults to 15 minutes (expressed in seconds). The timestamp
- represented by the current time minus `tablet_history_max_age_sec` is known
- as the ancient history mark (AHM). When a compaction or flush occurs, Kudu
- will remove the history of changes made prior to the ancient history mark.
- This only affects historical data; currently-visible data will not be
- removed. A specialized maintenance manager background task to remove existing
- "cold" historical data that is not in a row affected by the normal compaction
- process will be added in a future release.
-
-- Most of Kudu's command line tools have been consolidated under a new
- top-level `kudu` tool. This reduces the number of large binaries distributed
- with Kudu and also includes much-improved help output.
-
-- The Kudu Flume Sink now supports processing events containing Avro-encoded
- records, using the new `AvroKuduOperationsProducer`.
-
-- Administrative tools including `kudu cluster ksck` now support running
- against multi-master Kudu clusters.
-
-- The output of the `ksck` tool is now colorized and much easier to read.
-
-- The {cpp} client API now supports writing data in `AUTO_FLUSH_BACKGROUND` mode.
- This can provide higher throughput for ingest workloads.
+XXX
== Optimizations and improvements
-- The performance of comparison predicates on dictionary-encoded columns has
- been substantially optimized. Users are encouraged to use dictionary encoding
- on any string or binary columns with low cardinality, especially if these
- columns will be filtered with predicates.
-
-- The Java client is now able to prune partitions from scanners based on the
- provided predicates. For example, an equality predicate on a hash-partitioned
- column will now only access those tablets that could possibly contain matching
- data. This is expected to improve performance for the Spark integration as well
- as applications using the Java client API.
-
-- The performance of compaction selection in the tablet server has been
- substantially improved. This can increase the efficiency of the background
- maintenance threads and improve overall throughput of heavy write workloads.
-
-- The policy by which the tablet server retains write-ahead log (WAL) files has
- been improved so that it takes into account other replicas of the tablet.
- This should help mitigate the spurious eviction of tablet replicas on machines
- that temporarily lag behind the other replicas.
+XXX
== Wire protocol compatibility
-Kudu 1.0.0 maintains client-server wire-compatibility with previous releases.
-Applications using the Kudu client libraries may be upgraded either
-before, at the same time, or after the Kudu servers.
-
-Kudu 1.0.0 does _not_ maintain server-server wire compatibility with previous
-releases. Therefore, rolling upgrades between earlier versions of Kudu and
-Kudu 1.0.0 are not supported.
-
-[[rn_1.0.0_incompatible_changes]]
-== Incompatible changes in Kudu 1.0.0
-
-=== Command line tools
-
-- The `kudu-pbc-dump` tool has been removed. The same functionality is now
- implemented as `kudu pbc dump`.
-
-- The `kudu-ksck` tool has been removed. The same functionality is now
- implemented as `kudu cluster ksck`.
-
-- The `cfile-dump` tool has been removed. The same functionality is now
- implemented as `kudu fs cfile dump`.
-
-- The `log-dump` tool has been removed. The same functionality is now
- implemented as `kudu wal dump` and `kudu local_replica dump wals`.
-
-- The `kudu-admin` tool has been removed. The same functionality is now
- implemented within `kudu table` and `kudu tablet`.
-
-- The `kudu-fs_dump` tool has been removed. The same functionality is now
- implemented as `kudu fs dump`.
-
-- The `kudu-ts-cli` tool has been removed. The same functionality is now
- implemented within `kudu master`, `kudu remote_replica`, and `kudu tserver`.
-
-- The `kudu-fs_list` tool has been removed and some similar useful
- functionality has been moved under 'kudu local_replica'.
-
-=== Configuration flags
-
-- Some configuration flags are now marked as 'unsafe' and 'experimental'. Such flags
- are disallowed by default. Users may access these flags by enabling the additional
- flags `--unlock_unsafe_flags` and `--unlock_experimental_flags`. Usage of such flags
- is not recommended, as the flags may be removed or modified with no deprecation period
- and without notice in future Kudu releases.
-
-=== Client APIs ({cpp}/Java/Python)
-
-- The `TIMESTAMP` column type has been renamed to `UNIXTIME_MICROS` in order to
- reduce confusion between Kudu's timestamp support and the timestamps supported
- by other systems such as Apache Hive and Apache Impala (incubating). Existing
- tables will automatically be updated to use the new name for the type.
-+
-Clients upgrading to the new client libraries must move to the new name for
- the type. Clients using old client libraries will continue to operate using
- the old type name, even when connected to clusters that have been
- upgraded. Similarly, if clients are upgraded before servers, existing
- timestamp columns will be available using the new type name.
-
-
-- `KuduSession` methods in the {cpp} library are no longer advertised as thread-safe
- to have one set of semantics for both {cpp} and Java Kudu client libraries.
-
-- The `KuduScanToken::TabletServers` method in the {cpp} library has been removed.
- The same information can now be found in the KuduScanToken::tablet method.
-
-=== Apache Flume Integration
+XXX
-- The `KuduEventProducer` interface used to process Flume events into Kudu operations
- for the Kudu Flume Sink has changed, and has been renamed `KuduOperationsProducer`.
- The existing `KuduEventProducer`s have been updated for the new interface, and have
- been renamed similarly.
+[[rn_1.1.0_incompatible_changes]]
+== Incompatible changes in Kudu 1.1.0
+XXX
[[known_issues_and_limitations]]
== Known Issues and Limitations