Go to file
Andrew Purtell b1706a8a12
HBASE-27204 BlockingRpcClient will hang for 20 seconds when SASL is enabled after finishing negotiation (#4642)
Revert "HBASE-24579: Failed SASL authentication does not result in an exception on client side (#1921)"

This reverts commit bd79c4065c.

When Kerberos authentication succeeds, on the server side, after
receiving the final SASL token from the client, we simply wait for
the client to continue by sending the connection header.
After HBASE-24579, on the client side, an additional readStatus()
was added, which mistakenly assumes that after negotiation has
completed a status code will be sent. However when authentication
has succeeded the server will not send one. As a result the client
will hang and only throw an exception when the configured read
timeout is reached, which is 20 seconds by default.

We cannot unilaterally send the expected additional status code
from the server side because older clients will not expect it. The
first call will fail because the client finds unexpected bytes in
the stream ahead of the call response. Fabricating a call response
also does not seem a viable strategy for backwards compatibility.

The HBASE-24579 change needs to be reconsidered given the
difficult backwards compatibility challenges here.

Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2022-07-24 23:06:31 -07:00
bin HBASE-27182 Rework tracing configuration 2022-07-11 14:37:05 +02:00
conf HBASE-27182 Rework tracing configuration 2022-07-11 14:37:05 +02:00
dev-support HBASE-27067 Upgrade pyjwt to version 2.4.0 or later for dev-support/git-jira-release-audit (#4473) 2022-05-31 11:52:52 -07:00
hbase-annotations HBASE-27165 Set version as 3.0.0-alpha-4-SNAPSHOT in master (#4582) 2022-06-29 11:04:21 +08:00
hbase-archetypes HBASE-27200 Clean up error-prone findings in hbase-archetypes (#4621) 2022-07-18 15:31:34 -07:00
hbase-assembly HBASE-27172 Upgrade OpenTelemetry dependency to 1.15.0 2022-07-06 13:54:41 +02:00
hbase-asyncfs HBASE-27220 Apply the spotless format change in HBASE-27208 to our code base 2022-07-19 10:00:43 +08:00
hbase-backup HBASE-27165 Set version as 3.0.0-alpha-4-SNAPSHOT in master (#4582) 2022-06-29 11:04:21 +08:00
hbase-balancer HBASE-27220 Apply the spotless format change in HBASE-27208 to our code base 2022-07-19 10:00:43 +08:00
hbase-build-configuration HBASE-27165 Set version as 3.0.0-alpha-4-SNAPSHOT in master (#4582) 2022-06-29 11:04:21 +08:00
hbase-checkstyle HBASE-27165 Set version as 3.0.0-alpha-4-SNAPSHOT in master (#4582) 2022-06-29 11:04:21 +08:00
hbase-client HBASE-27204 BlockingRpcClient will hang for 20 seconds when SASL is enabled after finishing negotiation (#4642) 2022-07-24 23:06:31 -07:00
hbase-common HBASE-27220 Apply the spotless format change in HBASE-27208 to our code base 2022-07-19 10:00:43 +08:00
hbase-compression HBASE-27165 Set version as 3.0.0-alpha-4-SNAPSHOT in master (#4582) 2022-06-29 11:04:21 +08:00
hbase-endpoint HBASE-27165 Set version as 3.0.0-alpha-4-SNAPSHOT in master (#4582) 2022-06-29 11:04:21 +08:00
hbase-examples HBASE-27165 Set version as 3.0.0-alpha-4-SNAPSHOT in master (#4582) 2022-06-29 11:04:21 +08:00
hbase-external-blockcache HBASE-27165 Set version as 3.0.0-alpha-4-SNAPSHOT in master (#4582) 2022-06-29 11:04:21 +08:00
hbase-hadoop-compat HBASE-27220 Apply the spotless format change in HBASE-27208 to our code base 2022-07-19 10:00:43 +08:00
hbase-hbtop HBASE-27165 Set version as 3.0.0-alpha-4-SNAPSHOT in master (#4582) 2022-06-29 11:04:21 +08:00
hbase-http HBASE-27220 Apply the spotless format change in HBASE-27208 to our code base 2022-07-19 10:00:43 +08:00
hbase-it HBASE-27220 Apply the spotless format change in HBASE-27208 to our code base 2022-07-19 10:00:43 +08:00
hbase-logging HBASE-27165 Set version as 3.0.0-alpha-4-SNAPSHOT in master (#4582) 2022-06-29 11:04:21 +08:00
hbase-mapreduce HBASE-27220 Apply the spotless format change in HBASE-27208 to our code base 2022-07-19 10:00:43 +08:00
hbase-metrics HBASE-27165 Set version as 3.0.0-alpha-4-SNAPSHOT in master (#4582) 2022-06-29 11:04:21 +08:00
hbase-metrics-api HBASE-27165 Set version as 3.0.0-alpha-4-SNAPSHOT in master (#4582) 2022-06-29 11:04:21 +08:00
hbase-procedure HBASE-27220 Apply the spotless format change in HBASE-27208 to our code base 2022-07-19 10:00:43 +08:00
hbase-protocol-shaded HBASE-27165 Set version as 3.0.0-alpha-4-SNAPSHOT in master (#4582) 2022-06-29 11:04:21 +08:00
hbase-replication HBASE-27165 Set version as 3.0.0-alpha-4-SNAPSHOT in master (#4582) 2022-06-29 11:04:21 +08:00
hbase-resource-bundle HBASE-27165 Set version as 3.0.0-alpha-4-SNAPSHOT in master (#4582) 2022-06-29 11:04:21 +08:00
hbase-rest HBASE-27220 Apply the spotless format change in HBASE-27208 to our code base 2022-07-19 10:00:43 +08:00
hbase-server HBASE-27230 RegionServer should be aborted when WAL.sync throws Timeo… (#4641) 2022-07-24 15:08:03 +08:00
hbase-shaded HBASE-27148 Move minimum hadoop 3 support version to 3.2.3 (#4561) 2022-07-06 12:49:47 +08:00
hbase-shell HBASE-27220 Apply the spotless format change in HBASE-27208 to our code base 2022-07-19 10:00:43 +08:00
hbase-testing-util HBASE-27220 Apply the spotless format change in HBASE-27208 to our code base 2022-07-19 10:00:43 +08:00
hbase-thrift HBASE-27220 Apply the spotless format change in HBASE-27208 to our code base 2022-07-19 10:00:43 +08:00
hbase-zookeeper HBASE-27220 Apply the spotless format change in HBASE-27208 to our code base 2022-07-19 10:00:43 +08:00
src HBASE-27186 Report block cache size metrics separately for L1 and L2 (#4608) 2022-07-11 22:00:04 -04:00
.asf.yaml HBASE-24261: (Addendum) Make notifications a toplevel object 2020-05-04 16:19:58 -07:00
.editorconfig HBASE-23767 Add JDK11 compilation and unit test support to Github precommit 2020-03-05 11:46:15 -08:00
.gitattributes HBASE-6816. [WINDOWS] line endings on checkout for .sh files 2013-01-23 19:30:14 +00:00
.gitignore HBASE-24271 Set values in `conf/hbase-site.xml` that enable running on `LocalFileSystem` out of the box 2020-05-14 13:18:43 -07:00
.pylintrc HBASE-21712 : Make submit-patch.py python3 compatible 2019-01-14 14:50:50 -08:00
.rubocop.yml HBASE-23943 Updated Rubocop configuration to current version 2020-03-18 11:09:36 +01:00
CHANGES.txt HBASE-26899 Run spotless:apply 2022-05-01 22:15:09 +08:00
LICENSE.txt HBASE-25896 Implement a Region Visualization on Master WebUI (#4228) 2022-03-15 21:01:57 +01:00
NOTICE.txt HBASE-26741 Incorrect exception handling in shell (#4101) 2022-02-10 12:14:46 +01:00
README.txt HBASE-14348 Update download mirror link 2018-04-04 14:30:06 -07:00
pom.xml HBASE-27208 Use spotless to purge the missing summary warnings from error prone (#4628) 2022-07-19 09:45:06 +08:00

README.txt

Apache HBase [1] is an open-source, distributed, versioned, column-oriented
store modeled after Google' Bigtable: A Distributed Storage System for
Structured Data by Chang et al.[2]  Just as Bigtable leverages the distributed
data storage provided by the Google File System, HBase provides Bigtable-like
capabilities on top of Apache Hadoop [3].

To get started using HBase, the full documentation for this release can be
found under the doc/ directory that accompanies this README.  Using a browser,
open the docs/index.html to view the project home page (or browse to [1]).
The hbase 'book' at http://hbase.apache.org/book.html has a 'quick start'
section and is where you should being your exploration of the hbase project.

The latest HBase can be downloaded from an Apache Mirror [4].

The source code can be found at [5]

The HBase issue tracker is at [6]

Apache HBase is made available under the Apache License, version 2.0 [7]

The HBase mailing lists and archives are listed here [8].

The HBase distribution includes cryptographic software. See the export control
notice here [9].

1. http://hbase.apache.org
2. http://research.google.com/archive/bigtable.html
3. http://hadoop.apache.org
4. http://www.apache.org/dyn/closer.lua/hbase/
5. https://hbase.apache.org/source-repository.html
6. https://hbase.apache.org/issue-tracking.html
7. http://hbase.apache.org/license.html
8. http://hbase.apache.org/mail-lists.html
9. https://hbase.apache.org/export_control.html