What's New in Apache Kudu
This topic lists new features for Apache Kudu in this release of Cloudera Runtime.
RaftConsensus::DumpStatusHtml() does not block Raft consensus activity
kudu::consensus::RaftConsensus::CheckLeadershipAndBindTerm()
needs to take
the lock to check the term and the Raft role. When many RPCs come in for the same tablet,
the contention can hog service threads and cause queue overflows on busy systems. With this
improvement, RaftConsensus::DumpStatusHtml()
no longer blocks Raft
consensus activity and is not blocked by it either.
Adding --ignore_nonexistent for 'local_replica delete'
--ignore_nonexistent
flag was added for the 'local_replica
delete
' tool. This makes the real-world scripting scenarios easier if trying to
clean up tablet servers of particular tablet replicas.
Multiple tablet ids in 'local_replica delete'
The 'local_replica delete
' tool allows multiple tablet identifiers to be
specified and processed at once. This helps to reduce the overall latency caused by that
opening tablet server’s metadata takes significant time.
Avoid an epoll cycle when data can be sent immediately
If the transfer queue was empty prior to a transfer is enqueued, immediate writing is attempted. If that attemp fails to fully write, epoll watching is enabled.
Avoid calling Schema::find_column() once per RowBlock in columnar serialization
When a row block is being serialized in the columnar format the projection calculation happens once per Scan RPC and per-rowblock calls.