[ 
https://issues.apache.org/jira/browse/HADOOP-2139?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jim Kellerman updated HADOOP-2139:
----------------------------------

    Attachment: patch.txt

There are a lot of changes in this patch. The memcache has been changed from a 
per/region object to a per/column object, and HLocking has been removed since 
we do not have to maintain any locks across RPC calls. 

This necessitated major changes to HRegion and HStore

Additionally there were many changes required to the unit tests since they tend 
to exploit some private interfaces that weren't designed to be public. Some of 
those interfaces changed so the test cases did as well.

This patch is the result of extensive analysis of the multiple threads in HBase 
that contend for shared resources: updates, reads, scanners, cache flushing, 
compaction and region splitting.

Many of the tests are timing sensitive, and since we tend to make "dormant" 
intervals as short as possible to speed up the Hudson build, we may go through 
several iterations of getting them right before Hudson is happy. This is 
especially true since two test cases failed on my dual cpu windows machine 
while running the tests under Ant, but ran fine under Eclipse.

However, now that the tests are passing locally, I believe the changes are 
doing the right thing, but may require some parameter tweaks.

> [hbase] Increase parallelism in region servers
> ----------------------------------------------
>
>                 Key: HADOOP-2139
>                 URL: https://issues.apache.org/jira/browse/HADOOP-2139
>             Project: Hadoop
>          Issue Type: Improvement
>          Components: contrib/hbase
>    Affects Versions: 0.16.0
>            Reporter: Jim Kellerman
>            Assignee: Jim Kellerman
>             Fix For: 0.16.0
>
>         Attachments: locking.xls, operation-compatibility.jpg, patch.txt
>
>
> There are a number of paths in the region server which block against one 
> another including:
> - log rolling
> - cache flushes
> - region splitting
> - updates
> - scanners
> Investigate which can proceed in parallel and mechanisms for making some 
> operations that currently do not run in parallel.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to