Commit Graph

13159 Commits

Author SHA1 Message Date
dvdreddy a8fd1119ce HBASE-16630 Handle Fragmentation in bucket cache
Currently whenever a compaction/bulkload happen and the
blocks are evicted from theirs buckets the buckets become
fragmented and are not available to be used by other
BucketSizes

Bug Fix : Added Memory block type also to the list of
evictions that need to happen when there is a needForExtra

Improvement : Inorder to fix the non availabilty of Buckets and force
the movement of buckets to transformed sizes, whenever we encounter a
situation where an allocation cant be made for a BucketSize, we will
forcefully free the entire buckets that have least occupancy ratio. This
is the same strategy used by MemCached when they encounter a similar
issue going by the name 'Slab Calcification'. Only improvement is that
we use a heuristic to evict from the buckets that are least occupied
and also avoid the BucketSizes where there is a single Bucket

Change-Id: I9e3b4deb8d893953003ddf5f1e66312ed97ea9cb

Signed-off-by: Ramkrishna <ramkrishna.s.vasudevan@intel.com>
2017-02-24 15:02:07 +05:30
zhangduo 62de29e6f2 HBASE-16991 Make the initialization of AsyncConnection asynchronous 2017-02-24 15:36:54 +08:00
tedyu 371f2bd907 HBASE-17460 enable_table_replication can not perform cyclic replication of a table - addendum addresses Enis' comments 2017-02-23 21:10:44 -08:00
Abhishek Singh Chouhan c90d484f61 HBASE-17682 Region stuck in merging_new state indefinitely
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2017-02-23 15:30:17 -08:00
Michael Stack 4605aabe08 Add banner for hbasecon2017 2017-02-23 15:16:11 -08:00
Abhishek Singh Chouhan 0d656b1394 Amend HBASE-17069 RegionServer writes invalid META entries in some circumstances
Fix Hregioninfo being null during merge

Signed-off-by: Andrew Purtell <apurtell@apache.org>
2017-02-23 13:45:58 -08:00
zhangduo 8fb44fae35 HBASE-17595 Add partial result support for small/limited scan 2017-02-23 16:03:42 +08:00
anoopsamjohn ff045cab84 HBASE-17647 OffheapKeyValue#heapSize() implementation is wrong. 2017-02-23 11:29:10 +05:30
huzheng 335cde3415 HBASE-17672: "Grant should set access rights appropriately" test fails
Signed-off-by: tedyu <yuzhihong@gmail.com>
2017-02-22 20:08:12 -08:00
Sean Busbey 040b2f186a HBASE-17677 ServerName parsing from directory name should be more robust to errors from guava's HostAndPort
Signed-off-by: Michael Stack <stack@apache.org>
2017-02-22 20:53:57 -06:00
Jan Hentschel 0285cb8c4d HBASE-13882 Removed part of the RegionSplitPolicy section in HBase book
Signed-off-by: Michael Stack <stack@apache.org>
2017-02-22 16:14:13 -08:00
Jan Hentschel c7e605445a HBASE-9702 Changed unit tests to use method names for tables
Signed-off-by: Michael Stack <stack@apache.org>
2017-02-22 16:12:22 -08:00
Ashu Pachauri e4c06c120a HBASE-17590 Drop cache hint should work on store file write path (Ashu Pachauri)
Signed-off-by: Gary Helmling <garyh@apache.org>
2017-02-22 12:39:10 -08:00
zhangduo f037f230fd HBASE-17608 Add suspend support for RawScanResultConsumer 2017-02-22 20:32:03 +08:00
Yu Li 93e60153b0 HBASE-17676 Get class name once for all in AbstractFSWAL 2017-02-22 15:50:09 +08:00
tedyu c579cf67b0 HBASE-17657 TestZKAsyncRegistry is flaky 2017-02-21 21:17:15 -08:00
Phil Yang a0da66dc36 HBASE-17210 Set timeout on trying rowlock according to client's RPC timeout 2017-02-22 11:09:55 +08:00
rgidwani 3c0750de54 HBASE-17675 ReplicationEndpoint should choose new sinks if a SaslException occurs
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2017-02-21 18:44:54 -08:00
Sean Busbey d7ffa0013b HBASE-15328 sanity check the redirect used to send master info requests to the embedded regionserver.
Signed-off-by: Esteban Gutierrez <esteban@apache.org>
2017-02-20 22:03:17 -06:00
huzheng 22fa1cd3df HBASE-17472: Correct the semantic of permission grant
Signed-off-by: zhangduo <zhangduo@apache.org>
2017-02-20 20:13:43 +08:00
ChiaPing Tsai d08bafad1a HBASE-17661 fix the queue length passed to FastPathBalancedQueueRpcExecutor
Signed-off-by: tedyu <yuzhihong@gmail.com>
2017-02-19 13:25:32 -08:00
Sean Busbey 350904e90f HBASE-17561 table status page should escape values that may contain arbitrary characters.
Signed-off-by: Esteban Gutierrez <esteban@apache.org>
2017-02-18 15:46:18 -06:00
tedyu 0e05537dec HBASE-17460 enable_table_replication can not perform cyclic replication of a table (NITIN VERMA) 2017-02-17 17:56:53 -08:00
Michael Stack b392de3e31 HBASE-17653 HBASE-17624 rsgroup synchronizations will (distributed) deadlock
This patch restores the regime instituted in original rsgroups patch
(HBASE-6721) where reading of rsgroup state runs unimpeded against
COW immutable Maps whereas mutation to state require exclusive locks
(updating the Maps of state when done). HBASE-17624 was
over-enthusiastic with its locking down of access making it likely
we'd deadlock.

Adds documentation on concurrency expectations.
2017-02-17 14:45:56 -08:00
Huaxiang Sun d7325185ad HBASE-17172 Optimize major mob compaction with _del files
Signed-off-by: tedyu <yuzhihong@gmail.com>
2017-02-17 14:22:31 -08:00
Tim Brown 938aef772d HBASE-17658 Fix bookkeeping error with max regions for a table
Signed-off-by: tedyu <yuzhihong@gmail.com>
2017-02-17 07:40:16 -08:00
Yi Liang a2d2196e89 HBASE-17648: HBase Table-level synchronization fails between two secured(kerberized) cluster
Signed-off-by: tedyu <yuzhihong@gmail.com>
2017-02-17 07:03:53 -08:00
anoopsamjohn 7763dd6688 HBASE-17644 Always create ByteBufferCells after copying to MSLAB. 2017-02-17 17:50:41 +05:30
tedyu 3fc2889f7a HBASE-17460 enable_table_replication can not perform cyclic replication of a table - revert due to reproducible test failure 2017-02-16 20:17:17 -08:00
Jingcheng Du f4202a1205 HBASE-17421 Update refguide w.r.t. MOB Sweeper 2017-02-17 10:14:06 +08:00
huzheng e129e6b65d HBASE-17619: Add async admin Impl which connect to RegionServer and implement close region methods.
Signed-off-by: zhangduo <zhangduo@apache.org>
2017-02-17 09:32:45 +08:00
Michael Stack ae840c0ccd HBASE-17656 Move new Address class from util to net package 2017-02-16 12:17:50 -08:00
Abhishek Singh Chouhan 0446ed0f0c HBASE-17069 RegionServer writes invalid META entries for split daughters in some circumstances
Signed-off-by: zhangduo <zhangduo@apache.org>
2017-02-16 15:27:44 +08:00
Ashu Pachauri d2c083d21c HBASE-17627 Active workers metric for thrift (Ashu Pachauri)
Signed-off-by: Gary Helmling <garyh@apache.org>
2017-02-15 14:50:19 -08:00
tedyu de23d306eb HBASE-17649 REST API for scan should return 410 when table is disabled 2017-02-15 07:50:57 -08:00
Huaxiang Sun 33e9a8c775 HBASE-17640 Unittest error in TestMobCompactor with different timezone (Huaxiang Sun)
Signed-off-by: Jingcheng Du <jingchengdu@apache.org>
2017-02-15 11:23:04 +08:00
zhangduo c8f3c8630b HBASE-17583 Add inclusive/exclusive support for startRow and endRow of scan for sync client 2017-02-15 10:18:41 +08:00
Michael Stack e019961150 HBASE-17624 Address late review of HBASE-6721, rsgroups feature
Addresses review comments by Sean Busbey and Appy that happened
to come in long after the commit of HBASE-6721, the original
rsgroup issue.

Also includes subsequent accommodation of Duo Zhang review.

Adds a new type to hold hostname and port. It is called
Address. It is a facade over Guava's HostAndPort. Replace
all instances of HostAndPort with Address. In particular,
those places where HostAndPort was part of the rsgroup
public API.

Fix licenses. Add audience annotations.

Cleanup and note concurrency expectation on a few core classes.
In particular, all access on RSGroupInfoManager is made
synchronized.

M hbase-client/src/main/java/org/apache/hadoop/hbase/ServerName.java
 Host the hostname and port in an instance of the new type Address.
 Add a bunch of deprecation of exotic string parses that should never
 have been public.

M hbase-rsgroup/src/main/java/org/apache/hadoop/hbase/rsgroup/RSGroupAdmin.java
 Make this an Interface rather than abstract class. Creation was a
 static internal method that only chose one type.... Let it be free
 as a true Interface instead.
2017-02-14 09:29:17 -08:00
Phil Yang b2217d1d8f HBASE-17639 Do not stop server if ReplicationSourceManager's waitUntilCanBePushed throws InterruptedException 2017-02-14 17:46:13 +08:00
Sean Busbey 024ae356ac HBASE-17558 ZK dumping jsp should escape HTML.
Signed-off-by: Enis Soztutar <enis@apache.org>
2017-02-13 23:37:59 -05:00
Andrew Purtell 915928287f HBASE-17637 Update progress more frequently in IntegrationTestBigLinkedList.Generator.persist 2017-02-13 15:04:15 -08:00
Jan Hentschel 55c2e2d484 HBASE-9702 Changed unit tests to use method names for tables 2017-02-13 13:27:55 -08:00
Gary Helmling 3fe5102506 HBASE-17611 Thrift2 per-call latency metrics are capped at ~2 seconds 2017-02-13 10:16:36 -08:00
tedyu 539f97c020 HBASE-17603 REST API for scan should return 404 when table does not exist 2017-02-13 08:40:49 -08:00
Yu Li d40bca4365 HBASE-17638 Remove duplicated initialization of CacheConfig in HRegionServer 2017-02-13 23:23:10 +08:00
Apekshit Sharma 826b9436fb HBASE-17605 Changes
- Moved locks out of MasterProcedureScheduler#Queue. One Queue object is used for each namespace/table, which aren't more than 100. So we don't need complexity arising from all functionalities being in one place. SchemaLocking now owns locks and locking implementaion has been moved to procedure2 package.
- Removed NamespaceQueue because it wasn't being used as Queue (add,peek,poll,etc functions threw UnsupportedOperationException). It's was only used for locks on namespaces. Now that locks have been moved out of Queue class, it's not needed anymore.
- Remoed RegionEvent which was there only for locking on regions. Tables/namespaces used locking from Queue class and regions couldn't (there are no separate proc queue at region level), hence the redundance. Now that locking is separate, we can use the same for regions too.
- Removed QueueInterface class. No declarations, except one implementaion, which makes the point of having an interface moot.
- Removed QueueImpl, which was the only concrete implementation of abstract Queue class. Moved functions to Queue class itself to avoid unnecessary level in inheritance hierarchy.
- Removed ProcedureEventQueue class which was just a wrapper around ArrayDeque class. But we now have ProcedureWaitQueue as 'Type class'.
- Encapsulated table priority related stuff in a single class.
- Removed some unused functions.
Change-Id: I6a60424cb41e280bc111703053aa179d9071ba17
2017-02-11 14:31:43 -08:00
tedyu a05abd83ef HBASE-17628 Local mode of mini cluster shouldn't use hdfs (Devaraj Das) 2017-02-10 17:52:33 -08:00
tedyu d51e287877 HBASE-17460 enable_table_replication can not perform cyclic replication of a table (NITIN VERMA) 2017-02-10 14:54:05 -08:00
Esteban Gutierrez 054acec840 HBASE-17622 Add hbase-metrics package to TableMapReduceUtil 2017-02-10 09:32:50 -08:00
Jingcheng Du 9d5d25c88d HBASE-17618 Refactor the implementation of modify table and delete column in MOB 2017-02-10 21:26:53 +08:00