Skip to content

Add tool to identify tablets that need compaction#3650

Open
tom-vt4 wants to merge 11 commits into
integrationfrom
task/tabletExtentTool
Open

Add tool to identify tablets that need compaction#3650
tom-vt4 wants to merge 11 commits into
integrationfrom
task/tabletExtentTool

Conversation

@tom-vt4

@tom-vt4 tom-vt4 commented Jul 1, 2026

Copy link
Copy Markdown
Collaborator

Add a utility tool that is able to identify tablets that need compaction. This tool is hosted in the project check-tablet-extents and can be built as an executable JAR.

Closes #3581

@tom-vt4
tom-vt4 requested review from ivakegg and lbschanno July 1, 2026 00:06
@ivakegg

ivakegg commented Jul 1, 2026

Copy link
Copy Markdown
Collaborator

In general this looks really good. I only had one comment in there. For extra credit I would like for this tool to optionally (based on a parameter) actually kick off the compactions.

@tom-vt4
tom-vt4 force-pushed the task/tabletExtentTool branch from b2efc96 to 8558761 Compare July 6, 2026 16:11
tom-vt4 added 2 commits July 6, 2026 12:13
Add a utility tool that is able to identify tablets that need
compaction. This tool is hosted in the project check-tablet-extents and
can be built as an executable JAR.

Closes #3581
@lbschanno
lbschanno force-pushed the task/tabletExtentTool branch from 8558761 to a7686ad Compare July 6, 2026 16:13
@tom-vt4
tom-vt4 requested a review from ivakegg July 6, 2026 16:17
tom-vt4 added 2 commits July 6, 2026 18:50
-Add main method back to allow usage of the tool with java -cp
-Update README for usage of tool with accumulo command
-Fix dependency issues
Comment thread contrib/datawave-utils/check-tablet-extents/README.md Outdated
tom-vt4 added 2 commits July 8, 2026 17:43
-Replace AccumuloClient usage with ServerContext
-Test class requires refactoring for ServerContext
-Removed create-shade-jar profile to use regular jar
-Use ClientContext instead of ServerContext to allow test suite to
create MiniAccumuloCluster for testing
-Refactor original checkTablets() to findCompactableTablets() to handle
extent tracking
-Add new checkTablets() method to handle tool output and parameter based
compaction
-Update documentation
-Update error logging
Comment thread contrib/datawave-utils/check-tablet-extents/pom.xml Outdated
Comment thread contrib/datawave-utils/check-tablet-extents/pom.xml Outdated
Comment thread contrib/datawave-utils/check-tablet-extents/pom.xml Outdated
Comment thread contrib/datawave-utils/check-tablet-extents/pom.xml Outdated
Comment thread contrib/datawave-utils/check-tablet-extents/pom.xml Outdated
Comment thread contrib/datawave-utils/check-tablet-extents/pom.xml
Comment thread contrib/datawave-utils/check-tablet-extents/pom.xml Outdated
Comment thread contrib/datawave-utils/check-tablet-extents/pom.xml Outdated
@lbschanno

Copy link
Copy Markdown
Collaborator

Overall looks pretty good. Made a couple suggestions.

-This parameter isn't required if accumulo.properties is on classpath
-Debug parameter controls tablet extent logging
-Removed redundant dependencies in pom.xml
@tom-vt4
tom-vt4 requested a review from lbschanno July 14, 2026 15:06
@tom-vt4
tom-vt4 requested review from dlmarion and ivakegg July 16, 2026 05:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Need to identify tablets requiring forced compactions

4 participants