Go to file
Andrew Purtell 6a5a710e31
HBASE-27867 Close the L1 victim handler race (#5239)
When we evict a block from L1 and move it to L2 there is a brief window of
time where we have removed the block from the L1 map and yet the victim
handler has not completed execution. Some read-your-write use cases can be
significantly impacted even though the window is small.

Victim handling can be made atomic with respect to the unmapping operation.
The upside is there will be no L1+L2 misses during the transition. The
downside is if the victim handler takes a long time to execute – currently
they are all very fast, so only a theoretical risk – then other removals or
insertions in L1 can block until it completes.

Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2023-05-25 16:46:15 -07:00
bin HBASE-27728 Implement a tool to migrate replication peer data between different storage implementation (#5179) 2023-04-17 22:13:19 +08:00
conf HBASE-27762 Include EventType and ProcedureV2 pid in logging via MDC (addendum) 2023-04-24 17:55:18 +02:00
dev-support HBASE-27880 Bump requests from 2.28.1 to 2.31.0 in /dev-support/flaky-tests (#5250) 2023-05-23 22:56:30 +08:00
hbase-annotations HBASE-27434 Use ${revision} as placeholder for maven version to make it easier to control the version from command line (#4836) 2022-10-24 11:50:48 +08:00
hbase-archetypes HBASE-27434 Use ${revision} as placeholder for maven version to make it easier to control the version from command line (#4836) 2022-10-24 11:50:48 +08:00
hbase-assembly HBASE-27434 Use ${revision} as placeholder for maven version to make it easier to control the version from command line (#4836) 2022-10-24 11:50:48 +08:00
hbase-asyncfs HBASE-27530 Fix comment syntax errors (#4910) 2022-12-14 20:11:21 +08:00
hbase-backup Revert "HBASE-27649 WALPlayer does not properly dedupe overridden cell versions (#5047)" (#5057) 2023-02-25 12:13:38 -05:00
hbase-balancer HBASE-27530 Fix comment syntax errors (#4910) 2022-12-14 20:11:21 +08:00
hbase-build-configuration HBASE-27443 Addendum forward port new changes while cherry-picking to branch-2.x 2022-11-08 00:34:34 +08:00
hbase-checkstyle HBASE-27434 Use ${revision} as placeholder for maven version to make it easier to control the version from command line (#4836) 2022-10-24 11:50:48 +08:00
hbase-client HBASE-27216 Revisit the ReplicationSyncUp tool (#4966) 2023-05-15 22:53:48 +08:00
hbase-common HBASE-27857 Fix timeout exception handling in HBaseClassTestRule. (#5231) 2023-05-13 08:54:50 +08:00
hbase-compression HBASE-27672 Read RPC threads may BLOCKED at the Configuration.get when using java compression (#5075) 2023-03-06 11:42:50 +08:00
hbase-endpoint HBASE-27434 Use ${revision} as placeholder for maven version to make it easier to control the version from command line (#4836) 2022-10-24 11:50:48 +08:00
hbase-examples HBASE-27578 Upgrade hbase-thirdparty to 4.1.4 (#4985) 2023-01-20 09:08:31 -08:00
hbase-external-blockcache HBASE-27796 Improve MemcachedBlockCache (#5181) 2023-04-17 13:20:55 -07:00
hbase-hadoop-compat HBASE-27713 Remove numRegions in Region Metrics (#5107) 2023-04-08 11:02:39 +08:00
hbase-hbtop HBASE-27598 Upgrade mockito to 4.x (#4998) 2023-01-29 11:29:51 +08:00
hbase-http HBASE-27811 Enable cache control for logs endpoint and set max age as 0 (#5204) 2023-05-25 12:58:16 +05:30
hbase-it HBASE-27702 Remove 'hbase.regionserver.hlog.writer.impl' config (#5096) 2023-03-20 10:36:14 +08:00
hbase-logging HBASE-27762 Include EventType and ProcedureV2 pid in logging via MDC (addendum) 2023-04-24 17:55:18 +02:00
hbase-mapreduce HBASE-27848:Should fast-fail if unmatched column family exists when using ImportTsv (#5225) 2023-05-21 19:47:27 +08:00
hbase-metrics HBASE-27681 Refactor Table Latency Metrics (#5072) 2023-03-07 12:03:37 -05:00
hbase-metrics-api HBASE-27434 Use ${revision} as placeholder for maven version to make it easier to control the version from command line (#4836) 2022-10-24 11:50:48 +08:00
hbase-procedure HBASE-27277 TestRaceBetweenSCPAndTRSP fails in pre commit (#5248) 2023-05-23 22:45:18 +08:00
hbase-protocol-shaded HBASE-27216 Revisit the ReplicationSyncUp tool (#4966) 2023-05-15 22:53:48 +08:00
hbase-replication HBASE-27775 Use a separate WAL provider for hbase:replication table (#5157) 2023-05-15 22:53:48 +08:00
hbase-resource-bundle HBASE-27744 Update compression dependencies (#5137) 2023-03-23 13:05:55 -07:00
hbase-rest HBASE-27598 Upgrade mockito to 4.x (#4998) 2023-01-29 11:29:51 +08:00
hbase-server HBASE-27867 Close the L1 victim handler race (#5239) 2023-05-25 16:46:15 -07:00
hbase-shaded HBASE-27860 Fix build error against Hadoop 3.3.5 (#5233) 2023-05-13 08:56:37 +08:00
hbase-shell HBASE-27783 Implement a shell command to disable all peer modification (#5182) 2023-04-19 22:07:29 +08:00
hbase-testing-util HBASE-27595 ThreadGroup is removed since Hadoop 3.2.4 (#5001) 2023-02-02 14:15:44 +08:00
hbase-thrift HBASE-27865 TestThriftServerCmdLine fails with org.apache.hadoop.hbase.SystemExitRule (#5238) 2023-05-15 10:35:24 +08:00
hbase-zookeeper HBASE-27810. Check if the executor has already been shut down before submitting new job (#5207) 2023-04-28 16:46:22 +02:00
src HBASE-27811 Enable cache control for logs endpoint and set max age as 0 (#5204) 2023-05-25 12:58:16 +05:30
.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
.git-blame-ignore-revs HBASE-27512 Add file `.git-blame-ignore-revs` (#4904) 2022-12-01 20:12:53 +08:00
.gitattributes HBASE-6816. [WINDOWS] line endings on checkout for .sh files 2013-01-23 19:30:14 +00:00
.gitignore HBASE-27361 Add .flattened-pom.xml to .gitignore (#4769) 2022-09-08 16:58:11 +08: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-27791 Upgrade vega and its related js libraries (#5173) 2023-04-17 12:46:07 +02:00
NOTICE.txt HBASE-26741 Incorrect exception handling in shell (#4101) 2022-02-10 12:14:46 +01:00
README.md HBASE-27689 Update README.md about how to request a jira account (#5088) 2023-03-07 10:13:24 +08:00
pom.xml HBASE-27876 Only generate SBOM when releasing (#5251) 2023-05-24 23:20:39 +08:00

README.md

hbase-logo

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

Getting Start

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 https://hbase.apache.org). The hbase 'book' has a 'quick start' section and is where you should being your exploration of the hbase project.

The latest HBase can be downloaded from the download page.

We use mailing lists to send notice and discuss. The mailing lists and archives are listed here

How to Contribute

The source code can be found at https://hbase.apache.org/source-repository.html

The HBase issue tracker is at https://hbase.apache.org/issue-tracking.html

Notice that, the public registration for https://issues.apache.org/ has been disabled due to spam. If you want to contribute to HBase, please visit the Request a jira account page to submit your request. Please make sure to select hbase as the 'ASF project you want to file a ticket' so we can receive your request and process it.

NOTE: we need to process the requests manually so it may take sometime, for example, up to a week, for us to respond to your request.

About

Apache HBase is made available under the Apache License, version 2.0

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