[
https://issues.apache.org/jira/browse/HBASE-22054?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16825480#comment-16825480
]
Sakthi commented on HBASE-22054:
--------------------------------
I have changed the check logic. Now, if a received user is null then we don't
even need to check for space quota violation and we can proceed with the
compaction under the assumption that it's a systemRequestedCompaction. Also
have added the superusers reloading in the RegionServer.
I re-ran all the above failed tests with the patch and they passed except
TestCompactionLifeCycleTracker#testSpaceQuotaViolation() which assumes that
compaction wouldn't happen with null user in case of space quota violation.
Hence I think this test can be ignored/removed completely. As of now have
@Ignored and have uploaded a patch to see what does the QA feel about the unit
tests.
Ping [~elserj] !
> Space Quota: Compaction is not working for super user in case of
> NO_WRITES_COMPACTIONS
> --------------------------------------------------------------------------------------
>
> Key: HBASE-22054
> URL: https://issues.apache.org/jira/browse/HBASE-22054
> Project: HBase
> Issue Type: Bug
> Reporter: Ajeet Rai
> Assignee: Sakthi
> Priority: Minor
> Labels: Quota, Space
> Attachments: hbase-22054.master.001.patch,
> hbase-22054.master.002.patch, hbase-22054.master.003.patch,
> hbase-22054.master.004.patch
>
>
> Space Quota: Compaction is not working for super user. Compaction command is
> issued successfully at client but actually compaction is not happening.
> In debug log below message is printed:
> as an active space quota violation policy disallows compaction.
> Reference:
>
> [https://lists.apache.org/thread.html/d09aa7abaacf1f0be9d59fa9260515ddc0c17ac0aba9cc0f2ac569bf@%3Cuser.hbase.apache.org%3E]
> Actually in requestCompactionInternal method of CompactSplit class ,there is
> no check for super user and compcations are disallowed
> {noformat}
> RegionServerSpaceQuotaManager spaceQuotaManager =
> this.server.getRegionServerSpaceQuotaManager();
> if (spaceQuotaManager != null &&
>
> spaceQuotaManager.areCompactionsDisabled(region.getTableDescriptor().getTableName()))
> {
> String reason = "Ignoring compaction request for " + region +
> " as an active space quota violation " + " policy disallows
> compactions.";
> tracker.notExecuted(store, reason);
> completeTracker.completed(store);
> LOG.debug(reason);
> return;
> }
> {noformat}
>
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)