[
https://issues.apache.org/jira/browse/TAJO-1868?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14804986#comment-14804986
]
ASF GitHub Bot commented on TAJO-1868:
--------------------------------------
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?
> Allow TablespaceManager::get to return unregistered tablespace
> --------------------------------------------------------------
>
> Key: TAJO-1868
> URL: https://issues.apache.org/jira/browse/TAJO-1868
> Project: Tajo
> Issue Type: Improvement
> Reporter: Hyunsik Choi
> Assignee: Hyunsik Choi
> Fix For: 0.11.0
>
>
> This patch allows TablespaceManager::get() to return unregistered tablespace
> by URI.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)