[
https://issues.apache.org/jira/browse/HBASE-18133?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16381334#comment-16381334
]
Hudson commented on HBASE-18133:
--------------------------------
FAILURE: Integrated in Jenkins build HBase-Trunk_matrix #4667 (See
[https://builds.apache.org/job/HBase-Trunk_matrix/4667/])
HBASE-18133 Decrease quota reaction latency by HBase (elserj: rev
bdedcc5631fa9c8c400d4daa01b8a1947d4a12dd)
* (edit)
hbase-server/src/main/java/org/apache/hadoop/hbase/quotas/RegionServerSpaceQuotaManager.java
* (add)
hbase-server/src/main/java/org/apache/hadoop/hbase/quotas/RegionSize.java
* (add)
hbase-server/src/main/java/org/apache/hadoop/hbase/quotas/RegionSizeImpl.java
* (add)
hbase-server/src/main/java/org/apache/hadoop/hbase/quotas/RegionSizeStoreFactory.java
* (edit)
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RSRpcServices.java
* (edit)
hbase-server/src/main/java/org/apache/hadoop/hbase/quotas/policies/MissingSnapshotViolationPolicyEnforcement.java
* (edit)
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java
* (add)
hbase-hadoop2-compat/src/main/resources/META-INF/services/org.apache.hadoop.hbase.regionserver.MetricsRegionServerQuotaSource
* (edit)
hbase-server/src/main/java/org/apache/hadoop/hbase/quotas/policies/DefaultViolationPolicyEnforcement.java
* (edit)
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RegionServerServices.java
* (edit)
hbase-server/src/test/java/org/apache/hadoop/hbase/quotas/SpaceQuotaHelperForTests.java
* (add)
hbase-hadoop2-compat/src/main/java/org/apache/hadoop/hbase/regionserver/MetricsRegionServerQuotaSourceImpl.java
* (edit)
hbase-server/src/main/java/org/apache/hadoop/hbase/quotas/policies/AbstractViolationPolicyEnforcement.java
* (add)
hbase-server/src/test/java/org/apache/hadoop/hbase/quotas/TestRegionSizeImpl.java
* (edit)
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java
* (edit)
hbase-server/src/test/java/org/apache/hadoop/hbase/MockRegionServerServices.java
* (edit)
hbase-hadoop-compat/src/main/java/org/apache/hadoop/hbase/regionserver/MetricsRegionServerQuotaSource.java
* (edit)
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestRegionServerRegionSpaceUseReport.java
* (add)
hbase-server/src/main/java/org/apache/hadoop/hbase/quotas/NoOpRegionSizeStore.java
* (add)
hbase-server/src/test/java/org/apache/hadoop/hbase/quotas/TestLowLatencySpaceQuotas.java
* (edit)
hbase-server/src/test/java/org/apache/hadoop/hbase/quotas/TestQuotaObserverChoreRegionReports.java
* (add)
hbase-server/src/test/java/org/apache/hadoop/hbase/quotas/TestRegionSizeStoreImpl.java
* (edit)
hbase-server/src/test/java/org/apache/hadoop/hbase/quotas/TestSpaceQuotas.java
* (edit)
hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestHStore.java
* (add)
hbase-server/src/main/java/org/apache/hadoop/hbase/quotas/RegionSizeStore.java
* (edit)
hbase-server/src/main/java/org/apache/hadoop/hbase/quotas/SpaceViolationPolicyEnforcement.java
* (edit)
hbase-server/src/test/java/org/apache/hadoop/hbase/quotas/TestFileSystemUtilizationChore.java
* (add)
hbase-server/src/main/java/org/apache/hadoop/hbase/quotas/RegionSizeStoreImpl.java
* (edit)
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/MetricsRegionServer.java
* (edit)
hbase-server/src/main/java/org/apache/hadoop/hbase/quotas/FileSystemUtilizationChore.java
* (add)
hbase-server/src/main/java/org/apache/hadoop/hbase/quotas/RegionSizeReportingChore.java
* (edit)
hbase-server/src/test/java/org/apache/hadoop/hbase/quotas/policies/TestBulkLoadCheckingViolationPolicyEnforcement.java
* (edit)
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HStore.java
* (edit)
hbase-server/src/test/java/org/apache/hadoop/hbase/master/MockRegionServer.java
* (add)
hbase-server/src/test/java/org/apache/hadoop/hbase/quotas/TestRegionSizeReportingChore.java
> Low-latency space quota size reports
> ------------------------------------
>
> Key: HBASE-18133
> URL: https://issues.apache.org/jira/browse/HBASE-18133
> Project: HBase
> Issue Type: Improvement
> Reporter: Josh Elser
> Assignee: Josh Elser
> Priority: Major
> Fix For: 3.0.0
>
> Attachments: HBASE-18133.001.patch, HBASE-18133.002.patch,
> HBASE-18133.003.patch, HBASE-18133.004.patch, HBASE-18133.005.patch,
> HBASE-18133.006.patch, HBASE-18133.007.patch, HBASE-18133.008.patch,
> HBASE-18133.009.patch
>
>
> Presently space quota enforcement relies on RegionServers sending reports to
> the master about each Region that they host. This is done by periodically,
> reading the cached size of each HFile in each Region (which was ultimately
> computed from HDFS).
> This means that the Master is unaware of Region size growth until the the
> next time this chore in a RegionServer fires which is a fair amount of
> latency (a few minutes, by default). Operations like flushes, compactions,
> and bulk-loads are delayed even though the RegionServer is running those
> operations locally.
> Instead, we can create an API which these operations could invoke that would
> automatically update the size of the Region being operated on. For example, a
> successful flush can report that the size of a Region increased by the size
> of the flush. A compaction can subtract the size of the input files of the
> compaction and add in the size of the resulting file.
> This de-couples the computation of a Region's size from sending the Region
> sizes to the Master, allowing us to send reports more frequently, increasing
> the responsiveness of the cluster to size changes.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)