hadoop-common-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jim Kellerman (JIRA)" <j...@apache.org>
Subject [jira] Updated: (HADOOP-1528) HClient for multiple tables
Date Wed, 01 Aug 2007 07:23:53 GMT

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

Jim Kellerman updated HADOOP-1528:
----------------------------------

    Attachment: patch.txt

Fixed two race conditions in HMaster:

- don't process a region server exit message if the lease has timed
  out. Otherwise we end up with two pending server shutdown messages
  to process and chaos ensues.
- don't reassign the root region when the server's lease expires. The
  lease expiration handler will queue a PendingServerShutdown
  operation that must run before the root region is reassigned because
  the HLog of the dead server must be split before any regions served
  by the dead server are reassigned.

Why weren't these seen before?

- synchronization has changed which may have exposed these conditions
  which existed before but were never observed.

> HClient for multiple tables
> ---------------------------
>
>                 Key: HADOOP-1528
>                 URL: https://issues.apache.org/jira/browse/HADOOP-1528
>             Project: Hadoop
>          Issue Type: Task
>          Components: contrib/hbase
>    Affects Versions: 0.15.0
>            Reporter: James Kennedy
>            Assignee: Jim Kellerman
>             Fix For: 0.15.0
>
>         Attachments: HConnection.patch, patch.txt, patch.txt
>
>
> I have an app that needs to access multiple HBase tables concurrently.  The current HClient
can only have one table open at a time even though it caches region servers of multiple tables
as they are looked up.
> This means that my application layer must open multiple HClients, one per table, perhaps
caching those HClients in a pool to reuse them (and their cached table data) as appropriate.
> or
> Shall I write an HClient patch that makes the HClient  multi-table thread-safe?
> Jim's suggestion is to implement an HClient singleton (call it HClientManager?) that
does the actual caching/resync of root/meta regions.  Individual HClients will still be one
table, one update row at a time but will rely on the singleton for the cached table info.
 We want HClients to be created and disposed as fast as possible with a minimum of meta lookups.
> Jim, what about non-root/meta regions, shouldn't they be cached and refreshed via the
singleton also?  It may still be possible that a region split/resync will occur during on
HClient session so does the HClientManager need to be able to notify the corresponding HClients
in that event?

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


Mime
View raw message