You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@metamodel.apache.org by ka...@apache.org on 2018/06/21 05:50:53 UTC
[02/31] metamodel git commit: Small improvements and fixed the
existing Unit Test
Small improvements and fixed the existing Unit Test
Project: http://git-wip-us.apache.org/repos/asf/metamodel/repo
Commit: http://git-wip-us.apache.org/repos/asf/metamodel/commit/f15d0272
Tree: http://git-wip-us.apache.org/repos/asf/metamodel/tree/f15d0272
Diff: http://git-wip-us.apache.org/repos/asf/metamodel/diff/f15d0272
Branch: refs/heads/master
Commit: f15d02721910678e29c1452c1bf6f4b495609efc
Parents: 6ad602b
Author: HUMANINFERENCE\g.dellemann <g....@quadient.com>
Authored: Mon Apr 23 16:53:03 2018 +0200
Committer: HUMANINFERENCE\g.dellemann <g....@quadient.com>
Committed: Mon Apr 23 16:53:03 2018 +0200
----------------------------------------------------------------------
hbase/pom.xml | 6 ++
.../metamodel/hbase/HBaseDataContext.java | 6 --
.../hbase/qualifiers/FindQualifiersDriver.java | 9 +-
.../metamodel/hbase/HBaseDataContextTest.java | 98 ++++++++++++++------
4 files changed, 80 insertions(+), 39 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/metamodel/blob/f15d0272/hbase/pom.xml
----------------------------------------------------------------------
diff --git a/hbase/pom.xml b/hbase/pom.xml
index aed4f63..47101ba 100644
--- a/hbase/pom.xml
+++ b/hbase/pom.xml
@@ -264,6 +264,12 @@
<artifactId>slf4j-log4j12</artifactId>
<scope>provided</scope>
</dependency>
+ <dependency>
+ <groupId>io.netty</groupId>
+ <artifactId>netty-transport</artifactId>
+ <version>4.1.13.Final</version>
+ <scope>test</scope>
+ </dependency>
<!-- Test dependencies -->
<dependency>
http://git-wip-us.apache.org/repos/asf/metamodel/blob/f15d0272/hbase/src/main/java/org/apache/metamodel/hbase/HBaseDataContext.java
----------------------------------------------------------------------
diff --git a/hbase/src/main/java/org/apache/metamodel/hbase/HBaseDataContext.java b/hbase/src/main/java/org/apache/metamodel/hbase/HBaseDataContext.java
index 6b48723..841b225 100644
--- a/hbase/src/main/java/org/apache/metamodel/hbase/HBaseDataContext.java
+++ b/hbase/src/main/java/org/apache/metamodel/hbase/HBaseDataContext.java
@@ -72,9 +72,6 @@ public class HBaseDataContext extends QueryPostprocessDataContext {
Configuration config = createConfig(configuration);
_configuration = configuration;
_connection = createConnection(config);
-
- // HBaseUpdateCallback updateCallback = new HBaseUpdateCallback(this);
- // updateCallback.writeRow();
}
/**
@@ -87,9 +84,6 @@ public class HBaseDataContext extends QueryPostprocessDataContext {
super(false);
_configuration = configuration;
_connection = connection;
-
- // HBaseUpdateCallback updateCallback = new HBaseUpdateCallback(this);
- // updateCallback.writeRow();
}
private Connection createConnection(Configuration config) {
http://git-wip-us.apache.org/repos/asf/metamodel/blob/f15d0272/hbase/src/main/java/org/apache/metamodel/hbase/qualifiers/FindQualifiersDriver.java
----------------------------------------------------------------------
diff --git a/hbase/src/main/java/org/apache/metamodel/hbase/qualifiers/FindQualifiersDriver.java b/hbase/src/main/java/org/apache/metamodel/hbase/qualifiers/FindQualifiersDriver.java
index 3efa311..9292d06 100644
--- a/hbase/src/main/java/org/apache/metamodel/hbase/qualifiers/FindQualifiersDriver.java
+++ b/hbase/src/main/java/org/apache/metamodel/hbase/qualifiers/FindQualifiersDriver.java
@@ -39,6 +39,7 @@ import org.apache.hadoop.mapreduce.Reducer;
import org.apache.hadoop.mapreduce.lib.output.TextOutputFormat;
import org.apache.hadoop.util.Tool;
import org.apache.hadoop.util.ToolRunner;
+import org.apache.metamodel.hbase.HBaseConfiguration;
public class FindQualifiersDriver extends Configured implements Tool {
@@ -101,10 +102,10 @@ public class FindQualifiersDriver extends Configured implements Tool {
protected Configuration createConfig() {
Configuration config = org.apache.hadoop.hbase.HBaseConfiguration.create();
config.set("hbase.zookeeper.quorum", "bigdatavm");
- config.set("hbase.zookeeper.property.clientPort", Integer.toString(2181));
- config.set("hbase.client.retries.number", Integer.toString(1));
- config.set("zookeeper.session.timeout", Integer.toString(5000));
- config.set("zookeeper.recovery.retry", Integer.toString(1));
+ config.set("hbase.zookeeper.property.clientPort", Integer.toString(HBaseConfiguration.DEFAULT_ZOOKEEPER_PORT));
+ config.set("hbase.client.retries.number", Integer.toString(HBaseConfiguration.DEFAULT_HBASE_CLIENT_RETRIES));
+ config.set("zookeeper.session.timeout", Integer.toString(HBaseConfiguration.DEFAULT_ZOOKEEPER_SESSION_TIMEOUT));
+ config.set("zookeeper.recovery.retry", Integer.toString(HBaseConfiguration.DEFAULT_ZOOKEEPER_RECOVERY_RETRIES));
return config;
}
http://git-wip-us.apache.org/repos/asf/metamodel/blob/f15d0272/hbase/src/test/java/org/apache/metamodel/hbase/HBaseDataContextTest.java
----------------------------------------------------------------------
diff --git a/hbase/src/test/java/org/apache/metamodel/hbase/HBaseDataContextTest.java b/hbase/src/test/java/org/apache/metamodel/hbase/HBaseDataContextTest.java
index 6187f2c..fb21b46 100644
--- a/hbase/src/test/java/org/apache/metamodel/hbase/HBaseDataContextTest.java
+++ b/hbase/src/test/java/org/apache/metamodel/hbase/HBaseDataContextTest.java
@@ -32,8 +32,32 @@ import org.apache.metamodel.util.SimpleTableDef;
public class HBaseDataContextTest extends HBaseTestCase {
+ // Table
private static final String EXAMPLE_TABLE_NAME = "table_for_junit";
+ // ColumnFamilies
+ private static final String CF_FOO = "foo";
+ private static final String CF_BAR = "bar";
+
+ // Qualifiers
+ private static final String Q_HELLO = "hello";
+ private static final String Q_HI = "hi";
+ private static final String Q_HEY = "hey";
+ private static final String Q_BAH = "bah";
+
+ // RowKeys
+ private static final String RK_1 = "junit1";
+ private static final String RK_2 = "junit2";
+
+ private static final int NUMBER_OF_ROWS = 2;
+
+ // Values
+ private static final String V_WORLD = "world";
+ private static final String V_THERE = "there";
+ private static final String V_YO = "yo";
+ private static final byte[] V_123_BYTE_ARRAY = new byte[] { 1, 2, 3 };
+ private static final String V_YOU = "you";
+
private HBaseDataContext _dataContext;
@Override
@@ -59,7 +83,9 @@ public class HBaseDataContextTest extends HBaseTestCase {
final Table table = _dataContext.getDefaultSchema().getTableByName(EXAMPLE_TABLE_NAME);
assertNotNull(table);
- assertEquals("[_id, bar, foo]", Arrays.toString(table.getColumnNames().toArray()));
+ assertEquals("[" + HBaseDataContext.FIELD_ID + ", " + CF_BAR + ", " + CF_FOO + "]", Arrays.toString(table
+ .getColumnNames()
+ .toArray()));
assertEquals(ColumnType.MAP, table.getColumn(1).getType());
// insert two records
@@ -69,33 +95,39 @@ public class HBaseDataContextTest extends HBaseTestCase {
final DataSet dataSet1 = _dataContext.query().from(EXAMPLE_TABLE_NAME).selectAll().execute();
try {
assertTrue(dataSet1.next());
- assertEquals(
- "Row[values=[junit1, {[104, 101, 121]=[121, 111],[104, 105]=[116, 104, 101, 114, 101]}, {[104, 101, 108, 108, 111]=[119, 111, 114, 108, 100]}]]",
- dataSet1.getRow().toString());
+ assertEquals("Row[values=[" + RK_1 + ", {" + Q_HEY + "=" + V_YO + "," + Q_HI + "=" + V_THERE + "}, {"
+ + Q_HELLO + "=" + V_WORLD + "}]]", dataSet1.getRow().toString());
assertTrue(dataSet1.next());
- assertEquals("Row[values=[junit2, {[98, 97, 104]=[1, 2, 3],[104, 105]=[121, 111, 117]}, {}]]", dataSet1
- .getRow().toString());
+ assertEquals("Row[values=[" + RK_2 + ", {" + Q_BAH + "=" + new String(V_123_BYTE_ARRAY) + "," + Q_HI + "="
+ + V_YOU + "}, {}]]", dataSet1.getRow().toString());
assertFalse(dataSet1.next());
} finally {
dataSet1.close();
}
// query using custom table definitions
- final String[] columnNames = new String[] { "foo", "bar:hi", "bar:hey" };
+ final String columnName1 = CF_FOO;
+ final String columnName2 = CF_BAR + ":" + Q_HI;
+ final String columnName3 = CF_BAR + ":" + Q_HEY;
+ final String[] columnNames = new String[] { columnName1, columnName2, columnName3 };
final ColumnType[] columnTypes = new ColumnType[] { ColumnType.MAP, ColumnType.VARCHAR, ColumnType.VARCHAR };
final SimpleTableDef[] tableDefinitions = new SimpleTableDef[] { new SimpleTableDef(EXAMPLE_TABLE_NAME,
columnNames, columnTypes) };
_dataContext = new HBaseDataContext(new HBaseConfiguration("SCH", getZookeeperHostname(), getZookeeperPort(),
tableDefinitions, ColumnType.VARCHAR));
- final DataSet dataSet2 = _dataContext.query().from(EXAMPLE_TABLE_NAME).select("foo", "bar:hi", "bar:hey")
+ final DataSet dataSet2 = _dataContext
+ .query()
+ .from(EXAMPLE_TABLE_NAME)
+ .select(columnName1, columnName2, columnName3)
.execute();
try {
assertTrue(dataSet2.next());
- assertEquals("Row[values=[{[104, 101, 108, 108, 111]=[119, 111, 114, 108, 100]}, there, yo]]", dataSet2
- .getRow().toString());
+ assertEquals("Row[values=[{" + Q_HELLO + "=" + V_WORLD + "}, " + V_THERE + ", " + V_YO + "]]", dataSet2
+ .getRow()
+ .toString());
assertTrue(dataSet2.next());
- assertEquals("Row[values=[{}, you, null]]", dataSet2.getRow().toString());
+ assertEquals("Row[values=[{}, " + V_YOU + ", null]]", dataSet2.getRow().toString());
assertFalse(dataSet2.next());
} finally {
dataSet2.close();
@@ -105,33 +137,41 @@ public class HBaseDataContextTest extends HBaseTestCase {
final DataSet dataSet3 = _dataContext.query().from(EXAMPLE_TABLE_NAME).selectCount().execute();
try {
assertTrue(dataSet3.next());
- assertEquals("Row[values=[2]]", dataSet3.getRow().toString());
+ assertEquals("Row[values=[" + NUMBER_OF_ROWS + "]]", dataSet3.getRow().toString());
assertFalse(dataSet3.next());
} finally {
dataSet3.close();
}
// query only id
- final DataSet dataSet4 = _dataContext.query().from(EXAMPLE_TABLE_NAME).select(HBaseDataContext.FIELD_ID)
+ final DataSet dataSet4 = _dataContext
+ .query()
+ .from(EXAMPLE_TABLE_NAME)
+ .select(HBaseDataContext.FIELD_ID)
.execute();
try {
assertTrue(dataSet4.next());
- assertEquals("Row[values=[junit1]]", dataSet4.getRow().toString());
+ assertEquals("Row[values=[" + RK_1 + "]]", dataSet4.getRow().toString());
assertTrue(dataSet4.next());
- assertEquals("Row[values=[junit2]]", dataSet4.getRow().toString());
+ assertEquals("Row[values=[" + RK_2 + "]]", dataSet4.getRow().toString());
assertFalse(dataSet4.next());
} finally {
dataSet4.close();
}
// primary key lookup query - using GET
- final DataSet dataSet5 = _dataContext.query().from(EXAMPLE_TABLE_NAME).select(HBaseDataContext.FIELD_ID)
- .where(HBaseDataContext.FIELD_ID).eq("junit1").execute();
+ final DataSet dataSet5 = _dataContext
+ .query()
+ .from(EXAMPLE_TABLE_NAME)
+ .select(HBaseDataContext.FIELD_ID)
+ .where(HBaseDataContext.FIELD_ID)
+ .eq(RK_1)
+ .execute();
try {
assertTrue(dataSet5.next());
- assertEquals("Row[values=[junit1]]", dataSet5.getRow().toString());
+ assertEquals("Row[values=[" + RK_1 + "]]", dataSet5.getRow().toString());
assertFalse(dataSet5.next());
} finally {
dataSet5.close();
@@ -141,16 +181,16 @@ public class HBaseDataContextTest extends HBaseTestCase {
private void insertRecordsNatively() throws Exception {
final org.apache.hadoop.hbase.client.Table hTable = _dataContext.getHTable(EXAMPLE_TABLE_NAME);
try {
- final Put put1 = new Put("junit1".getBytes());
- put1.addColumn("foo".getBytes(), "hello".getBytes(), "world".getBytes());
- put1.addColumn("bar".getBytes(), "hi".getBytes(), "there".getBytes());
- put1.addColumn("bar".getBytes(), "hey".getBytes(), "yo".getBytes());
+ final Put put1 = new Put(RK_1.getBytes());
+ put1.addColumn(CF_FOO.getBytes(), Q_HELLO.getBytes(), V_WORLD.getBytes());
+ put1.addColumn(CF_BAR.getBytes(), Q_HI.getBytes(), V_THERE.getBytes());
+ put1.addColumn(CF_BAR.getBytes(), Q_HEY.getBytes(), V_YO.getBytes());
- final Put put2 = new Put("junit2".getBytes());
- put2.addColumn("bar".getBytes(), "bah".getBytes(), new byte[] { 1, 2, 3 });
- put2.addColumn("bar".getBytes(), "hi".getBytes(), "you".getBytes());
+ final Put put2 = new Put(RK_2.getBytes());
+ put2.addColumn(CF_BAR.getBytes(), Q_BAH.getBytes(), V_123_BYTE_ARRAY);
+ put2.addColumn(CF_BAR.getBytes(), Q_HI.getBytes(), V_YOU.getBytes());
- final Object[] result = new Object[2];
+ final Object[] result = new Object[NUMBER_OF_ROWS];
hTable.batch(Arrays.asList(put1, put2), result);
} finally {
hTable.close();
@@ -159,7 +199,7 @@ public class HBaseDataContextTest extends HBaseTestCase {
private void createTableNatively() throws Exception {
final TableName tableName = TableName.valueOf(EXAMPLE_TABLE_NAME);
-
+
// check if the table exists
if (_dataContext.getAdmin().isTableAvailable(tableName)) {
System.out.println("Unittest table already exists: " + EXAMPLE_TABLE_NAME);
@@ -170,8 +210,8 @@ public class HBaseDataContextTest extends HBaseTestCase {
Admin admin = _dataContext.getAdmin();
System.out.println("Creating table");
final HTableDescriptor tableDescriptor = new HTableDescriptor(tableName);
- tableDescriptor.addFamily(new HColumnDescriptor("foo".getBytes()));
- tableDescriptor.addFamily(new HColumnDescriptor("bar".getBytes()));
+ tableDescriptor.addFamily(new HColumnDescriptor(CF_FOO.getBytes()));
+ tableDescriptor.addFamily(new HColumnDescriptor(CF_BAR.getBytes()));
admin.createTable(tableDescriptor);
System.out.println("Created table");
}