Andrew, What methods in HBaseConfiguration and HTable do you think are not re-entrant?
--- Jim Kellerman, Powerset (Live Search, Microsoft Corporation) > -----Original Message----- > From: Michael Dagaev [mailto:[EMAIL PROTECTED] > Sent: Monday, October 13, 2008 10:24 AM > To: [email protected]; [EMAIL PROTECTED] > Subject: Re: Questions on client API > > Hi Andrew > > Hmmm ...I would not like to instantiate HBaseConfiguration per > thread. I would prefer to create it once per application so many > threads will use it concurrently. > > Thank you for pointing out this issue. I will check the code. > M. > > On Mon, Oct 13, 2008 at 6:54 PM, Andrew Purtell <[EMAIL PROTECTED]> > wrote: > > Hello Michael, > > > > Your understanding regarding connection pooling is correct. > > > > Looking at the code, I see that some methods of > > HBaseConfiguration and HTable are not fully reentrant, so I > > would not share them across multiple threads, or at least I > > would explicitly synchronize access to them. > > > > - Andy > > > > > >> From: Michael Dagaev <[EMAIL PROTECTED]> > >> Subject: Questions on client API > >> To: [email protected] > >> Date: Monday, October 13, 2008, 2:54 AM > >> Hi All > >> > >> As I understand, the HTable class uses > >> HConnectionManager class, which holds connections to the > >> master and region servers. The connections are pooled as > >> entries in a thread-safe static table (map). Thus, a > >> client application should not care about connection > >> pooling. Is it correct? > >> > >> May several threads share the same instance of > >> HbaseConfiguration ? HTable? > >> > >> Thank you for your cooperation, > >> M. > > > > > > > > > >
