Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

HBASE-26208 Supports revoke @ns single permission #3626

Closed
wants to merge 4,814 commits into from
Closed
Changes from 1 commit
Commits
Show all changes
4814 commits
Select commit Hold shift + click to select a range
081ea2d
HBASE-26747 Use python2 instead of python in our python scripts (#4102)
Apache9 Feb 9, 2022
2dd3d60
HBASE-26697 Migrate HBase Nightly HBase-Flaky-Tests and HBase-Find-Fl…
Apache9 Jan 22, 2022
0bc8671
HBASE-26747 Addendum remove python from Jenkinsfile and Jenkinsfile_G…
Apache9 Feb 9, 2022
cbbb1a0
HBASE-26724 Backport the UT changes in HBASE-24510 to branch-2.x (#4081)
Apache9 Feb 9, 2022
d747da6
HBASE-26709 Ban the usage of junit 3 TestCase (#4065)
Apache9 Jan 27, 2022
a890fad
HBASE-26741 Incorrect exception handling in shell (#4101)
petersomogyi Feb 10, 2022
d242c8f
HBASE-26521 Name RPC spans as `$package.$service/$method` (#4024)
ndimiduk Feb 9, 2022
83f890f
HBASE-26747 Addendum use python2 directly in Jenkinsfile and Jenkinsf…
Apache9 Feb 10, 2022
a2e64ff
HBASE-26749 Migrate HBase main pre commit job to ci-hbase (#4107)
Apache9 Feb 11, 2022
1bee604
HBASE-26688 Threads shared EMPTY_RESULT may lead to unexpected client…
YutSean Feb 15, 2022
55a83ac
HBASE-26434 Do compact when all L0 files are expired (#3830)
sunhelly Feb 15, 2022
3e84e50
HBASE-26730 Extend hbase shell 'status' command to support an option …
apurtell Feb 16, 2022
6906291
HBASE-26742 Comparator of NOT_EQUAL NULL is invalid for checkAndMutat…
sunhelly Feb 16, 2022
07d6381
HBASE-26712 Balancer encounters NPE in rare case (#4112) (#4092)
comnetwork Feb 16, 2022
cb225f1
HBASE-26659 The ByteBuffer of metadata in RAMQueueEntry in BucketCach…
YutSean Feb 18, 2022
1145581
HBASE-26576 Allow pluggable queue to be used with the fast path execu…
rmarsch Feb 18, 2022
2a7b413
HBASE-26727 Fix CallDroppedException reporting (#4088)
bbeaudreault Feb 19, 2022
5118e71
HBASE-26703 Allow configuration of IPC queue balancer (#4063)
bbeaudreault Feb 19, 2022
b265fe5
HBASE-26673 Implement a shell command for change SFT implementation (…
2005hithlj Feb 19, 2022
b9b7a65
HBASE-26546 hbase-shaded-client missing required thirdparty classes u…
bbeaudreault Feb 22, 2022
e1131a2
HBASE-26767 Rest server should not use a large Header Cache.
ss77892 Feb 23, 2022
4cdb380
HBASE-26640 Reimplement master local region initialization to better …
Apache9 Feb 24, 2022
82282a9
HBASE-26765 Minor refactor of async scanning code (#4121)
ndimiduk Feb 24, 2022
77bb153
HBASE-26707: Reduce number of renames during bulkload (#4066) (#4122)
BukrosSzabolcs Feb 25, 2022
b3292b8
HBASE-26663 Upgrade Maven Enforcer Plugin
ndimiduk Feb 23, 2022
4ad66df
HBASE-26772 Shell suspended in background (#4137)
petersomogyi Mar 1, 2022
7f30aa8
HBASE-23303 Add default security headers if SSL is enabled (#4128)
anmolnar Mar 2, 2022
e93abe6
HBASE-26776 RpcServer failure to SASL handshake always logs user "unk…
ndimiduk Mar 1, 2022
c5f6355
HBASE-26762 Un-Deprecate and improve documentation for Scan#setRowPre…
nielsbasjes Mar 2, 2022
d020cba
HBASE-26745: Include balancer cost metrics in jmx endpoint (#4140)
briaugenreich Mar 3, 2022
8a9e083
HBASE-26622 Update error-prone to 2.10
madrob Dec 23, 2021
651ec82
HBASE-26788 Disable Checks API callback from test results in PRs
ndimiduk Mar 2, 2022
87ce575
HBASE-26764 Implement generic exception support for TraceUtil methods…
ndimiduk Mar 4, 2022
2fa4bb0
HBASE-26242 Allow split when store file count larger than the confige…
sunhelly Mar 4, 2022
b5ac638
Revert "HBASE-26242 Allow split when store file count larger than the…
sunhelly Mar 4, 2022
df90a4b
HBASE-26242 Allow split when store file count larger than the confige…
sunhelly Mar 4, 2022
4644efb
HBASE-26691 Replacing log4j with reload4j for branch-2.x (#4050)
Apache9 Mar 4, 2022
bed30b1
Amend HBASE-26691 Replacing log4j with reload4j for branch-2.x
apurtell Mar 4, 2022
eb1c57d
HBASE-26777 BufferedDataBlockEncoder$OffheapDecodedExtendedCell.deepC…
stoty Mar 4, 2022
fc92a00
HBASE-26731 Add metrics for active and expired scanners (#4145)
bbeaudreault Mar 4, 2022
961796a
[branch-2] Amend HBASE-26731 Add metrics for active and expired scanners
apurtell Mar 4, 2022
01acd87
HBASE-26759 Fix trace continuity through CallRunner (#4126)
ndimiduk Mar 4, 2022
0a7e49c
HBASE-26792 Implement ScanInfo#toString (#4154)
shahrs87 Mar 5, 2022
1aff89e
HBASE-25709 Close region may stuck when region is compacting and skip…
sunhelly Mar 7, 2022
f4c91ee
HBASE-26552 Introduce retry to logroller to avoid abort (#4170)
sunhelly Mar 7, 2022
2e2764f
HBASE-26760 LICENSE handling should not allow non-aggregated apache-2…
busbey Mar 7, 2022
5bae04e
HBASE-26784 Use HIGH_QOS for ResultScanner.close requests (#4163)
bbeaudreault Mar 8, 2022
98836fb
HBASE-26784 Addendum: Close scanner request should properly inherit o…
bbeaudreault Mar 8, 2022
300f9b9
HBASE-26582 Prune use of Random and SecureRandom objects (#4118)
apurtell Mar 8, 2022
7e267c6
HBASE-26782 Minor code cleanup in and around RpcExecutor
ndimiduk Mar 1, 2022
91cb302
HBASE-26783 ScannerCallable doubly clears meta cache on retries (#4147)
bbeaudreault Mar 9, 2022
8a43178
HBASE-26814 Default StoreHotnessProtector to off, with logs to guide …
bbeaudreault Mar 9, 2022
e9065e7
HBASE-26815 TestFanOutOneBlockAsyncDFSOutput is flakey (#4186)
xicm Mar 10, 2022
3ebb8c1
HBASE-26804 Missing opentelemetry agent in hadoop-two-compat.xml (#4185)
taklwu Mar 10, 2022
fac011e
HBASE-26814 Addendum: Fix spotbugs warning and clarify intent (#4201)
bbeaudreault Mar 10, 2022
49d3a00
HBASE-26715 Blocked on SyncFuture in AsyncProtobufLogWriter#write (#4…
apurtell Mar 10, 2022
8c42bca
HBASE-26816 Fix CME in ReplicationSourceManager (#4187)
sunhelly Mar 11, 2022
0b879f2
HBASE-26824 TestHBaseTestingUtil.testResolvePortConflict failing afte…
apurtell Mar 11, 2022
e46fbed
HBASE-26761 TestMobStoreScanner (testGetMassive) can OOME (#4204)
apurtell Mar 11, 2022
51fd863
HBASE-26817 Mark RpcExecutor as IA.LimitedPrivate COPROC and PHOENIX
ndimiduk Mar 9, 2022
a227d76
HBASE-26819 Minor code cleanup in and around RpcScheduler
ndimiduk Mar 9, 2022
340cc6c
HBASE-26802 Backport the log4j2 changes to branch-2 (#4166)
Apache9 Mar 11, 2022
9e1de13
HBASE-25465 Use javac --release option for supporting cross version c…
Apache9 Mar 12, 2022
0f93663
HBASE-26323 Introduce a Snapshot Procedure (#4115)
frostruan Mar 12, 2022
05627b7
HBASE-26830 Rewrite TestLruBlockCache to make it more stable (#4212)
Apache9 Mar 14, 2022
2a5b340
HBASE-26828 Increase the concurrency when running UTs in pre commit j…
Apache9 Mar 14, 2022
50e1230
HBASE-26670 HFileLinkCleaner should be added even if snapshot is disa…
mymeiyi Mar 14, 2022
cdabd6a
HBASE-25895 Implement a Cluster Metrics JSON endpoint
ndimiduk May 15, 2021
e6879b8
HBASE-25895 Implement a Cluster Metrics JSON endpoint (addendum)
ndimiduk Mar 11, 2022
350db51
HBASE-26835 Rewrite TestLruAdaptiveBlockCache to make it more stable …
Apache9 Mar 15, 2022
a4b192e
HBASE-26611 Changing SFT implementation on disabled table is dangerou…
Apache9 Mar 15, 2022
46af73b
HBASE-26840 Fix NPE in the retry of logroller (#4224)
sunhelly Mar 15, 2022
c1bf2ff
HBASE-26833 Avoid waiting to clear buffer usage of ReplicationSourceS…
sunhelly Mar 15, 2022
3c968a1
HBASE-25896 Implement a Region Visualization on Master WebUI (#4228)
ndimiduk Mar 15, 2022
4dff67c
HBASE-26848 Set java.io.tmpdir on mvn command when running jenkins jo…
Apache9 Mar 16, 2022
d3629bb
HBASE-26837 Set SFT config when creating TableDescriptor in TestClone…
Apache9 Mar 16, 2022
db5e954
HBASE-26680 Close and do not write trailer for the broken WAL writer …
sunhelly Mar 16, 2022
50757ef
Hbase 26275 update error message when executing deleteall with ROWPRE…
xicm Mar 16, 2022
fdc7c49
HBASE-26720 ExportSnapshot should validate the source snapshot before…
xicm Mar 16, 2022
26af3b9
HBASE-26828 Addendum fix syntax error
Apache9 Mar 16, 2022
abde344
HBASE-26813 Remove javax.ws.rs-api dependency (#4191)
ndimiduk Mar 16, 2022
b5d5fe8
HBASE-26848 Addendum make tmpdir absolute
Apache9 Mar 17, 2022
81398f9
HBASE-26833 Addendum fix NPE in TestReplicationSource.testTerminateCl…
Apache9 Mar 17, 2022
4a6ba11
HBASE-26842 TestSnapshotProcedure fails in branch-2 (#4225)
Mar 18, 2022
ac5651c
HBASE-26858 Refactor TestMasterRegionOnTwoFileSystems to avoid dead l…
Apache9 Mar 18, 2022
7af08ce
HBASE-26861 Fix flaky TestSnapshotFromMaster.testSnapshotHFileArchivi…
Apache9 Mar 18, 2022
d09b04d
HBASE-26855 Delete unnecessary dependency on jaxb-runtime jar (#4236)
ndimiduk Mar 18, 2022
ba14796
Revert "HBASE-26813 Remove javax.ws.rs-api dependency (#4191)"
Apache9 Mar 19, 2022
8640453
HBASE-26870 Log4j2 integration is incorrect in nighly's client integr…
Apache9 Mar 21, 2022
321c35a
HBASE-26834 Adapt ConnectionRule for both sync and async connections
ndimiduk Mar 21, 2022
0d968af
HBASE-26531 Trace coprocessor exec endpoints
ndimiduk Feb 16, 2022
0a30289
HBASE-26531 Trace coprocessor exec endpoints (addendum)
ndimiduk Mar 14, 2022
68f3fbe
HBASE-26791 Memstore flush fencing issue for SFT (#4202)
Apache9 Mar 21, 2022
d889746
HBASE-26869 RSRpcServices.scan should deep clone cells when RpcCallCo…
comnetwork Mar 23, 2022
c55c289
Revert "HBASE-26869 RSRpcServices.scan should deep clone cells when R…
comnetwork Mar 23, 2022
5affa20
HBASE-26869 RSRpcServices.scan should deep clone cells when RpcCallCo…
comnetwork Mar 23, 2022
1caa288
HBASE-21065 Try ROW_INDEX_V1 encoding on meta table (#4268)
bbeaudreault Mar 23, 2022
b7cfc1d
HBASE-26175 MetricsHBaseServer should record all kinds of Exceptions …
sunhelly Mar 24, 2022
ef40c04
HBASE-26878 TableInputFormatBase should cache RegionSizeCalculator (#…
bbeaudreault Mar 24, 2022
6650807
HBASE-26881 Backport HBASE-25368 to branch-2 (#4267)
wchevreuil Mar 25, 2022
51f8c87
HBASE-26875 RpcRetryingCallerImpl translateException ignores return v…
bbeaudreault Mar 25, 2022
c73ef2c
HBASE-26876 Use toStringBinary for rowkey in RegionServerCallable err…
bbeaudreault Mar 25, 2022
bd5b447
HBASE-26871 shaded mapreduce and shaded byo-hadoop client artifacts c…
busbey Mar 26, 2022
9ecd4e7
HBASE-26864 SplitTableRegionProcedure calls openParentRegions() at a …
huaxiangsun Mar 26, 2022
7ae6be7
HBASE-26872 Load rate calculator for cost functions should be more pr…
sunhelly Mar 27, 2022
fd621a7
HBASE-26832 Avoid repeated releasing of flushed wal entries in AsyncF…
Apache9 Mar 27, 2022
7623900
Revert "HBASE-26872 Load rate calculator for cost functions should be…
sunhelly Mar 28, 2022
e0ae456
HBASE-26617 Use spotless to reduce the pain on fixing checkstyle issu…
Apache9 Mar 28, 2022
89e7050
HBASE-26617 Addendum add removeUnusedImports
Apache9 Mar 28, 2022
170570b
HBASE-26872 Load rate calculator for cost functions should be more pr…
sunhelly Mar 27, 2022
0dbcf8f
HBASE-26718 HFileArchiver can remove referenced StoreFiles from the a…
d-c-manning Mar 28, 2022
5308eb3
HBASE-26896 list_quota_snapshots fails with ‘ERROR NameError: uniniti…
stoty Mar 28, 2022
af5624b
HBASE-26885 The TRSP should not go on when it get a bogus server name…
bsglz Mar 29, 2022
cd09f3a
HBASE-26902 Bump bcprov-jdk15on from 1.60 to 1.67 (#4292)
dependabot[bot] Mar 29, 2022
bb18f40
HBASE-26871 addendum. use the jar command from JAVA_HOME (#4297)
busbey Mar 30, 2022
455b7c7
HBASE-26903 Bump httpclient from 4.5.3 to 4.5.13 (#4296)
apurtell Mar 30, 2022
1a85588
HBASE-26812 ShortCircuitingClusterConnection fails to close RegionSca…
comnetwork Mar 31, 2022
98db15a
HBASE-26245 Store region server list in master local region (#4136)
Apache9 Mar 31, 2022
489af42
HBASE-26545 Implement tracing of scan
ndimiduk Mar 31, 2022
35868ab
HBASE-26838 Junit jar is not included in the hbase tar ball, causing …
wchevreuil Mar 31, 2022
9ea77ef
HBASE-26912 Bump checkstyle from 8.28 to 8.29 (#4293)
dependabot[bot] Mar 31, 2022
4311974
HBASE-26811 Secondary replica may be disabled for read incorrectly fo…
comnetwork Apr 1, 2022
03b5529
HBASE-26916 Fix missing braces warnings in DefaultVisibilityExpressio…
Apache9 Apr 3, 2022
0b87621
HBASE-26919 Rewrite the counting rows part in TestFromClientSide4 (#4…
Apache9 Apr 3, 2022
1560b41
HBASE-26920 Fix missing braces warnings in TestProcedureMember (#4315)
Apache9 Apr 3, 2022
ab9ccab
HBASE-26921 Rewrite the counting cells part in TestMultiVersions (#4316)
Apache9 Apr 3, 2022
3b38380
HBASE-26924 Fix log parameter error and spelling error (#4318)
weimingdiit Apr 4, 2022
8ef1ae3
HBASE-26885 Addendum throw exception instead of return in TRSP to let…
bsglz Apr 4, 2022
1c14046
HBASE-26927 Add snapshot scanner UT with SFT and some cleanups to Tes…
wchevreuil Apr 5, 2022
8755509
HBASE-26882 Backport "HBASE-26810 Add dynamic configuration support f…
taklwu Apr 5, 2022
197b8d4
HBASE-26928 Fix several indentation problems (#4323)
Apache9 Apr 6, 2022
28acbc1
HBASE-26929 Upgrade surefire plugin to 3.0.0-M6 (#4319)
Apache9 Apr 7, 2022
eb22319
HBASE-26939 Typo in admin.rb "COMPRESSION_COMPACT_MAJPR" (#4331)
apurtell Apr 8, 2022
e7eb628
HBASE-26922 Fix LineLength warnings as much as possible if it can not…
Apache9 Apr 9, 2022
d001fb0
HBASE-26880 Misspelling commands in hbase shell will crash the shell …
petersomogyi Apr 11, 2022
f9abe3d
HBASE-26618 Involving primary meta region in meta scan with CatalogRe…
huaxiangsun Apr 11, 2022
52ca440
HBASE-26901 delete with null columnQualifier occurs NullPointerExcept…
eomiks Apr 12, 2022
5dc93d7
HBASE-26895 on hbase shell, 'delete/deleteall' for a columnfamily is …
eomiks Apr 12, 2022
f8b2ac0
HBASE-26941 LocalHBaseCluster.waitOnRegionServer should quit while th…
Apache9 Apr 13, 2022
b405a6f
Revert "HBASE-26941 LocalHBaseCluster.waitOnRegionServer should quit …
Apache9 Apr 13, 2022
c76daa1
HBASE-26944 Possible resource leak while creating new region scanner …
pankaj72981 Apr 15, 2022
bbe048c
HBASE-26946 TestRetainAssignmentOnRestartSplitWithoutZk infinite loop…
Apache9 Apr 16, 2022
ae8eccd
HBASE-26938 Compaction failures after StoreFileTracker integration (#…
Apache9 Apr 17, 2022
085c651
HBASE-26941 LocalHBaseCluster.waitOnRegionServer should not call join…
Apache9 Apr 17, 2022
a81b369
HBASE-26906 Remove duplicate dependency declaration
ndimiduk Mar 30, 2022
d7e6baf
HBASE-26947 Implement a special TestAppender to limit the size of tes…
Apache9 Apr 21, 2022
edbe44b
HBASE-25058 Export necessary modules when running under JDK11 (#4337)
Apache9 Apr 21, 2022
2240025
HBASE-26807 Unify CallQueueTooBigException special pause with CallDro…
bbeaudreault Apr 22, 2022
e5b0084
HBASE-26891 Make MetricsConnection scope configurable (#4365)
bbeaudreault Apr 22, 2022
8d17241
HBASE-26942 cache region locations when getAllRegionLocations (#4364)
frostruan Apr 22, 2022
0f9f6f2
HBASE-26959 Brotli compression support (#4353)
apurtell Apr 22, 2022
c9d833e
HBASE-26971 SnapshotInfo --snapshot param is marked as required even …
wchevreuil Apr 25, 2022
2fe5a4f
HBASE-26807 Addendum: adhere to maxAttempts in RawAsyncTableImpl.batc…
bbeaudreault Apr 25, 2022
c2baa1f
HBASE-26581 Add metrics for failed replication edits (#4347)
briaugenreich Apr 26, 2022
6813a5c
HBASE-26979 StoreFileListFile logs frequent stacktraces at INFO level…
apurtell Apr 28, 2022
ea5c5da
HBASE-26980 Update javadoc of BucketCache.java (#4374)
liangxs Apr 28, 2022
895e0f4
HBASE-26975 Add on heap and off heap memstore info in rs web UI (#4368)
liangxs Apr 28, 2022
fd2e720
HBASE-22349 slop in StochasticLoadBalancer (#4371)
d-c-manning Apr 28, 2022
3090848
HBASE-26932 Skip generating ref guide when running 'mvn site' on bran…
Apache9 Apr 29, 2022
e9c9418
HBASE-26943 HMaster page style display confusion (#4369)
2005hithlj Apr 25, 2022
0a0bea6
HBASE-26917 Do not add --threads when running 'mvn site' (#4354)
Apache9 Apr 29, 2022
afb8afd
HBASE-26988 dynamic configuration of loadbalance.bytable (#4384)
d-c-manning Apr 29, 2022
191e932
HBASE-26992 Brotli compressor has unexpected behavior during reinitia…
apurtell Apr 30, 2022
731da45
HBASE-26899 tweak pom and formatter
Apache9 Apr 26, 2022
1a5b1b2
HBASE-26899 Run spotless:apply
Apache9 May 1, 2022
be8a9a5
HBASE-26989 TestStochasticLoadBalancer fixes for performance and cons…
d-c-manning May 2, 2022
a38716c
HBASE-26648 Improve fidelity of RegionLocator spans
ndimiduk Feb 11, 2022
1b5c881
HBASE-26648 Improve fidelity of RegionLocator spans (addendum)
ndimiduk May 2, 2022
3bafbf1
HBASE-26892 Add spotless:check in our pre commit general check (#4393)
Apache9 May 3, 2022
a025844
HBASE-26990 Add default implementation for BufferedMutator interface …
bbeaudreault May 3, 2022
9a41117
HBASE-26995 Remove ref guide check in pre commit and nightly for bran…
Apache9 May 5, 2022
cb61d6a
HBASE-26977 HMaster's ShutdownHook does not take effect, if tablesOnM…
2005hithlj May 3, 2022
8703cac
HBASE-26984 Chaos Monkey thread dies in ITBLL Chaos GracefulRollingRe…
huaxiangsun May 5, 2022
91eab0b
HBASE-27000 Block cache stats (Misses Caching) display error in RS we…
tomscut May 6, 2022
f5a0806
HBASE-26963 ReplicationSource#removePeer hangs if we try to remove ba…
shahrs87 May 7, 2022
6cd31ed
HBASE-26330 Document new provided compression codecs (#4396)
apurtell May 7, 2022
ad2180b
HBASE-26994 MasterFileSystem create directory without permission chec…
skysiders May 8, 2022
7b7f576
HBASE-26999 HStore should try write WAL compaction marker before repl…
wchevreuil May 9, 2022
5cfce69
HBASE-27003 Optimize log format for PerformanceEvaluation (#4411)
tomscut May 11, 2022
b7647d8
HBASE-27021 StoreFileInfo should set its initialPath in a consistent …
wchevreuil May 12, 2022
e3359ef
Revert "HBASE-27021 StoreFileInfo should set its initialPath in a con…
Apache9 May 12, 2022
930bc53
HBASE-27021 StoreFileInfo should set its initialPath in a consistent way
wchevreuil May 10, 2022
62dbae2
HBASE-26999 Addendum fix spotless errors
Apache9 May 13, 2022
43e8c11
HBASE-27013 Introduce read all bytes when using pread for prefetch (#…
taklwu May 13, 2022
7bc7eb5
HBASE-26905 ReplicationPeerManager#checkPeerExists should throw Repli…
shahrs87 May 14, 2022
2efaa7d
HBASE-27019 Minor compression performance improvements (#4420)
apurtell May 14, 2022
31f4b42
HBASE-27032 The draining region servers metric description is incorre…
tomscut May 17, 2022
de9a17e
HBASE-26856:BufferedDataBlockEncoder.OnheapDecodedCell value can get …
arshadmohammad May 17, 2022
71bd62d
Revert "HBASE-26856:BufferedDataBlockEncoder.OnheapDecodedCell value …
ndimiduk May 18, 2022
1e6d93a
HBASE-26986 Trace a one-shot execution of a Master procedure
ndimiduk Apr 28, 2022
b9b5302
HBASE-27045 Disable TestClusterScopeQuotaThrottle (#4440)
Apache9 May 18, 2022
f8e742d
HBASE-27024 The User API and Developer API links are broken on hbase.…
Apache9 May 13, 2022
f20f771
HBASE-27006 Move nightly integration testing to new larger test node …
busbey May 18, 2022
8a3a942
HBASE-27018 Add a tool command list_liveservers (#4416)
tomscut May 19, 2022
a836fc8
HBASE-27050 Support unit test pattern matching again (#4447)
apurtell May 20, 2022
7af82cf
HBASE-27051 TestReplicationSource.testReplicationSourceInitializingMe…
apurtell May 20, 2022
2cae259
HBASE-27052 TestAsyncTableScanner.testScanWrongColumnFamily is flaky …
ndimiduk May 20, 2022
8bc55f8
HBASE-27043 Let lock wait timeout to improve performance of SnapshotH…
sunhelly May 20, 2022
b00e303
HBASE-27054 TestStochasticLoadBalancerRegionReplicaLargeCluster.testR…
d-c-manning May 21, 2022
a6b1c7e
HBASE-27027 Use jetty SslContextFactory.Server instead of deprecated …
bitterfox May 22, 2022
bc40ede
HBASE-27047 Fix typo for metric drainingRegionServers (#4441)
tomscut May 22, 2022
d8d1089
HBASE-27030 Fix undefined local variable error in draining_servers.rb…
junegunn May 22, 2022
778ae2d
HBASE-26933 Remove all ref guide stuff on branch other than master (#…
Apache9 May 22, 2022
4260e3a
HBASE-26933 Addendum remove unused resources and links on site
Apache9 May 22, 2022
200cbcc
HBASE-26320 Implement a separate thread pool for the LogCleaner (#371…
sunhelly May 24, 2022
56b81b4
HBASE-26342 Support custom paths of independent configuration and poo…
sunhelly May 24, 2022
02c1fef
HBASE-27055 Add additional comments when using HBASE_TRACE_OPTS with …
taklwu May 24, 2022
50dd961
HBASE-27061 two phase bulkload is broken when SFT is in use. (#4465)
ss77892 May 26, 2022
20895c7
HBASE-26854 Shell startup logs a bunch of noise (#4469)
apurtell May 27, 2022
779e985
HBASE-27065 [branch-2] Build against Hadoop 3.3.3 (#4471)
apurtell May 27, 2022
5e54c6d
HBASE-27066 The Region Visualizer display failed (#4472)
tomscut May 29, 2022
7fbfb10
HBASE-27069 Hbase SecureBulkload permission regression (#4475)
stoty May 31, 2022
cfba2f2
HBASE-27064 CME in TestRegionNormalizerWorkQueue (#4468)
apurtell May 31, 2022
f4f3e63
HBASE-27068 NPE occurs when the active master has not yet been electe…
tomscut May 31, 2022
59700ba
HBASE-27079 Lower some DEBUG level logs in ReplicationSourceWALReader…
apurtell May 31, 2022
e69da68
HBASE-26063 The current checkcompatibility.py script can not compare …
Apache9 Jul 3, 2021
6dd1a6b
HBASE-27081 Fix disallowed compatibility breaks on branch-2.5 and bra…
apurtell Jun 1, 2022
716a56c
HBASE-27082 Change the return value of RSGroupInfo.getServers from So…
Apache9 Jun 1, 2022
bcf3cd5
Amend HBASE-27082 spotless:apply
apurtell Jun 1, 2022
40c2743
HBASE-27023 Fix license issues after running spotless:apply (#4458)
Apache9 Jun 2, 2022
b21930f
HBASE-27037 Display the region server state on the Web UI (#4432)
tomscut Jun 2, 2022
8270b5d
HBASE-27039 Some methods of MasterRegion should be annotated for test…
2005hithlj Jun 2, 2022
7a02cbf
HBASE-26962: Add mob info in web UI (#4359)
liangxs Jun 2, 2022
f61ac22
HBASE-26680 Close and do not write trailer for the broken WAL writer(…
sunhelly Jun 2, 2022
f97af48
HBASE-27046 The filenum in AbstractFSWAL should be monotone increasin…
Apache9 Jun 2, 2022
672b0a5
HBASE-26649 Support meta replica LoadBalance mode for RegionLocator#g…
huaxiangsun Jun 2, 2022
58aaed1
Revert "HBASE-26962: Add mob info in web UI (#4359)"
Jun 2, 2022
286c9c3
HBASE-26985 check permission for SecureBulkLoadManager (#4379)
skysiders Jun 2, 2022
bb8b80e
HBASE-26983 Upgrade JRuby to 9.3.4.0 (#4378)
busbey Jun 5, 2022
ef22184
HBASE-27017: MOB snapshot is broken when FileBased SFT is used (#4466)
BukrosSzabolcs Jun 5, 2022
fd6e6e0
HBASE-27080 Optimize debug output log of ConstantSizeRegionSplitPolic…
liuzhuang2017 Jun 6, 2022
eca7c60
HBASE-27084 Add spotless:check in mvn verify stage (#4482)
Apache9 Jun 6, 2022
50e2ef2
HBASE-27038 CellComparator should extend Serializable (#4492)
bbeaudreault Jun 6, 2022
a2dc48a
HBASE-27093 AsyncNonMetaRegionLocator:put Complete CompletableFuture …
xiaowangzhixiao Jun 7, 2022
63a35fa
HBASE-27092 Regionserver table on Master UI is broken (#4495)
tomscut Jun 8, 2022
33f633a
Revert "HBASE-27066 The Region Visualizer display failed (#4472)"
ndimiduk Jun 9, 2022
b3c9ef3
HBASE-27066 The Region Visualizer display failed
ndimiduk Jun 6, 2022
27f9182
HBASE-27103 All MR UTs are broken because of ClassNotFound (#4514)
apurtell Jun 9, 2022
1dcee76
HBASE-27095 HbckChore should produce a report
ndimiduk Jun 10, 2022
6a5fb76
HBASE-27102 Vacate the .idea folder in order to simplify spotless con…
ndimiduk Jun 9, 2022
9b8bb58
HBASE-26366 Provide meaningful parent spans to ZK interactions
ndimiduk Jun 10, 2022
57d3122
HBASE-26923 PerformanceEvaluation support encryption option (#4489)
wenwj0 Jun 11, 2022
b21377f
Revert "HBASE-27084 Add spotless:check in mvn verify stage (#4482)"
Apache9 Jun 11, 2022
18a1a4b
HBASE-27097 SimpleRpcServer is broken (#4521)
apurtell Jun 11, 2022
b8f0c61
Revert "HBASE-25709 Close region may stuck when region is compacting …
virajjasani Jun 12, 2022
96693e8
HBASE-26856 BufferedDataBlockEncoder.OnheapDecodedCell value can get …
arshadmohammad May 17, 2022
3b9491b
HBASE-26167 Allow users to not start zookeeper and dfs cluster when u…
xicm Jun 15, 2022
ef0ff27
HBASE-27117 Update the method comments for RegionServerAccounting (#4…
tomscut Jun 17, 2022
f7d2d12
HBASE-27125 The batch size of cleaning expired mob files should have …
sunhelly Jun 17, 2022
47e1f1e
HBASE-26208 Supports revoke @ns specified permission
Jun 18, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
HBASE-26521 Name RPC spans as $package.$service/$method (#4024)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
ndimiduk committed Feb 10, 2022
commit d242c8fafaa9eb9328a9c537876fc18eae33e5f9
Original file line number Diff line number Diff line change
@@ -32,6 +32,7 @@
import java.util.function.Supplier;
import org.apache.hadoop.hbase.client.AsyncConnectionImpl;
import org.apache.hadoop.hbase.client.ClusterConnection;
import org.apache.hadoop.hbase.security.User;
import org.apache.hadoop.hbase.trace.TraceUtil;
import org.apache.yetus.audience.InterfaceAudience;

@@ -91,15 +92,32 @@ static void populateConnectionAttributes(
* Static utility method that performs the primary logic of this builder. It is visible to other
* classes in this package so that other builders can use this functionality as a mix-in.
* @param attributes the attributes map to be populated.
* @param conn the source of attribute values.
* @param conn the source of connection attribute values.
*/
static void populateConnectionAttributes(
final Map<AttributeKey<?>, Object> attributes,
final AsyncConnectionImpl conn
) {
final Supplier<String> connStringSupplier = () -> conn.getConnectionRegistry()
.getConnectionString();
populateConnectionAttributes(attributes, connStringSupplier, conn::getUser);
}

/**
* Static utility method that performs the primary logic of this builder. It is visible to other
* classes in this package so that other builders can use this functionality as a mix-in.
* @param attributes the attributes map to be populated.
* @param connectionStringSupplier the source of the {@code db.connection_string} attribute value.
* @param userSupplier the source of the {@code db.user} attribute value.
*/
static void populateConnectionAttributes(
final Map<AttributeKey<?>, Object> attributes,
final Supplier<String> connectionStringSupplier,
final Supplier<User> userSupplier
) {
attributes.put(DB_SYSTEM, DB_SYSTEM_VALUE);
attributes.put(DB_CONNECTION_STRING, conn.getConnectionRegistry().getConnectionString());
attributes.put(DB_USER, Optional.ofNullable(conn.getUser())
attributes.put(DB_CONNECTION_STRING, connectionStringSupplier.get());
attributes.put(DB_USER, Optional.ofNullable(userSupplier.get())
.map(Object::toString)
.orElse(null));
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,118 @@
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/

package org.apache.hadoop.hbase.client.trace;

import static org.apache.hadoop.hbase.trace.HBaseSemanticAttributes.NET_PEER_NAME;
import static org.apache.hadoop.hbase.trace.HBaseSemanticAttributes.NET_PEER_PORT;
import static org.apache.hadoop.hbase.trace.HBaseSemanticAttributes.RPC_METHOD;
import static org.apache.hadoop.hbase.trace.HBaseSemanticAttributes.RPC_SERVICE;
import static org.apache.hadoop.hbase.trace.HBaseSemanticAttributes.RPC_SYSTEM;
import io.opentelemetry.api.common.AttributeKey;
import io.opentelemetry.api.trace.Span;
import io.opentelemetry.api.trace.SpanBuilder;
import io.opentelemetry.api.trace.SpanKind;
import java.util.HashMap;
import java.util.Map;
import java.util.function.Supplier;
import org.apache.hadoop.hbase.net.Address;
import org.apache.hadoop.hbase.trace.HBaseSemanticAttributes.RpcSystem;
import org.apache.hadoop.hbase.trace.TraceUtil;
import org.apache.yetus.audience.InterfaceAudience;
import org.apache.hbase.thirdparty.com.google.protobuf.Descriptors;

/**
* Construct {@link Span} instances originating from the client side of an IPC.
*
* @see <a href="https://github.com/open-telemetry/opentelemetry-specification/blob/3e380e249f60c3a5f68746f5e84d10195ba41a79/specification/trace/semantic_conventions/rpc.md">Semantic conventions for RPC spans</a>
*/
@InterfaceAudience.Private
public class IpcClientSpanBuilder implements Supplier<Span> {

private String name;
private final Map<AttributeKey<?>, Object> attributes = new HashMap<>();

@Override
public Span get() {
return build();
}

public IpcClientSpanBuilder setMethodDescriptor(final Descriptors.MethodDescriptor md) {
final String packageAndService = getRpcPackageAndService(md.getService());
final String method = getRpcName(md);
this.name = buildSpanName(packageAndService, method);
populateMethodDescriptorAttributes(attributes, md);
return this;
}

public IpcClientSpanBuilder setRemoteAddress(final Address remoteAddress) {
attributes.put(NET_PEER_NAME, remoteAddress.getHostName());
attributes.put(NET_PEER_PORT, (long) remoteAddress.getPort());
return this;
}

@SuppressWarnings("unchecked")
public Span build() {
final SpanBuilder builder = TraceUtil.getGlobalTracer()
.spanBuilder(name)
// TODO: what about clients embedded in Master/RegionServer/Gateways/&c?
.setSpanKind(SpanKind.CLIENT);
attributes.forEach((k, v) -> builder.setAttribute((AttributeKey<? super Object>) k, v));
return builder.startSpan();
}

/**
* Static utility method that performs the primary logic of this builder. It is visible to other
* classes in this package so that other builders can use this functionality as a mix-in.
* @param attributes the attributes map to be populated.
* @param md the source of the RPC attribute values.
*/
static void populateMethodDescriptorAttributes(
final Map<AttributeKey<?>, Object> attributes,
final Descriptors.MethodDescriptor md
) {
final String packageAndService = getRpcPackageAndService(md.getService());
final String method = getRpcName(md);
attributes.put(RPC_SYSTEM, RpcSystem.HBASE_RPC.name());
attributes.put(RPC_SERVICE, packageAndService);
attributes.put(RPC_METHOD, method);
}

/**
* Retrieve the combined {@code $package.$service} value from {@code sd}.
*/
public static String getRpcPackageAndService(final Descriptors.ServiceDescriptor sd) {
// it happens that `getFullName` returns a string in the $package.$service format required by
// the otel RPC specification. Use it for now; might have to parse the value in the future.
return sd.getFullName();
}

/**
* Retrieve the {@code $method} value from {@code md}.
*/
public static String getRpcName(final Descriptors.MethodDescriptor md) {
return md.getName();
}

/**
* Construct an RPC span name.
*/
public static String buildSpanName(final String packageAndService, final String method) {
return packageAndService + "/" + method;
}
}
Original file line number Diff line number Diff line change
@@ -20,10 +20,6 @@

import static org.apache.hadoop.hbase.ipc.IPCUtil.toIOE;
import static org.apache.hadoop.hbase.ipc.IPCUtil.wrapException;
import static org.apache.hadoop.hbase.trace.HBaseSemanticAttributes.REMOTE_HOST_KEY;
import static org.apache.hadoop.hbase.trace.HBaseSemanticAttributes.REMOTE_PORT_KEY;
import static org.apache.hadoop.hbase.trace.HBaseSemanticAttributes.RPC_METHOD_KEY;
import static org.apache.hadoop.hbase.trace.HBaseSemanticAttributes.RPC_SERVICE_KEY;

import io.opentelemetry.api.trace.Span;
import io.opentelemetry.api.trace.StatusCode;
@@ -40,6 +36,7 @@
import org.apache.hadoop.hbase.HConstants;
import org.apache.hadoop.hbase.ServerName;
import org.apache.hadoop.hbase.client.MetricsConnection;
import org.apache.hadoop.hbase.client.trace.IpcClientSpanBuilder;
import org.apache.hadoop.hbase.codec.Codec;
import org.apache.hadoop.hbase.codec.KeyValueCodec;
import org.apache.hadoop.hbase.net.Address;
@@ -399,11 +396,10 @@ private void onCallFinished(Call call, HBaseRpcController hrc, Address addr,
private Call callMethod(final Descriptors.MethodDescriptor md, final HBaseRpcController hrc,
final Message param, Message returnType, final User ticket, final Address addr,
final RpcCallback<Message> callback) {
Span span = TraceUtil.createClientSpan("RpcClient.callMethod")
.setAttribute(RPC_SERVICE_KEY, md.getService().getName())
.setAttribute(RPC_METHOD_KEY, md.getName())
.setAttribute(REMOTE_HOST_KEY, addr.getHostName())
.setAttribute(REMOTE_PORT_KEY, addr.getPort());
Span span = new IpcClientSpanBuilder()
.setMethodDescriptor(md)
.setRemoteAddress(addr)
.build();
try (Scope scope = span.makeCurrent()) {
final MetricsConnection.CallStats cs = MetricsConnection.newCallStats();
cs.setStartTime(EnvironmentEdgeManager.currentTime());
Original file line number Diff line number Diff line change
@@ -24,6 +24,7 @@
import io.opentelemetry.api.trace.StatusCode;
import io.opentelemetry.sdk.trace.data.SpanData;
import io.opentelemetry.sdk.trace.data.StatusData;
import java.time.Duration;
import org.hamcrest.Description;
import org.hamcrest.FeatureMatcher;
import org.hamcrest.Matcher;
@@ -46,6 +47,16 @@ public static Matcher<SpanData> hasAttributes(Matcher<Attributes> matcher) {
};
}

public static Matcher<SpanData> hasDuration(Matcher<Duration> matcher) {
return new FeatureMatcher<SpanData, Duration>(
matcher, "SpanData having duration that ", "duration") {
@Override
protected Duration featureValueOf(SpanData item) {
return Duration.ofNanos(item.getEndEpochNanos() - item.getStartEpochNanos());
}
};
}

public static Matcher<SpanData> hasEnded() {
return new TypeSafeMatcher<SpanData>() {
@Override protected boolean matchesSafely(SpanData item) {
@@ -92,4 +103,17 @@ public static Matcher<SpanData> hasStatusWithCode(StatusCode statusCode) {
}
};
}

public static Matcher<SpanData> hasTraceId(String traceId) {
return hasTraceId(is(equalTo(traceId)));
}

public static Matcher<SpanData> hasTraceId(Matcher<String> matcher) {
return new FeatureMatcher<SpanData, String>(
matcher, "SpanData with a traceId that ", "traceId") {
@Override protected String featureValueOf(SpanData item) {
return item.getTraceId();
}
};
}
}
Original file line number Diff line number Diff line change
@@ -44,14 +44,13 @@ public final class HBaseSemanticAttributes {
AttributeKey.stringArrayKey("db.hbase.container_operations");
public static final AttributeKey<List<String>> REGION_NAMES_KEY =
AttributeKey.stringArrayKey("db.hbase.regions");
public static final AttributeKey<String> RPC_SERVICE_KEY =
AttributeKey.stringKey("db.hbase.rpc.service");
public static final AttributeKey<String> RPC_METHOD_KEY =
AttributeKey.stringKey("db.hbase.rpc.method");
public static final AttributeKey<String> RPC_SYSTEM = SemanticAttributes.RPC_SYSTEM;
public static final AttributeKey<String> RPC_SERVICE = SemanticAttributes.RPC_SERVICE;
public static final AttributeKey<String> RPC_METHOD = SemanticAttributes.RPC_METHOD;
public static final AttributeKey<String> SERVER_NAME_KEY =
AttributeKey.stringKey("db.hbase.server.name");
public static final AttributeKey<String> REMOTE_HOST_KEY = SemanticAttributes.NET_PEER_NAME;
public static final AttributeKey<Long> REMOTE_PORT_KEY = SemanticAttributes.NET_PEER_PORT;
public static final AttributeKey<String> NET_PEER_NAME = SemanticAttributes.NET_PEER_NAME;
public static final AttributeKey<Long> NET_PEER_PORT = SemanticAttributes.NET_PEER_PORT;
public static final AttributeKey<Boolean> ROW_LOCK_READ_LOCK_KEY =
AttributeKey.booleanKey("db.hbase.rowlock.readlock");
public static final AttributeKey<String> WAL_IMPL = AttributeKey.stringKey("db.hbase.wal.impl");
@@ -74,5 +73,13 @@ public enum Operation {
SCAN,
}

/**
* These are values used with {@link #RPC_SYSTEM}. Only a single value for now; more to come as
* we add tracing over our gateway components.
*/
public enum RpcSystem {
HBASE_RPC,
}

private HBaseSemanticAttributes() { }
}
6 changes: 6 additions & 0 deletions hbase-server/pom.xml
Original file line number Diff line number Diff line change
@@ -255,6 +255,12 @@
<groupId>org.apache.hbase</groupId>
<artifactId>hbase-common</artifactId>
</dependency>
<dependency>
<groupId>org.apache.hbase</groupId>
<artifactId>hbase-client</artifactId>
<type>test-jar</type>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.hbase</groupId>
<artifactId>hbase-http</artifactId>
Original file line number Diff line number Diff line change
@@ -17,11 +17,8 @@
*/
package org.apache.hadoop.hbase.ipc;

import static org.apache.hadoop.hbase.trace.HBaseSemanticAttributes.RPC_METHOD_KEY;
import static org.apache.hadoop.hbase.trace.HBaseSemanticAttributes.RPC_SERVICE_KEY;
import io.opentelemetry.api.trace.Span;
import io.opentelemetry.api.trace.StatusCode;
import io.opentelemetry.context.Context;
import io.opentelemetry.context.Scope;
import java.net.InetSocketAddress;
import java.nio.channels.ClosedChannelException;
@@ -32,6 +29,7 @@
import org.apache.hadoop.hbase.exceptions.TimeoutIOException;
import org.apache.hadoop.hbase.monitoring.MonitoredRPCHandler;
import org.apache.hadoop.hbase.security.User;
import org.apache.hadoop.hbase.server.trace.IpcServerSpanBuilder;
import org.apache.hadoop.hbase.trace.TraceUtil;
import org.apache.hadoop.hbase.util.EnvironmentEdgeManager;
import org.apache.hadoop.hbase.util.Pair;
@@ -90,14 +88,6 @@ private void cleanup() {
this.rpcServer = null;
}

private String getServiceName() {
return call.getService() != null ? call.getService().getDescriptorForType().getName() : "";
}

private String getMethodName() {
return call.getMethod() != null ? call.getMethod().getName() : "";
}

public void run() {
try {
if (call.disconnectSince() >= 0) {
@@ -122,12 +112,7 @@ public void run() {
String error = null;
Pair<Message, CellScanner> resultPair = null;
RpcServer.CurCall.set(call);
String serviceName = getServiceName();
String methodName = getMethodName();
Span span = TraceUtil.getGlobalTracer().spanBuilder("RpcServer.callMethod")
.setParent(Context.current().with(((ServerCall<?>) call).getSpan())).startSpan()
.setAttribute(RPC_SERVICE_KEY, serviceName)
.setAttribute(RPC_METHOD_KEY, methodName);
Span span = new IpcServerSpanBuilder(call).build();
try (Scope traceScope = span.makeCurrent()) {
if (!this.rpcServer.isStarted()) {
InetSocketAddress address = rpcServer.getListenerAddress();
Loading