hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Anoop Sam John (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-8279) Performance Evaluation does not consider the table name passed in the argument
Date Fri, 05 Apr 2013 10:50:20 GMT

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

Anoop Sam John commented on HBASE-8279:
---------------------------------------

Nice catch Ram
This will give issue when you use more than 1 client only right?
{code}
private void doMultipleClients(final Class<? extends Test> cmd) throws IOException {
.....
Thread t = new Thread ("TestClient-" + i) {
        @Override
        public void run() {
          super.run();
          PerformanceEvaluation pe = new PerformanceEvaluation(getConf());
          pe.N = N;
}
{code}
new PerformanceEvaluation object is created in which the tableName will be the default name
only! Not just tableName. All other settings what we have passed in args also wont be there
in this new object.
                
> Performance Evaluation does not consider the table name passed in the argument
> ------------------------------------------------------------------------------
>
>                 Key: HBASE-8279
>                 URL: https://issues.apache.org/jira/browse/HBASE-8279
>             Project: HBase
>          Issue Type: Bug
>            Reporter: ramkrishna.s.vasudevan
>            Assignee: ramkrishna.s.vasudevan
>            Priority: Minor
>             Fix For: 0.95.0, 0.98.0, 0.94.7
>
>         Attachments: HBASE-8279.patch
>
>
> Performance evaluation gives a provision to pass the table name.
> The table name is considered when we first initialize the table - like the disabling
and creation of tables happens with the name that we pass.
> But the write and read test again uses only the default table and so the perf evaluation
fails.
> I think the problem is like this
> {code}
>  ./hbase org.apache.hadoop.hbase.PerformanceEvaluation --nomapred --table=MyTable2  --presplit=70
randomRead 2
> {code}
> {code}
> 13/04/04 21:42:07 DEBUG hbase.HRegionInfo: Current INFO from scan results = {NAME =>
'MyTable2,00000000000000000002067171,1365126124904.bc9e936f4f8ca8ee55eb90091d4a13b6.', STARTKEY
=> '00000000000000000002067171', ENDKEY => '', ENCODED => bc9e936f4f8ca8ee55eb90091d4a13b6,}
> 13/04/04 21:42:07 INFO hbase.PerformanceEvaluation: Table created with 70 splits
> {code}
> You can see that the specified table is created with the splits.
> But when the read starts
> {code}
> Caused by: org.apache.hadoop.hbase.exceptions.TableNotFoundException: TestTable
>         at org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation.locateRegionInMeta(HConnectionManager.java:1157)
>         at org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation.locateRegion(HConnectionManager.java:1034)
>         at org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation.locateRegion(HConnectionManager.java:984)
>         at org.apache.hadoop.hbase.client.HTable.finishSetup(HTable.java:246)
>         at org.apache.hadoop.hbase.client.HTable.<init>(HTable.java:187)
>         at org.apache.hadoop.hbase.PerformanceEvaluation$Test.testSetup(PerformanceEvaluation.java:851)
>         at org.apache.hadoop.hbase.PerformanceEvaluation$Test.test(PerformanceEvaluation.java:869)
>         at org.apache.hadoop.hbase.PerformanceEvaluation.runOneClient(PerformanceEvaluation.java:1495)
>         at org.apache.hadoop.hbase.PerformanceEvaluation$1.run(PerformanceEvaluation.java:590)
> {code}
> It says TestTable not found which is the default table.

--
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

Mime
View raw message