Github user jihoonson commented on a diff in the pull request:

    https://github.com/apache/tajo/pull/768#discussion_r39824860
  
    --- Diff: 
tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestHBaseTable.java 
---
    @@ -177,195 +185,230 @@ public void testCreateRowFieldWithNonText() throws 
Exception {
     
       @Test
       public void testCreateExternalHBaseTable() throws Exception {
    -    HTableDescriptor hTableDesc = new 
HTableDescriptor(TableName.valueOf("external_hbase_table_not_purge"));
    -    hTableDesc.addFamily(new HColumnDescriptor("col1"));
    -    hTableDesc.addFamily(new HColumnDescriptor("col2"));
    -    hTableDesc.addFamily(new HColumnDescriptor("col3"));
    -    testingCluster.getHBaseUtil().createTable(hTableDesc);
    -
    -    String sql = String.format(
    -        "CREATE EXTERNAL TABLE external_hbase_mapped_table (rk text, col1 
text, col2 text, col3 text) " +
    -        "USING hbase WITH ('table'='external_hbase_table_not_purge', 
'columns'=':key,col1:a,col2:,col3:b') " +
    -        "LOCATION '%s/external_hbase_table'", tableSpaceUri);
    -    executeString(sql).close();
    +    Optional<Tablespace> existing = 
TablespaceManager.removeTablespaceForTest("cluster1");
    +    assertTrue(existing.isPresent());
     
    -    assertTableExists("external_hbase_mapped_table");
    +    try {
    +      HTableDescriptor hTableDesc = new 
HTableDescriptor(TableName.valueOf("external_hbase_table_not_purge"));
    +      hTableDesc.addFamily(new HColumnDescriptor("col1"));
    +      hTableDesc.addFamily(new HColumnDescriptor("col2"));
    +      hTableDesc.addFamily(new HColumnDescriptor("col3"));
    +      testingCluster.getHBaseUtil().createTable(hTableDesc);
    +
    +      String sql = String.format(
    +          "CREATE EXTERNAL TABLE external_hbase_mapped_table (rk text, 
col1 text, col2 text, col3 text) " +
    +              "USING hbase WITH ('table'='external_hbase_table_not_purge', 
'columns'=':key,col1:a,col2:,col3:b') " +
    +              "LOCATION '%s/external_hbase_table'", tableSpaceUri);
    +      executeString(sql).close();
     
    -    executeString("DROP TABLE external_hbase_mapped_table").close();
    +      assertTableExists("external_hbase_mapped_table");
    +
    +      executeString("DROP TABLE external_hbase_mapped_table").close();
    +
    +      HBaseAdmin hAdmin = new 
HBaseAdmin(testingCluster.getHBaseUtil().getConf());
    +      try {
    +        assertTrue(hAdmin.tableExists("external_hbase_table_not_purge"));
    +        hAdmin.disableTable("external_hbase_table_not_purge");
    +        hAdmin.deleteTable("external_hbase_table_not_purge");
    +      } finally {
    +        hAdmin.close();
    +      }
     
    -    HBaseAdmin hAdmin =  new 
HBaseAdmin(testingCluster.getHBaseUtil().getConf());
    -    try {
    -      assertTrue(hAdmin.tableExists("external_hbase_table_not_purge"));
    -      hAdmin.disableTable("external_hbase_table_not_purge");
    -      hAdmin.deleteTable("external_hbase_table_not_purge");
         } finally {
    -      hAdmin.close();
    +      TablespaceManager.addTableSpaceForTest(existing.get());
         }
    +
       }
     
       @Test
       public void testSimpleSelectQuery() throws Exception {
    -    HTableDescriptor hTableDesc = new 
HTableDescriptor(TableName.valueOf("external_hbase_table"));
    -    hTableDesc.addFamily(new HColumnDescriptor("col1"));
    -    hTableDesc.addFamily(new HColumnDescriptor("col2"));
    -    hTableDesc.addFamily(new HColumnDescriptor("col3"));
    -    testingCluster.getHBaseUtil().createTable(hTableDesc);
    -
    -    String sql = String.format(
    -        "CREATE EXTERNAL TABLE external_hbase_mapped_table (rk text, col1 
text, col2 text, col3 text) " +
    -        "USING hbase WITH ('table'='external_hbase_table', 
'columns'=':key,col1:a,col2:,col3:b') " +
    -        "LOCATION '%s/external_hbase_table'", tableSpaceUri);
    -    executeString(sql).close();
    +    Optional<Tablespace> existing = 
TablespaceManager.removeTablespaceForTest("cluster1");
    +    assertTrue(existing.isPresent());
     
    -    assertTableExists("external_hbase_mapped_table");
    +    try {
    +      HTableDescriptor hTableDesc = new 
HTableDescriptor(TableName.valueOf("external_hbase_table"));
    +      hTableDesc.addFamily(new HColumnDescriptor("col1"));
    +      hTableDesc.addFamily(new HColumnDescriptor("col2"));
    +      hTableDesc.addFamily(new HColumnDescriptor("col3"));
    +      testingCluster.getHBaseUtil().createTable(hTableDesc);
    +
    +      String sql = String.format(
    +          "CREATE EXTERNAL TABLE external_hbase_mapped_table (rk text, 
col1 text, col2 text, col3 text) " +
    +              "USING hbase WITH ('table'='external_hbase_table', 
'columns'=':key,col1:a,col2:,col3:b') " +
    +              "LOCATION '%s/external_hbase_table'", tableSpaceUri);
    +      executeString(sql).close();
     
    -    HBaseTablespace space = (HBaseTablespace) 
TablespaceManager.getByName("cluster1").get();
    -    HConnection hconn = space.getConnection();
    -    HTableInterface htable = hconn.getTable("external_hbase_table");
    +      assertTableExists("external_hbase_mapped_table");
     
    -    try {
    -      for (int i = 0; i < 100; i++) {
    -        Put put = new Put(String.valueOf(i).getBytes());
    -        put.add("col1".getBytes(), "a".getBytes(), ("a-" + i).getBytes());
    -        put.add("col1".getBytes(), "b".getBytes(), ("b-" + i).getBytes());
    -        put.add("col2".getBytes(), "k1".getBytes(), ("k1-" + 
i).getBytes());
    -        put.add("col2".getBytes(), "k2".getBytes(), ("k2-" + 
i).getBytes());
    -        put.add("col3".getBytes(), "b".getBytes(), ("b-" + i).getBytes());
    -        htable.put(put);
    -      }
    +      HConnection hconn = 
((HBaseTablespace)existing.get()).getConnection();
    +      HTableInterface htable = hconn.getTable("external_hbase_table");
     
    -      ResultSet res = executeString("select * from 
external_hbase_mapped_table where rk > '20'");
    -      assertResultSet(res);
    -      cleanupQuery(res);
    +      try {
    +        for (int i = 0; i < 100; i++) {
    +          Put put = new Put(String.valueOf(i).getBytes());
    +          put.add("col1".getBytes(), "a".getBytes(), ("a-" + 
i).getBytes());
    +          put.add("col1".getBytes(), "b".getBytes(), ("b-" + 
i).getBytes());
    +          put.add("col2".getBytes(), "k1".getBytes(), ("k1-" + 
i).getBytes());
    +          put.add("col2".getBytes(), "k2".getBytes(), ("k2-" + 
i).getBytes());
    +          put.add("col3".getBytes(), "b".getBytes(), ("b-" + 
i).getBytes());
    +          htable.put(put);
    +        }
    +
    +        ResultSet res = executeString("select * from 
external_hbase_mapped_table where rk > '20'");
    +        assertResultSet(res);
    +        cleanupQuery(res);
    +      } finally {
    +        executeString("DROP TABLE external_hbase_mapped_table 
PURGE").close();
    +        htable.close();
    +      }
         } finally {
    -      executeString("DROP TABLE external_hbase_mapped_table 
PURGE").close();
    -      htable.close();
    +      TablespaceManager.addTableSpaceForTest(existing.get());
         }
       }
     
       @Test
       public void testBinaryMappedQuery() throws Exception {
    -    HTableDescriptor hTableDesc = new 
HTableDescriptor(TableName.valueOf("external_hbase_table"));
    -    hTableDesc.addFamily(new HColumnDescriptor("col1"));
    -    hTableDesc.addFamily(new HColumnDescriptor("col2"));
    -    hTableDesc.addFamily(new HColumnDescriptor("col3"));
    -    testingCluster.getHBaseUtil().createTable(hTableDesc);
    -
    -    String sql = String.format(
    -        "CREATE EXTERNAL TABLE external_hbase_mapped_table (rk int8, col1 
text, col2 text, col3 int4)\n " +
    -        "USING hbase WITH ('table'='external_hbase_table', 
'columns'=':key#b,col1:a,col2:,col3:b#b') " +
    -        "LOCATION '%s/external_hbase_table'", tableSpaceUri);
    -    executeString(sql).close();
    -
    -    assertTableExists("external_hbase_mapped_table");
    -
    -    HBaseTablespace space = (HBaseTablespace) 
TablespaceManager.getByName("cluster1").get();
    -    HConnection hconn = space.getConnection();
    -    HTableInterface htable = hconn.getTable("external_hbase_table");
    +    //Optional<Tablespace> existing = 
TablespaceManager.removeTablespaceForTest("cluster1");
    --- End diff --
    
    Does this line need to be restored?


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---

Reply via email to