[
https://issues.apache.org/jira/browse/HBASE-8698?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13721489#comment-13721489
]
Hadoop QA commented on HBASE-8698:
----------------------------------
{color:red}-1 overall{color}. Here are the results of testing the latest
attachment
http://issues.apache.org/jira/secure/attachment/12594492/8698-trunk-v3.txt
against trunk revision .
{color:green}+1 @author{color}. The patch does not contain any @author
tags.
{color:green}+1 tests included{color}. The patch appears to include 9 new
or modified tests.
{color:green}+1 hadoop1.0{color}. The patch compiles against the hadoop
1.0 profile.
{color:green}+1 hadoop2.0{color}. The patch compiles against the hadoop
2.0 profile.
{color:green}+1 javadoc{color}. The javadoc tool did not generate any
warning messages.
{color:green}+1 javac{color}. The applied patch does not increase the
total number of javac compiler warnings.
{color:green}+1 findbugs{color}. The patch does not introduce any new
Findbugs (version 1.3.9) warnings.
{color:green}+1 release audit{color}. The applied patch does not increase
the total number of release audit warnings.
{color:green}+1 lineLengths{color}. The patch does not introduce lines
longer than 100
{color:green}+1 site{color}. The mvn site goal succeeds with this patch.
{color:red}-1 core tests{color}. The patch failed these unit tests:
org.apache.hadoop.hbase.regionserver.TestAtomicOperation
Test results:
https://builds.apache.org/job/PreCommit-HBASE-Build/6490//testReport/
Findbugs warnings:
https://builds.apache.org/job/PreCommit-HBASE-Build/6490//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-protocol.html
Findbugs warnings:
https://builds.apache.org/job/PreCommit-HBASE-Build/6490//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-client.html
Findbugs warnings:
https://builds.apache.org/job/PreCommit-HBASE-Build/6490//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-examples.html
Findbugs warnings:
https://builds.apache.org/job/PreCommit-HBASE-Build/6490//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop1-compat.html
Findbugs warnings:
https://builds.apache.org/job/PreCommit-HBASE-Build/6490//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-prefix-tree.html
Findbugs warnings:
https://builds.apache.org/job/PreCommit-HBASE-Build/6490//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-common.html
Findbugs warnings:
https://builds.apache.org/job/PreCommit-HBASE-Build/6490//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-server.html
Findbugs warnings:
https://builds.apache.org/job/PreCommit-HBASE-Build/6490//artifact/trunk/patchprocess/newPatchFindbugsWarningshbase-hadoop-compat.html
Console output:
https://builds.apache.org/job/PreCommit-HBASE-Build/6490//console
This message is automatically generated.
> potential thread creation in MetaScanner.metaScan
> -------------------------------------------------
>
> Key: HBASE-8698
> URL: https://issues.apache.org/jira/browse/HBASE-8698
> Project: HBase
> Issue Type: Bug
> Components: Client
> Affects Versions: 0.94.7
> Reporter: Kireet Reddy
> Assignee: Lars Hofhansl
> Fix For: 0.98.0, 0.95.2, 0.94.11
>
> Attachments: 8698-0.94.txt, 8698-0.94-v2.txt, 8698-trunk.txt,
> 8698-trunk-v2.txt, 8698-trunk-v3.txt
>
>
> MetaScanner.metaScan() creates an instance of HTable per call. The
> constructur used creates a new ThreadPoolExecutor. The executor itself will
> not create a thread unless it's pool is used. I am not sure if the HTable
> instance in question ever uses it's pool. But if so, this could become a big
> performance issue. Logging an issue at Lars's request. mail list chain below.
> -------------------------------------
> Indeed. That is bad.
> I cannot see a clean fix immediately, but we need to look at this.
> Mind filing a ticket, Kireet?
> -- Lars
> ________________________________
> From: Kireet <[email protected]>
> To:
> public-user-50Pas4EWwPEyzMRdD/IqWQ-wOFGN7rlS/M9smdsby/[email protected]
> Sent: Friday, May 31, 2013 11:58 AM
> Subject: Re: HConnectionManager$HConnectionImplementation.locateRegionInMeta
>
> Even if I initiate the call via a pooled htable, the MetaScanner seems
> to use a concrete HTable instance. The constructor invoked seems to
> create a java ThreadPoolExecutor. I am not 100% sure but I think as long
> as nothing is submitted to the ThreadPoolExecutor it won't create any
> threads. I just wanted to confirm this was the case. I do see the
> connection is shared.
> --Kireet
> On 5/30/13 7:38 PM, Ted Yu wrote:
> > HTablePool$**PooledHTable is a wrapper around HTable.
> >
> > Here is how HTable obtains a connection:
> >
> > public HTable(Configuration conf, final byte[] tableName, final
> > ExecutorService pool)
> > throws IOException {
> > this.connection = HConnectionManager.getConnection(conf);
> >
> > Meaning the connection is a shared one based on certain key/value pairs
> > from conf.
> >
> > bq. So every call to batch will create a new thread?
> >
> > I don't think so.
> >
> > On Thu, May 30, 2013 at 11:28 AM, Kireet
> > <kireet-teh5dpvpl8nqt0dzr+alfa-xmd5yjdbdmrexy1tmh2...@public.gmane.org>
> > wrote:
> >
> >>
> >>
> >> Thanks, will give it a shot. So I should download 0.94.7 (latest stable)
> >> and run the patch tool on top with the backport? This is a little new to
> >> me.
> >>
> >> Also, I was looking at the stack below. From my reading of the code, the
> >> HTable.batch() call will always cause the prefetch call to occur, which
> >> will cause a new HTable object to get created. The constructor used in
> >> creating a new thread pool. So every call to batch will create a new
> >> thread? Or the HTable's thread pool never gets used as the pool is only
> >> used for writes? I think I am missing something but just want to confirm.
> >>
> >> Thanks
> >> Kireet
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira