[ 
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)

Reply via email to