2432 Commits

Author SHA1 Message Date
Bryan Beaudreault
91cb3028c4
HBASE-26783 ScannerCallable doubly clears meta cache on retries (#4147)
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2022-03-09 12:02:51 -08:00
Andrew Purtell
300f9b9576 HBASE-26582 Prune use of Random and SecureRandom objects (#4118)
Avoid the pattern where a Random object is allocated, used once or twice, and
then left for GC. This pattern triggers warnings from some static analysis tools
because this pattern leads to poor effective randomness. In a few cases we were
legitimately suffering from this issue; in others a change is still good to
reduce noise in analysis results.

Use ThreadLocalRandom where there is no requirement to set the seed to gain
good reuse.

Where useful relax use of SecureRandom to simply Random or ThreadLocalRandom,
which are unlikely to block if the system entropy pool is low, if we don't need
crypographically strong randomness for the use case. The exception to this is
normalization of use of Bytes#random to fill byte arrays with randomness.
Because Bytes#random may be used to generate key material it must be backed by
SecureRandom.

Signed-off-by: Duo Zhang <zhangduo@apache.org>
2022-03-08 15:22:00 -08:00
Bryan Beaudreault
98836fb2b4
HBASE-26784 Addendum: Close scanner request should properly inherit original timeout and priority (#4183)
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2022-03-08 11:40:39 -08:00
Bryan Beaudreault
5bae04e20c
HBASE-26784 Use HIGH_QOS for ResultScanner.close requests (#4163)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Andrew Purtell <apurtell@apache.org>
Signed-off-by: Xiaolin Ha <haxiaolin@apache.org>
2022-03-08 10:50:00 +08:00
Nick Dimiduk
01acd870b7 HBASE-26759 Fix trace continuity through CallRunner (#4126)
Signed-off-by: Andrew Purtell <apurtell@apache.org>
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2022-03-04 15:26:48 -08:00
Duo Zhang
4644efb9f3
HBASE-26691 Replacing log4j with reload4j for branch-2.x (#4050)
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2022-03-04 12:06:34 -08:00
Nick Dimiduk
87ce5755cd
HBASE-26764 Implement generic exception support for TraceUtil methods over Callables and Runnables
For the `TraceUtil` methods that accept `Callable` and `Runnable` types, make them generic over a
child of `Throwable`. This allows us to consolidate the two method signatures into a single more
flexible definition.

Signed-off-by: Duo Zhang <zhangduo@apache.org>
2022-03-04 09:19:03 +01:00
Niels Basjes
c5f63550b7 HBASE-26762 Un-Deprecate and improve documentation for Scan#setRowPrefixFilter (#4119)
Signed-off-by: Andrew Purtell <apurtell@apache.org>
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2022-03-02 23:34:17 +08:00
Nick Dimiduk
82282a9f95 HBASE-26765 Minor refactor of async scanning code (#4121)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2022-02-24 19:07:59 +01:00
Andrew Purtell
3e84e50107
HBASE-26730 Extend hbase shell 'status' command to support an option 'tasks' (#4094)
Signed-off-by: Geoffrey Jacoby <gjacoby@apache.org>
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2022-02-15 18:38:25 -08:00
Yutong Xiao
1bee6046f0 HBASE-26688 Threads shared EMPTY_RESULT may lead to unexpected client job down (#4073)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2022-02-15 20:30:55 +08:00
Nick Dimiduk
d242c8fafa HBASE-26521 Name RPC spans as $package.$service/$method (#4024)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2022-02-10 12:57:45 +01:00
Nick Dimiduk
94e126fecb HBASE-26472 Adhere to semantic conventions regarding table data operations (addendum)
Ensure table data operations emit one and only one span.
2022-02-01 11:45:25 -08:00
Nick Dimiduk
5e01534494
HBASE-26473 Introduce db.hbase.container_operations span attribute
For batch operations, collect and annotate the associated span with the set of all operations
contained in the batch.

Signed-off-by: Duo Zhang <zhangduo@apache.org>
2022-01-31 16:54:01 -08:00
Duo Zhang
dffeb8e63e
HBASE-26587 Introduce a new Admin API to change SFT implementation (#4030) (#4080)
Signed-off-by: Wellington Ramos Chevreuil <wchevreuil@apache.org>
Reviewed-by: Josh Elser <elserj@apache.org>
2022-01-30 20:43:23 +08:00
Bryan Beaudreault
76eb1b091d
HBASE-26713 Default to LATEST_TIMESTAMP if no timestamp sent along on Increment/Append (#4075)
Signed-off-by: Andrew Purtell <apurtell@apache.org>
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2022-01-28 12:55:51 -08:00
Duo Zhang
836f9be0cf Revert "HBASE-26473 Introduce db.hbase.container_operations span attribute"
This reverts commit 47487074990fb76566211386768e47ad2a7efcf3.
2022-01-28 21:33:13 +08:00
Nick Dimiduk
4748707499 HBASE-26473 Introduce db.hbase.container_operations span attribute
For batch operations, collect and annotate the associated span with the set of all operations
contained in the batch.

Signed-off-by: Duo Zhang <zhangduo@apache.org>
2022-01-27 08:15:20 -08:00
Duo Zhang
0ca2307b77 Revert "HBASE-26688 Threads shared EMPTY_RESULT may lead to unexpected client job down. (#4048)"
This reverts commit 087bb1342a14b20b0785a33a563563bfc66fcce8.
2022-01-26 13:39:58 +08:00
Yutong Xiao
087bb1342a HBASE-26688 Threads shared EMPTY_RESULT may lead to unexpected client job down. (#4048)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2022-01-25 15:03:28 +08:00
Nick Dimiduk
26d768243b HBASE-26474 Implement connection-level attributes (addendum)
Addressing additional comments raised in branch-2 backport PR #4014
2022-01-24 14:19:50 -08:00
Nick Dimiduk
c2b4ccdc1d HBASE-26520 Remove use of db.hbase.namespance tracing attribute (#4015)
The HBase-specific attribute `db.hbase.namespace` has been deprecated in favor of the generic
`db.name`. See also https://github.com/open-telemetry/opentelemetry-specification/issues/1760

Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Tak Lon (Stephen) Wu <taklwu@apache.org>
2022-01-19 10:20:02 -08:00
Nick Dimiduk
d4f2b66a43
HBASE-26474 Implement connection-level attributes (#4014)
Add support for `db.system`, `db.connection_string`, `db.user`.

Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Huaxiang Sun <huaxiangsun@apache.org>
Co-authored-by: Josh Elser <josh.elser@gmail.com>
2022-01-18 12:29:35 -08:00
huaxiangsun
c897ce904a
HBASE-26590 Hbase-client Meta lookup performance regression between hbase-1 and hbase-2 (#4008)
Change scan caching back to 1 to avoid extra work at Region Server side. For most cases, the extra 4 results
fetched are wasted at the client side.

Signed-off-by: Duo Zhang <zhangduo@apache.org>
2022-01-06 10:31:21 -08:00
BukrosSzabolcs
53285d8e2a HBASE-26286: Add support for specifying store file tracker when restoring or cloning snapshot
Closes #3851

Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Josh Elser <elserj@apache.org>
2022-01-04 22:58:03 +08:00
GeorryHuang
c4325ff088 HBASE-26263 [Rolling Upgrading] Persist the StoreFileTracker configurations to TableDescriptor for existing tables (#3700)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
Reviewed-by: Wellington Ramos Chevreuil <wchevreuil@apache.org>
2022-01-04 22:58:03 +08:00
Wellington Ramos Chevreuil
26f263b792 HBASE-26246 Persist the StoreFileTracker configurations to TableDescriptor when creating table (#3666)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2022-01-04 22:58:03 +08:00
Nick Dimiduk
c7a8e428df
HBASE-26472 Adhere to semantic conventions regarding table data operations
Follows the guidance outlined in https://github.com/open-telemetry/opentelemetry-specification/blob/3e380e2/specification/trace/semantic_conventions/database.dm

* all table data operations are assumed to be of type CLIENT
* populate `db.name` and `db.operation` attributes
* name table data operation spans as `db.operation` `db.name`:`db.hbase.table`
  note: this implementation deviates from the recommended `db.name`.`db.sql.table` and instead
  uses HBase's native String representation of namespace:tablename.

Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Tak Lon (Stephen) Wu <taklwu@apache.org>
2021-12-14 15:55:53 -08:00
Bryan Beaudreault
ef48a6975d
HBASE-26537: Make HBASE-15676 backwards compatible, using a flag on the proto (#3931)
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2021-12-13 13:31:14 -08:00
Tak Lon (Stephen) Wu
bf6f94685c
HBASE-26530 Backport HBASE-26524 Support remove coprocessor by class name via alter table command (#3908)
Signed-off-by: Ankit Singhal <ankit@apache.org>
2021-12-10 10:12:30 -08:00
bsglz
26e37bcbfe
HBASE-26027 The calling of HTable.batch blocked at AsyncRequestFutureImpl.waitUntilDone caused by ArrayStoreException (#3925)
* HBASE-26027 The calling of HTable.batch blocked at AsyncRequestFutureImpl.waitUntilDone caused by ArrayStoreException
2021-12-10 14:34:17 +08:00
Andrew Purtell
b1bc5f3a5c Renumber to 2.6.0-SNAPSHOT after branching branch-2.5
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2021-12-08 16:54:32 -08:00
Yutong Xiao
b471d753d3 HBASE-26490 Add builder for class ReplicationLoadSink (#3883)
Signed-off-by: Reid Chan <reidchan@apache.org>
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2021-12-04 23:15:06 +08:00
Nick Dimiduk
d1c68a2d5c HBASE-26471 Move tracing semantic attributes to their own class (#3896)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Tak Lon (Stephen) Wu <taklwu@apache.org>
2021-12-01 13:24:08 -08:00
Duo Zhang
10584d70d2
HBASE-26306 Backport "HBASE-26220 Use P2P communicate between region servers to sync the list for bootstrap node" to branch-2 (#3727)
Signed-off-by: Yulin Niu <niuyulin@apache.org>
2021-10-10 22:56:12 +08:00
Duo Zhang
706082d513
HBASE-26294 Backport "HBASE-26181 Region server and master could use itself as ConnectionRegistry" to branch-2 (#3708)
Signed-off-by: Yulin Niu <niuyulin@apache.org>
2021-10-05 22:11:01 +08:00
Tak Lon (Stephen) Wu
d4d22f8da4
HBASE-26299 Fix TestHTableTracing.testTableClose for nightly build of branch-2 (#3703)
For unit testing in sync connection with OpenTelemetry tracing,
there is a race condition between ConnectionImplementation#finalize
(object GC) and the test method before Rule triggered by
OpenTelemetryRule.create. such that a error message of
`GlobalOpenTelemetry.set has already been called`.

This change fixed it test by moving up the TRACE_RULE creation
to class-level such that the GlobalOpenTelemetry is being set
and reuse it for all methods.

Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Wellington Chevreuil <wchevreuil@apache.org>
2021-09-28 09:26:07 -07:00
bitterfox
786e09a936 HBASE-26238 Short message by Result#compareResults for VerifyReplication to avoid OOME (#3647)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2021-09-28 23:16:20 +08:00
Tak Lon (Stephen) Wu
49ae675275
HBASE-26141 Add tracing support for HTable and sync connection on branch-2 (#3696)
* RPC and IPC tracing supported by HBASE-26125
* WAL tracing supported by HBASE-26131

Signed-off-by: Duo Zhang <zhangduo@apache.org>
2021-09-25 16:44:34 -07:00
Bryan Beaudreault
1664f52066 HBASE-26277: Fix InterfaceAudience for BalanceRequest$Builder and BalanceResponse$Builder
Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Josh Elser <elserj@apache.org>
2021-09-10 10:40:06 -04:00
Bryan Beaudreault
bb059019ac HBASE-26240 Set InterfaceAudience to Private for BalanceRequest$Builder (#3663)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Nick Dimiduk <ndimiduk@apache.org>
2021-09-09 12:16:32 -07:00
Bryan Beaudreault
e07928df4c HBASE-26147 Add a dry run mode to the balancer, where moves are calculated but not actually executed
Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Josh Elser <elserj@apache.org>

(Re-application of HBASE-26147 with the correct author metadata)
2021-09-01 21:58:30 -04:00
Josh Elser
1e74f08403 Revert "HBASE-26147 Add a dry run mode to the balancer, where moves are calculated but not actually executed"
This reverts commit 5b58d11c91cbbc2f73e4252088c97df12a49ff87.

I accidentally applied this as myself instead of as Bryan. Reverting it
to apply the patch properly.
2021-09-01 21:57:46 -04:00
Josh Elser
5b58d11c91 HBASE-26147 Add a dry run mode to the balancer, where moves are calculated but not actually executed
Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Josh Elser <elserj@apache.org
2021-09-01 21:47:53 -04:00
Tak Lon (Stephen) Wu
ab431fc8a9 HBASE-26140 Backport HBASE-25778 "The tracinig implementation for AsyncConnectionImpl.getHbck is incorrect" to branch-2 (#3631)
17/17 commits of HBASE-22120, original commit f36e1539648bbaee84c626fd54d1605baebf3c5a

Co-authored-by: Duo Zhang <zhangduo@apache.org>

Signed-off-by: Peter Somogyi <psomogyi@apache.org>
2021-09-01 15:29:09 -07:00
Tak Lon (Stephen) Wu
a2b8f7a3be HBASE-26134 Backport HBASE-25617 "Revisit the span names" to branch-2 (#3618)
11/17 commits of HBASE-22120, original commit 8d68f8cd1c8613be1b499eaa99f46806b2743294

Co-authored-by: Duo Zhang <zhangduo@apache.org>

Signed-off-by: Duo Zhang <zhangduo@apache.org>
2021-09-01 15:29:09 -07:00
Tak Lon (Stephen) Wu
d0a53e3f29 HBASE-26133 Backport HBASE-25591 "Upgrade opentelemetry to 0.17.1" to branch-2 (#3608)
10/17 commits of HBASE-22120, original commit f6ff519dd0c7fe0e3ae3c175eefee27a26a065a4

Co-authored-by: Duo Zhang <zhangduo@apache.org>

Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Peter Somogyi <psomogyi@apache.org>
2021-09-01 15:29:09 -07:00
Tak Lon (Stephen) Wu
8b7450f5d8 HBASE-26132 Backport HBASE-25535 "Set span kind to CLIENT in AbstractRpcClient" to branch-2 (#3607)
9/17 commits of HBASE-22120, original commit bb8c4967f8ce2c89ebaf1ddc5d8a1bf55f1e20d3

Co-authored-by: Duo Zhang <zhangduo@apache.org>

Signed-off-by: Duo Zhang <zhangduo@apache.org>
2021-09-01 15:29:09 -07:00
Tak Lon (Stephen) Wu
321dcd4e77 HBASE-26130 Backport HBASE-25455 "Add trace support for HRegion read/… (#3594)
7/17 commits of HBASE-22120, original commit 03e12bfa4ad62ecc6eee6a2c68d431bea2d5c473

Co-authored-by: Duo Zhang <zhangduo@apache.org>

Signed-off-by:  Duo Zhang <zhangduo@apache.org>
2021-09-01 15:29:09 -07:00
Tak Lon (Stephen) Wu
83a27389a0 HBASE-26129 Backport HBASE-25481 "Add host and port attribute when tracing rpc call at client side" to branch-2 (#3589)
6/17 commits of HBASE-22120, original commit ae2c62ffaad5ba4c976b0a79c10a365edf2844fd

Co-authored-by: Duo Zhang <zhangduo@apache.org>

Signed-off-by:  Peter Somogyi  <psomogyi@apache.org>
2021-09-01 15:29:09 -07:00