You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@phoenix.apache.org by ra...@apache.org on 2016/09/13 12:58:55 UTC
phoenix git commit: PHOENIX-3170 Remove the futuretask from the list
if StaleRegionBoundaryCacheException is thrown while initializing the
scanners(Rajeshbabu)-fixing wrong commit changes.
Repository: phoenix
Updated Branches:
refs/heads/4.8-HBase-1.2 b6bac8149 -> babec5707
PHOENIX-3170 Remove the futuretask from the list if StaleRegionBoundaryCacheException is thrown while initializing the scanners(Rajeshbabu)-fixing wrong commit changes.
Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo
Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/babec570
Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/babec570
Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/babec570
Branch: refs/heads/4.8-HBase-1.2
Commit: babec570739c62098ed82e8fd018aefc7adbfe69
Parents: b6bac81
Author: Rajeshbabu Chintaguntla <ra...@apache.org>
Authored: Tue Sep 13 18:37:07 2016 +0530
Committer: Rajeshbabu Chintaguntla <ra...@apache.org>
Committed: Tue Sep 13 18:37:07 2016 +0530
----------------------------------------------------------------------
.../UngroupedAggregateRegionObserver.java | 40 +-------------------
1 file changed, 1 insertion(+), 39 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/phoenix/blob/babec570/phoenix-core/src/main/java/org/apache/phoenix/coprocessor/UngroupedAggregateRegionObserver.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/main/java/org/apache/phoenix/coprocessor/UngroupedAggregateRegionObserver.java b/phoenix-core/src/main/java/org/apache/phoenix/coprocessor/UngroupedAggregateRegionObserver.java
index c3fa40f..a7c6fde 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/coprocessor/UngroupedAggregateRegionObserver.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/coprocessor/UngroupedAggregateRegionObserver.java
@@ -202,40 +202,7 @@ public class UngroupedAggregateRegionObserver extends BaseScannerRegionObserver
}
// TODO: should we use the one that is all or none?
logger.debug("Committing bactch of " + mutations.size() + " mutations for " + region.getRegionInfo().getTable().getNameAsString());
- try {
- region.batchMutate(mutations.toArray(mutationArray), HConstants.NO_NONCE, HConstants.NO_NONCE);
- } catch (RegionTooBusyException rtbe) {
- // When memstore size reaches blockingMemstoreSize we are waiting 3 seconds for the
- // flush happen which decrease the memstore size and then writes allowed on the region.
- for (int i = 0; region.getMemstoreSize() > blockingMemstoreSize && i < 30; i++) {
- try {
- checkForRegionClosing();
- Thread.sleep(100);
- } catch (InterruptedException e) {
- Thread.currentThread().interrupt();
- throw new IOException(e);
- }
- }
- if (region.getMemstoreSize() > blockingMemstoreSize) {
- throw rtbe;
- }
- region.batchMutate(mutationArray, HConstants.NO_NONCE, HConstants.NO_NONCE);
- }
- }
-
- /**
- * There is a chance that region might be closing while running balancer/move/merge. In this
- * case if the memstore size reaches blockingMemstoreSize better to fail query because there is
- * a high chance that flush might not proceed and memstore won't be freed up.
- * @throws IOException
- */
- private void checkForRegionClosing() throws IOException {
- synchronized (lock) {
- if(isRegionClosing) {
- lock.notifyAll();
- throw new IOException("Region is getting closed. Not allowing to write to avoid possible deadlock.");
- }
- }
+ region.batchMutate(mutations.toArray(mutationArray), HConstants.NO_NONCE, HConstants.NO_NONCE);
}
/**
@@ -381,15 +348,10 @@ public class UngroupedAggregateRegionObserver extends BaseScannerRegionObserver
}
/**
-<<<<<<< HEAD
- * Upper bound of memstore size allowed for region. Updates will be blocked until the flush
- * happen if the memstore reaches this threshold.
-=======
* Slow down the writes if the memstore size more than
* (hbase.hregion.memstore.block.multiplier - 1) times hbase.hregion.memstore.flush.size
* bytes. This avoids flush storm to hdfs for cases like index building where reads and
* write happen to all the table regions in the server.
->>>>>>> 15d35e25b554fb35cc0b0f676f34176dbe5d384c
*/
final long blockingMemStoreSize = flushSize * (
conf.getLong(HConstants.HREGION_MEMSTORE_BLOCK_MULTIPLIER,