Skip to content

Backport "HBASE-30058 Eliminate unnecessary connection creation in snapshot operations (#8030)" to branch-2.6#8314

Merged
junegunn merged 1 commit into
apache:branch-2.6from
junegunn:HBASE-30058-branch-2.6
Jun 6, 2026
Merged

Backport "HBASE-30058 Eliminate unnecessary connection creation in snapshot operations (#8030)" to branch-2.6#8314
junegunn merged 1 commit into
apache:branch-2.6from
junegunn:HBASE-30058-branch-2.6

Conversation

@junegunn
Copy link
Copy Markdown
Member

@junegunn junegunn commented Jun 5, 2026

No description provided.

…rations (apache#8030)

Each snapshot operation created two short-lived connections in
SnapshotDescriptionUtils.validate() — one for isSecurityAvailable()
to check hbase:acl table existence, and another in
writeAclToSnapshotDescription() to read ACL data. In Kerberos
environments with ZKConnectionRegistry, each connection triggered
a new ZK session with GSSAPI authentication and a TGS request to
the KDC, causing excessive KDC load during batch snapshot operations.

This patch reuses the caller's existing connection instead of
creating new ones:

- isSecurityAvailable() now accepts a Connection parameter
- writeAclToSnapshotDescription() passes the shared connection's
  Table to PermissionStorage.getTablePermissions()
- All callers (MasterRpcServices, RestoreSnapshotProcedure,
  CloneSnapshotProcedure) pass through their available connection

The original validate(SnapshotDescription, Configuration) and
isSecurityAvailable(Configuration) signatures are preserved as
overloads that delegate to the new Connection-based methods, so
existing callers (including tests) keep working unchanged. The
new Connection-based overloads are documented as preferred for
callers that already hold a Connection, to avoid the per-call
connection setup cost.

Co-authored-by: juke-mini666 <juke.mini666@kakaocorp.com>

Signed-off-by: Junegunn Choi <junegunn@apache.org>
@junegunn junegunn added the backport This PR is a back port of some issue or issues already committed to master label Jun 5, 2026
@junegunn junegunn merged commit d073b2b into apache:branch-2.6 Jun 6, 2026
39 of 45 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backport This PR is a back port of some issue or issues already committed to master

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants