[ 
https://issues.apache.org/jira/browse/HBASE-3229?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13091134#comment-13091134
 ] 

[email protected] commented on HBASE-3229:
------------------------------------------------------



bq.  On 2011-08-25 11:52:17, Ted Yu wrote:
bq.  > 
http://svn.apache.org/repos/asf/hbase/trunk/src/main/java/org/apache/hadoop/hbase/master/HMaster.java,
 line 968
bq.  > <https://reviews.apache.org/r/1653/diff/3/?file=35507#file35507line968>
bq.  >
bq.  >     Should we consider using the existing code if there aren't many 
entries in newRegions ?

Some reasons to do async for all cases.

1. Other table operations like enableTable doesn't have such logics. So it is 
more consistent.
2. If we do sync for small number of regions, then we have to decide what is 
considered small. It might end up with another configuration parameter.
3. Less code to manage.

Suggestions?


- Ming


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/1653/#review1638
-----------------------------------------------------------


On 2011-08-25 06:33:04, Ming Ma wrote:
bq.  
bq.  -----------------------------------------------------------
bq.  This is an automatically generated e-mail. To reply, visit:
bq.  https://reviews.apache.org/r/1653/
bq.  -----------------------------------------------------------
bq.  
bq.  (Updated 2011-08-25 06:33:04)
bq.  
bq.  
bq.  Review request for hbase.
bq.  
bq.  
bq.  Summary
bq.  -------
bq.  
bq.  1. Make createTable truly async.
bq.  2. Fix up some incorrect comments, logs.
bq.  
bq.  
bq.  This addresses bug HBASE-3229.
bq.      https://issues.apache.org/jira/browse/HBASE-3229
bq.  
bq.  
bq.  Diffs
bq.  -----
bq.  
bq.    
http://svn.apache.org/repos/asf/hbase/trunk/src/main/java/org/apache/hadoop/hbase/client/HBaseAdmin.java
 1161360 
bq.    
http://svn.apache.org/repos/asf/hbase/trunk/src/main/java/org/apache/hadoop/hbase/executor/EventHandler.java
 1161360 
bq.    
http://svn.apache.org/repos/asf/hbase/trunk/src/main/java/org/apache/hadoop/hbase/executor/ExecutorService.java
 1161360 
bq.    
http://svn.apache.org/repos/asf/hbase/trunk/src/main/java/org/apache/hadoop/hbase/ipc/HMasterInterface.java
 1161360 
bq.    
http://svn.apache.org/repos/asf/hbase/trunk/src/main/java/org/apache/hadoop/hbase/master/HMaster.java
 1161360 
bq.    
http://svn.apache.org/repos/asf/hbase/trunk/src/main/java/org/apache/hadoop/hbase/master/handler/CreateTableHandler.java
 PRE-CREATION 
bq.    
http://svn.apache.org/repos/asf/hbase/trunk/src/main/java/org/apache/hadoop/hbase/master/handler/EnableTableHandler.java
 1161360 
bq.    
http://svn.apache.org/repos/asf/hbase/trunk/src/main/java/org/apache/hadoop/hbase/zookeeper/ZKTable.java
 1161360 
bq.    
http://svn.apache.org/repos/asf/hbase/trunk/src/test/java/org/apache/hadoop/hbase/client/TestAdmin.java
 1161360 
bq.  
bq.  Diff: https://reviews.apache.org/r/1653/diff
bq.  
bq.  
bq.  Testing
bq.  -------
bq.  
bq.  1. add a new test case to verify RPC timeout exception is gone when 
creating table with lots of regions.
bq.  2. hbase shell, unit tests.
bq.  
bq.  
bq.  Thanks,
bq.  
bq.  Ming
bq.  
bq.



> Table creation, though using "async" call to master, can actually run for a 
> while and cause RPC timeout
> -------------------------------------------------------------------------------------------------------
>
>                 Key: HBASE-3229
>                 URL: https://issues.apache.org/jira/browse/HBASE-3229
>             Project: HBase
>          Issue Type: Bug
>          Components: client, master
>    Affects Versions: 0.90.0
>            Reporter: Jonathan Gray
>            Assignee: Ming Ma
>            Priority: Critical
>             Fix For: 0.92.0
>
>
> Our create table methods in HBaseAdmin are synchronous from client POV.  
> However, underneath, we're using an "async" create and then looping waiting 
> for table availability.  Because the create is async and we loop instead of 
> block on RPC, we don't expect RPC timeouts.
> However, when creating a table with lots of initial regions, the "async" 
> create can actually take a long time (more than 30 seconds in this case) 
> which causes the client to timeout and gives impression something failed.
> We should make the create truly async so that this can't happen.  And rather 
> than doing one-off, inline assignment as it is today, we should reuse the 
> fancy enable/disable code stack just added to make this faster and more 
> optimal.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to