You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kudu.apache.org by ab...@apache.org on 2022/03/03 13:52:01 UTC
[kudu] branch branch-1.16.x updated: [docs] Add release notes for 1.16.0
This is an automated email from the ASF dual-hosted git repository.
abukor pushed a commit to branch branch-1.16.x
in repository https://gitbox.apache.org/repos/asf/kudu.git
The following commit(s) were added to refs/heads/branch-1.16.x by this push:
new bc7d073 [docs] Add release notes for 1.16.0
bc7d073 is described below
commit bc7d073e3984004ad41229204ad1bfd46fb20011
Author: Attila Bukor <ab...@apache.org>
AuthorDate: Fri Feb 25 15:04:00 2022 +0100
[docs] Add release notes for 1.16.0
Change-Id: I0beb2e182af261ce785cfe21c7de34ca953e6a32
Reviewed-on: http://gerrit.cloudera.org:8080/18275
Tested-by: Kudu Jenkins
Reviewed-by: Alexey Serbin <as...@cloudera.com>
Reviewed-by: Andrew Wong <aw...@cloudera.com>
---
docs/release_notes.adoc | 156 +++++++++++++++++++++++++++++++++++++++++++++---
1 file changed, 147 insertions(+), 9 deletions(-)
diff --git a/docs/release_notes.adoc b/docs/release_notes.adoc
index 39f8387..21e6cd3 100644
--- a/docs/release_notes.adoc
+++ b/docs/release_notes.adoc
@@ -31,27 +31,156 @@
[[rn_1.16.0_upgrade_notes]]
== Upgrade Notes
-
-[[rn_1.16.0_obsoletions]]
-== Obsoletions
-
-
[[rn_1.16.0_deprecations]]
== Deprecations
-
-Support for Python 2.x and Python 3.4 and earlier is deprecated and may be removed in the next minor release.
+* Support for Python 2.x and Python 3.4 and earlier is deprecated and may be
+ removed in the next minor release.
[[rn_1.16.0_new_features]]
== New features
+* Clients can now require authentication and encryption instead of depending on
+ server-side settings
+ (link:https://issues.apache.org/jira/browse/KUDU-1921[KUDU-1921]).
+
+* Kudu Masters now automatically attempt to add themselves to an existing
+ cluster if there is a healthy Raft quorum among Kudu Masters.
+
+* A new tool `kudu master unsafe_rebuild` is added to reconstruct the master
+ catalog from tablet metadata collected from tablet servers. This can be used
+ in emergencies to restore access to tables when all masters are unavailable.
+
+* A new tool `kudu table set_replication_factor` is added to alter the
+ replication factor of a table. The tool immediately updates table metadata in
+ the master, and the master will asynchronously effect the new replication
+ factor. Progress can be monitored by running `ksck`.
+
+* It’s now possible to require a minimum replication factor for a Kudu table.
+ This can be achieved by customizing the setting for the newly introduced
+ `--min_num_replicas` kudu-master’s flag. For example, setting
+ `--min_num_replicas=3` enforces every newly created table to have at least 3
+ replicas for each of its tablets, so there cannot be a data loss when just a
+ single tablet server in the cluster fails irrecoverably. For the sake of
+ backward compatibility, `--min_num_replicas` is set to 1 by default.
+
+* It’s now possible to track startup progress on the `/startup` page on the web
+ UI. There are also metrics added to track the overall server startup progress
+ as well as the processing of the log block containers and starting of the
+ tablets (link:https://issues.apache.org/jira/browse/KUDU-1959[KUDU-1959]).
+
+* A new tool `kudu table add_column` is added to add columns to existing tables
+ using the CLI
+ (link:https://issues.apache.org/jira/browse/KUDU-3339[KUDU-3339]).
+
+* A new tool `kudu tserver unregister` is added to remove a dead tablet server
+ from the cluster without restarting the masters
+ (link:https://issues.apache.org/jira/browse/KUDU-2915[KUDU-2915]).
+
[[rn_1.16.0_improvements]]
== Optimizations and improvements
+* Kudu will now more aggressively fsync consensus-related metadata when metadata
+ is configured to be on an XFS mount. This may lead to increased contention on
+ the device that backs metadata, but will prevent corruption in the event of an
+ outage (link:https://issues.apache.org/jira/browse/KUDU-2195[KUDU-2195]).
+
+* A clearer message is logged when the Ranger subprocess crashes, to specify a
+ problem with the Ranger client.
+
+* Two new flags have been introduced for the `kudu table scan` and `kudu perf
+ table_scan` CLI tools: `--row_count_only` and `--report_scanner_stats`. With
+ these new flags, the above mentioned CLI tools allow to issue scan requests
+ equivalent to running “SELECT COUNT(1) FROM <table_name>” from impala-shell.
+ These new provisions are useful in detecting and troubleshooting scan
+ performance issues.
+
+* Added replica selection configuration knob for the `kudu table scan` and `kudu
+ perf table_scan` CLI tools: it’s controlled by the `--replica_selection` flag.
+
+* To improve security, the following flags are now marked as sensitive and will
+ be redacted in the logs and WebUI when the redaction is enabled:
+ ** `--webserver_private_key_file`
+ ** `--webserver_private_key_password_cmd`
+ ** `--webserver_password_file`
+
+* The logic to select the effective time source when running with
+ `--time_source=auto` has been updated. The `builtin` time source would be
+ auto-selected if a Kudu server runs with `--time_source=auto` in an
+ environment where the instance detector isn't aware of dedicated NTP servers
+ AND the `--builtin_ntp_servers` flag is set to a valid value. Otherwise, if
+ `--builtin_ntp_servers` flag is set to an empty or invalid value, the
+ effective time source becomes `system` for platforms supporting the
+ `get_ntptime()` API, otherwise the catch-all case selects the `system_unsync`
+ as the time effective source.
+
+* It is now possible to print or edit PBC files in batch using the `kudu pbc`
+ CLI tool, and also to format its JSON input/output as “pretty”.
+
+* Client connection timeout is now configurable in the Java client
+ (link:https://issues.apache.org/jira/browse/KUDU-3240[KUDU-3240]).
+
+* A new `/healthz` endpoint is now available on the kudu-master and tablet-server
+ embedded web servers for liveness checks
+ (link:https://issues.apache.org/jira/browse/KUDU-3308[KUDU-3308]).
+
+* Hive Metastore URI is now logged to the console when connecting via `kudu hms`
+ CLI tool (link:https://issues.apache.org/jira/browse/KUDU-3189[KUDU-3189]).
+
+* It is now possible to start up a master when there is an additional master
+ address present in the master addresses flag
+ (link:https://issues.apache.org/jira/browse/KUDU-3311[KUDU-3311]).
+
+* Table entity is now accessible in `KuduWriteOperation` in the C++ client,
+ making understanding errors on the client side easier
+ (link:https://issues.apache.org/jira/browse/KUDU-2623[KUDU-2623]).
+
+* The rebalancer tool now doesn’t move replicas to tablet servers in maintenance
+ mode (link:https://issues.apache.org/jira/browse/KUDU-3328[KUDU-3328]).
+
+* Improved the performance of the run length encoding (RLE).
[[rn_1.16.0_fixed_issues]]
== Fixed Issues
-
+* Log4J used in Ranger subprocess was upgraded to 2.17.1 which contains patches
+ go several security vulnerabilities
+ (link:https://nvd.nist.gov/vuln/detail/CVE-2021-44832[CVE-2021-44832],
+ link:https://nvd.nist.gov/vuln/detail/CVE-2021-45105[CVE-2021-45105],
+ link:https://nvd.nist.gov/vuln/detail/CVE-2021-45046[CVE-2021-45046], and
+ link:https://nvd.nist.gov/vuln/detail/CVE-2021-44228[CVE-2021-44228]).
+
+* Kudu servers previously crashed if hostnames became unresolvable via DNS (e.g.
+ if the container hosting a server were destroyed). Such errors are now treated
+ as transient and the lookups are retried periodically. See
+ link:https://issues.apache.org/jira/browse/KUDU-75[KUDU-75],
+ link:https://issues.apache.org/jira/browse/KUDU-1620[KUDU-1620],
+ and link:https://issues.apache.org/jira/browse/KUDU-1885[KUDU-1885] for more details.
+
+* Fixed an issue in Kudu Java client where concurrent flushing of data buffers
+ could lead to errors reported as 'java.lang.AssertionError: This Deferred was
+ already called'
+ (link:https://issues.apache.org/jira/browse/KUDU-3277[KUDU-3277]).
+
+* Fixed Kudu RPC negotiation issue when running with cyrus-sasl-gssapi-2.1.27-5
+ and newer versions of the RPM package. A failed RPC connection negotiation
+ attempt would result in an error logged along with the full connection
+ negotiation trace: `Runtime error: SASL(-15): mechanism too weak for this
+ user: Unable to find a callback: 32775`
+ (link:https://issues.apache.org/jira/browse/KUDU-3297[KUDU-3297]).
+
+* Fixed crash in kudu-master and kudu-tserver when running with kernel where the
+ `getrandom(2)` API is not available (versions of Linux kernel prior to 3.17).
+
+* Fixed bug which could lead to exhaustion of the address space for the outgoing
+ connections on a busy Kudu cluster
+ (link:https://issues.apache.org/jira/browse/KUDU-3352[KUDU-3352]).
+
+* Fixed a bug in the Java client where a malformed tablet server ID in the scan
+ token causes connection failures and timeouts in some cases
+ (link:https://issues.apache.org/jira/browse/KUDU-3349[KUDU-3349]).
+
+* Fixed a bug where the rebalancer failed with `-ignored_tservers` flag
+ (link:https://issues.apache.org/jira/browse/KUDU-3346[KUDU-3346]).
[[rn_1.16.0_wire_compatibility]]
== Wire Protocol compatibility
@@ -77,7 +206,6 @@ on wire compatibility between Kudu 1.16 and versions earlier than 1.3:
[[rn_1.16.0_incompatible_changes]]
== Incompatible Changes in Kudu 1.16.0
-
[[rn_1.16.0_client_compatibility]]
=== Client Library Compatibility
@@ -104,6 +232,16 @@ documentation.
[[rn_1.16.0_contributors]]
== Contributors
+Kudu 1.16.0 includes contributions from 17 people, including 5 first-time contributors:
+
+* Riza Suminto
+* Zoltan Chovan
+* kedeng
+* khazarmammadli
+* yejiabao
+
+Thank you for your contributions!
+
[[resources_and_next_steps]]
== Resources