You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by am...@apache.org on 2013/05/13 07:35:15 UTC
svn commit: r1481701 - in /hive/branches/HIVE-4115/ql/src:
java/org/apache/hadoop/hive/ql/cube/metadata/
test/org/apache/hadoop/hive/ql/cube/metadata/
test/org/apache/hadoop/hive/ql/cube/parse/
Author: amareshwari
Date: Mon May 13 05:35:14 2013
New Revision: 1481701
URL: http://svn.apache.org/r1481701
Log:
Add weight to cube tables - both fact and dimension
Modified:
hive/branches/HIVE-4115/ql/src/java/org/apache/hadoop/hive/ql/cube/metadata/AbstractCubeTable.java
hive/branches/HIVE-4115/ql/src/java/org/apache/hadoop/hive/ql/cube/metadata/CubeDimensionTable.java
hive/branches/HIVE-4115/ql/src/java/org/apache/hadoop/hive/ql/cube/metadata/CubeFactTable.java
hive/branches/HIVE-4115/ql/src/java/org/apache/hadoop/hive/ql/cube/metadata/CubeMetastoreClient.java
hive/branches/HIVE-4115/ql/src/java/org/apache/hadoop/hive/ql/cube/metadata/MetastoreConstants.java
hive/branches/HIVE-4115/ql/src/java/org/apache/hadoop/hive/ql/cube/metadata/MetastoreUtil.java
hive/branches/HIVE-4115/ql/src/test/org/apache/hadoop/hive/ql/cube/metadata/TestCubeMetastoreClient.java
hive/branches/HIVE-4115/ql/src/test/org/apache/hadoop/hive/ql/cube/parse/CubeTestSetup.java
Modified: hive/branches/HIVE-4115/ql/src/java/org/apache/hadoop/hive/ql/cube/metadata/AbstractCubeTable.java
URL: http://svn.apache.org/viewvc/hive/branches/HIVE-4115/ql/src/java/org/apache/hadoop/hive/ql/cube/metadata/AbstractCubeTable.java?rev=1481701&r1=1481700&r2=1481701&view=diff
==============================================================================
--- hive/branches/HIVE-4115/ql/src/java/org/apache/hadoop/hive/ql/cube/metadata/AbstractCubeTable.java (original)
+++ hive/branches/HIVE-4115/ql/src/java/org/apache/hadoop/hive/ql/cube/metadata/AbstractCubeTable.java Mon May 13 05:35:14 2013
@@ -12,11 +12,18 @@ public abstract class AbstractCubeTable
private final String name;
private final List<FieldSchema> columns;
private final Map<String, String> properties = new HashMap<String, String>();
+ private final double weight;
protected AbstractCubeTable(String name, List<FieldSchema> columns,
Map<String, String> props) {
+ this(name, columns, props, 0L);
+ }
+
+ protected AbstractCubeTable(String name, List<FieldSchema> columns,
+ Map<String, String> props, double weight) {
this.name = name;
this.columns = columns;
+ this.weight = weight;
this.properties.putAll(props);
}
@@ -24,6 +31,7 @@ public abstract class AbstractCubeTable
this.name = hiveTable.getTableName();
this.columns = hiveTable.getCols();
this.properties.putAll(hiveTable.getParameters());
+ this.weight = getWeight(getProperties(), getName());
}
public abstract CubeTableType getTableType();
@@ -34,8 +42,15 @@ public abstract class AbstractCubeTable
return properties;
}
+ public static double getWeight(Map<String, String> properties, String name) {
+ String wtStr = properties.get(MetastoreUtil.getCubeTableWeightKey(name));
+ return wtStr == null ? 0L : Double.parseDouble(wtStr);
+ }
+
protected void addProperties() {
properties.put(MetastoreConstants.TABLE_TYPE_KEY, getTableType().name());
+ properties.put(MetastoreUtil.getCubeTableWeightKey(name),
+ String.valueOf(weight));
}
public String getName() {
@@ -46,6 +61,10 @@ public abstract class AbstractCubeTable
return columns;
}
+ public double weight() {
+ return weight;
+ }
+
@Override
public boolean equals(Object obj) {
if (this == obj) {
@@ -71,6 +90,9 @@ public abstract class AbstractCubeTable
return false;
}
}
+ if (this.weight() != other.weight()) {
+ return false;
+ }
return true;
}
Modified: hive/branches/HIVE-4115/ql/src/java/org/apache/hadoop/hive/ql/cube/metadata/CubeDimensionTable.java
URL: http://svn.apache.org/viewvc/hive/branches/HIVE-4115/ql/src/java/org/apache/hadoop/hive/ql/cube/metadata/CubeDimensionTable.java?rev=1481701&r1=1481700&r2=1481701&view=diff
==============================================================================
--- hive/branches/HIVE-4115/ql/src/java/org/apache/hadoop/hive/ql/cube/metadata/CubeDimensionTable.java (original)
+++ hive/branches/HIVE-4115/ql/src/java/org/apache/hadoop/hive/ql/cube/metadata/CubeDimensionTable.java Mon May 13 05:35:14 2013
@@ -12,32 +12,53 @@ public final class CubeDimensionTable ex
private final Map<String, TableReference> dimensionReferences;
private final Map<String, UpdatePeriod> snapshotDumpPeriods;
- public CubeDimensionTable(String dimName, List<FieldSchema> columns) {
- this(dimName, columns, new HashMap<String, TableReference>());
+ public CubeDimensionTable(String dimName, List<FieldSchema> columns,
+ double weight, Map<String, UpdatePeriod> snapshotDumpPeriods) {
+ this(dimName, columns, weight, snapshotDumpPeriods,
+ new HashMap<String, TableReference>(), new HashMap<String, String>());
+ }
+
+ public CubeDimensionTable(String dimName, List<FieldSchema> columns,
+ double weight, Set<String> storages) {
+ this(dimName, columns, weight, getSnapshotDumpPeriods(storages),
+ new HashMap<String, TableReference>(), new HashMap<String, String>());
}
public CubeDimensionTable(String dimName, List<FieldSchema> columns,
+ double weight, Map<String, UpdatePeriod> snapshotDumpPeriods,
Map<String, TableReference> dimensionReferences) {
- this(dimName, columns, dimensionReferences, null);
+ this(dimName, columns, weight, snapshotDumpPeriods, dimensionReferences,
+ new HashMap<String, String>());
}
public CubeDimensionTable(String dimName, List<FieldSchema> columns,
- Map<String, TableReference> dimensionReferences,
- Map<String, UpdatePeriod> snapshotDumpPeriods) {
- this(dimName, columns, dimensionReferences, new HashMap<String, String>(),
- snapshotDumpPeriods);
+ double weight, Set<String> storages,
+ Map<String, TableReference> dimensionReferences) {
+ this(dimName, columns, weight, getSnapshotDumpPeriods(storages),
+ dimensionReferences, new HashMap<String, String>());
}
public CubeDimensionTable(String dimName, List<FieldSchema> columns,
+ double weight,
+ Map<String, UpdatePeriod> snapshotDumpPeriods,
Map<String, TableReference> dimensionReferences,
- Map<String, String> properties,
- Map<String, UpdatePeriod> snapshotDumpPeriods) {
- super(dimName, columns, properties);
+ Map<String, String> properties) {
+ super(dimName, columns, properties, weight);
this.dimensionReferences = dimensionReferences;
this.snapshotDumpPeriods = snapshotDumpPeriods;
addProperties();
}
+ private static Map<String, UpdatePeriod> getSnapshotDumpPeriods(
+ Set<String> storages) {
+ Map<String, UpdatePeriod> snapshotDumpPeriods =
+ new HashMap<String, UpdatePeriod>();
+ for (String storage : storages) {
+ snapshotDumpPeriods.put(storage, null);
+ }
+ return snapshotDumpPeriods;
+ }
+
public CubeDimensionTable(Table tbl) {
super(tbl);
this.dimensionReferences = getDimensionReferences(getProperties());
Modified: hive/branches/HIVE-4115/ql/src/java/org/apache/hadoop/hive/ql/cube/metadata/CubeFactTable.java
URL: http://svn.apache.org/viewvc/hive/branches/HIVE-4115/ql/src/java/org/apache/hadoop/hive/ql/cube/metadata/CubeFactTable.java?rev=1481701&r1=1481700&r2=1481701&view=diff
==============================================================================
--- hive/branches/HIVE-4115/ql/src/java/org/apache/hadoop/hive/ql/cube/metadata/CubeFactTable.java (original)
+++ hive/branches/HIVE-4115/ql/src/java/org/apache/hadoop/hive/ql/cube/metadata/CubeFactTable.java Mon May 13 05:35:14 2013
@@ -19,11 +19,6 @@ public final class CubeFactTable extends
private final String cubeName;
private final Map<String, List<UpdatePeriod>> storageUpdatePeriods;
- public CubeFactTable(String cubeName, String factName,
- List<FieldSchema> columns) {
- this(cubeName, factName, columns, new HashMap<String, List<UpdatePeriod>>());
- }
-
public CubeFactTable(Table hiveTable) {
super(hiveTable);
this.storageUpdatePeriods = getUpdatePeriods(getName(), getProperties());
@@ -34,15 +29,23 @@ public final class CubeFactTable extends
public CubeFactTable(String cubeName, String factName,
List<FieldSchema> columns,
Map<String, List<UpdatePeriod>> storageUpdatePeriods) {
- this(cubeName, factName, columns, storageUpdatePeriods,
+ this(cubeName, factName, columns, storageUpdatePeriods, 0L,
+ new HashMap<String, String>());
+ }
+
+ public CubeFactTable(String cubeName, String factName,
+ List<FieldSchema> columns,
+ Map<String, List<UpdatePeriod>> storageUpdatePeriods, double weight) {
+ this(cubeName, factName, columns, storageUpdatePeriods, weight,
new HashMap<String, String>());
}
public CubeFactTable(String cubeName, String factName,
List<FieldSchema> columns,
Map<String, List<UpdatePeriod>> storageUpdatePeriods,
+ double weight,
Map<String, String> properties) {
- super(factName, columns, properties);
+ super(factName, columns, properties, weight);
this.cubeName = cubeName;
this.storageUpdatePeriods = storageUpdatePeriods;
addProperties();
Modified: hive/branches/HIVE-4115/ql/src/java/org/apache/hadoop/hive/ql/cube/metadata/CubeMetastoreClient.java
URL: http://svn.apache.org/viewvc/hive/branches/HIVE-4115/ql/src/java/org/apache/hadoop/hive/ql/cube/metadata/CubeMetastoreClient.java?rev=1481701&r1=1481700&r2=1481701&view=diff
==============================================================================
--- hive/branches/HIVE-4115/ql/src/java/org/apache/hadoop/hive/ql/cube/metadata/CubeMetastoreClient.java (original)
+++ hive/branches/HIVE-4115/ql/src/java/org/apache/hadoop/hive/ql/cube/metadata/CubeMetastoreClient.java Mon May 13 05:35:14 2013
@@ -4,6 +4,7 @@ import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
+import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
@@ -154,22 +155,30 @@ public class CubeMetastoreClient {
public void createCubeFactTable(String cubeName, String factName,
List<FieldSchema> columns,
- Map<Storage, List<UpdatePeriod>> storageAggregatePeriods)
+ Map<Storage, List<UpdatePeriod>> storageAggregatePeriods, double weight)
throws HiveException {
CubeFactTable factTable = new CubeFactTable(cubeName, factName, columns,
- getUpdatePeriods(storageAggregatePeriods));
+ getUpdatePeriods(storageAggregatePeriods), weight);
createCubeTable(factTable, storageAggregatePeriods);
}
public void createCubeDimensionTable(String dimName,
- List<FieldSchema> columns,
+ List<FieldSchema> columns, double weight,
Map<String, TableReference> dimensionReferences, Set<Storage> storages)
- throws HiveException {
+ throws HiveException {
CubeDimensionTable dimTable = new CubeDimensionTable(dimName, columns,
- dimensionReferences);
+ weight, getStorageNames(storages), dimensionReferences);
createCubeTable(dimTable, storages);
}
+ private Set<String> getStorageNames(Set<Storage> storages) {
+ Set<String> storageNames = new HashSet<String>();
+ for (Storage storage : storages) {
+ storageNames.add(storage.getName());
+ }
+ return storageNames;
+ }
+
private Map<String, UpdatePeriod> getDumpPeriods(
Map<Storage, UpdatePeriod> storageDumpPeriods) {
if (storageDumpPeriods != null) {
@@ -186,14 +195,14 @@ public class CubeMetastoreClient {
}
public void createCubeDimensionTable(String dimName,
- List<FieldSchema> columns,
+ List<FieldSchema> columns, double weight,
Map<String, TableReference> dimensionReferences,
Map<Storage, UpdatePeriod> dumpPeriods)
- throws HiveException {
+ throws HiveException {
// add date partitions for storages with dumpPeriods
addDatePartitions(dumpPeriods);
CubeDimensionTable dimTable = new CubeDimensionTable(dimName, columns,
- dimensionReferences, getDumpPeriods(dumpPeriods));
+ weight, getDumpPeriods(dumpPeriods), dimensionReferences);
createCubeTable(dimTable, dumpPeriods.keySet());
}
Modified: hive/branches/HIVE-4115/ql/src/java/org/apache/hadoop/hive/ql/cube/metadata/MetastoreConstants.java
URL: http://svn.apache.org/viewvc/hive/branches/HIVE-4115/ql/src/java/org/apache/hadoop/hive/ql/cube/metadata/MetastoreConstants.java?rev=1481701&r1=1481700&r2=1481701&view=diff
==============================================================================
--- hive/branches/HIVE-4115/ql/src/java/org/apache/hadoop/hive/ql/cube/metadata/MetastoreConstants.java (original)
+++ hive/branches/HIVE-4115/ql/src/java/org/apache/hadoop/hive/ql/cube/metadata/MetastoreConstants.java Mon May 13 05:35:14 2013
@@ -2,6 +2,8 @@ package org.apache.hadoop.hive.ql.cube.m
public interface MetastoreConstants {
public static final String TABLE_TYPE_KEY = "cube.table.type";
+ public static final String CUBE_TABLE_PFX = "cube.table.";
+ public static final String WEIGHT_KEY_SFX = ".weight";
// Cube constants
public static final String CUBE_KEY_PFX = "cube.";
Modified: hive/branches/HIVE-4115/ql/src/java/org/apache/hadoop/hive/ql/cube/metadata/MetastoreUtil.java
URL: http://svn.apache.org/viewvc/hive/branches/HIVE-4115/ql/src/java/org/apache/hadoop/hive/ql/cube/metadata/MetastoreUtil.java?rev=1481701&r1=1481700&r2=1481701&view=diff
==============================================================================
--- hive/branches/HIVE-4115/ql/src/java/org/apache/hadoop/hive/ql/cube/metadata/MetastoreUtil.java (original)
+++ hive/branches/HIVE-4115/ql/src/java/org/apache/hadoop/hive/ql/cube/metadata/MetastoreUtil.java Mon May 13 05:35:14 2013
@@ -142,6 +142,10 @@ public class MetastoreUtil implements Me
return getCubePrefix(cubeName) + DIMENSIONS_LIST_SFX;
}
+ public static final String getCubeTableKeyPrefix(String tableName) {
+ return CUBE_TABLE_PFX + tableName.toLowerCase();
+ }
+
// //////////////////////////
// Fact propertes ///
// /////////////////////////
@@ -162,6 +166,10 @@ public class MetastoreUtil implements Me
return getFactKeyPrefix(name) + CUBE_NAME_SFX;
}
+ public static String getCubeTableWeightKey(String name) {
+ return getCubeTableKeyPrefix(name) + WEIGHT_KEY_SFX;
+ }
+
// //////////////////////////
// Utils ///
// /////////////////////////
Modified: hive/branches/HIVE-4115/ql/src/test/org/apache/hadoop/hive/ql/cube/metadata/TestCubeMetastoreClient.java
URL: http://svn.apache.org/viewvc/hive/branches/HIVE-4115/ql/src/test/org/apache/hadoop/hive/ql/cube/metadata/TestCubeMetastoreClient.java?rev=1481701&r1=1481700&r2=1481701&view=diff
==============================================================================
--- hive/branches/HIVE-4115/ql/src/test/org/apache/hadoop/hive/ql/cube/metadata/TestCubeMetastoreClient.java (original)
+++ hive/branches/HIVE-4115/ql/src/test/org/apache/hadoop/hive/ql/cube/metadata/TestCubeMetastoreClient.java Mon May 13 05:35:14 2013
@@ -132,7 +132,7 @@ public class TestCubeMetastoreClient {
// create cube fact
client.createCubeFactTable(cubeName, factName, factColumns,
- storageAggregatePeriods);
+ storageAggregatePeriods, 0L);
Assert.assertTrue(client.tableExists(factName));
Table cubeTbl = client.getHiveTable(factName);
Assert.assertTrue(client.isFactTable(cubeTbl));
@@ -158,6 +158,62 @@ public class TestCubeMetastoreClient {
}
@Test
+ public void testCubeFactWithWeight() throws Exception {
+ String factName = "testFactWithWeight";
+ List<FieldSchema> factColumns = new ArrayList<FieldSchema>(
+ cubeMeasures.size());
+ for (CubeMeasure measure : cubeMeasures) {
+ factColumns.add(measure.getColumn());
+ }
+
+ // add one dimension of the cube
+ factColumns.add(new FieldSchema("zipcode","int", "zip"));
+
+ Map<String, List<UpdatePeriod>> updatePeriods =
+ new HashMap<String, List<UpdatePeriod>>();
+ Map<Storage, List<UpdatePeriod>> storageAggregatePeriods =
+ new HashMap<Storage, List<UpdatePeriod>>();
+ List<UpdatePeriod> updates = new ArrayList<UpdatePeriod>();
+ updates.add(UpdatePeriod.HOURLY);
+ updates.add(UpdatePeriod.DAILY);
+ Storage hdfsStorage = new HDFSStorage("C1",
+ TextInputFormat.class.getCanonicalName(),
+ HiveIgnoreKeyTextOutputFormat.class.getCanonicalName());
+ storageAggregatePeriods.put(hdfsStorage, updates);
+ updatePeriods.put(hdfsStorage.getName(), updates);
+
+ CubeFactTable cubeFact = new CubeFactTable(cubeName, factName, factColumns,
+ updatePeriods, 100L);
+
+ // create cube fact
+ client.createCubeFactTable(cubeName, factName, factColumns,
+ storageAggregatePeriods, 100L);
+ Assert.assertTrue(client.tableExists(factName));
+ Table cubeTbl = client.getHiveTable(factName);
+ Assert.assertTrue(client.isFactTable(cubeTbl));
+ Assert.assertTrue(client.isFactTableForCube(cubeTbl, cube));
+ CubeFactTable cubeFact2 = new CubeFactTable(cubeTbl);
+ Assert.assertTrue(cubeFact.equals(cubeFact2));
+
+ // Assert for storage tables
+ for (Map.Entry<Storage, List<UpdatePeriod>> entry :
+ storageAggregatePeriods.entrySet()) {
+ List<UpdatePeriod> updatePeriodsList = entry.getValue();
+ for (UpdatePeriod period : updatePeriodsList) {
+ String storageTableName = MetastoreUtil.getFactStorageTableName(
+ factName, period, entry.getKey().getPrefix());
+ Assert.assertTrue(client.tableExists(storageTableName));
+ }
+ }
+
+ // test partition
+ client.addPartition(cubeFact, hdfsStorage, UpdatePeriod.HOURLY, now);
+ Assert.assertTrue(client.factPartitionExists(cubeFact, hdfsStorage,
+ UpdatePeriod.HOURLY, now));
+ }
+
+
+ @Test
public void testCubeFactWithParts() throws Exception {
List<FieldSchema> factColumns = new ArrayList<FieldSchema>(
cubeMeasures.size());
@@ -191,7 +247,7 @@ public class TestCubeMetastoreClient {
CubeFactTable cubeFactWithParts = new CubeFactTable(cubeName,
factNameWithPart, factColumns, updatePeriods);
client.createCubeFactTable(cubeName, factNameWithPart, factColumns,
- storageAggregatePeriods);
+ storageAggregatePeriods, 0L);
Assert.assertTrue(client.tableExists(factNameWithPart));
Table cubeTbl = client.getHiveTable(factNameWithPart);
Assert.assertTrue(client.isFactTable(cubeTbl));
@@ -260,7 +316,7 @@ public class TestCubeMetastoreClient {
CubeFactTable cubeFactWithTwoStorages = new CubeFactTable(cubeName,
factName, factColumns, updatePeriods);
client.createCubeFactTable(cubeName, factName, factColumns,
- storageAggregatePeriods);
+ storageAggregatePeriods, 0L);
Assert.assertTrue(client.tableExists(factName));
Table cubeTbl = client.getHiveTable(factName);
Assert.assertTrue(client.isFactTable(cubeTbl));
@@ -296,6 +352,51 @@ public class TestCubeMetastoreClient {
}
@Test
+ public void testCubeDimWithWeight() throws Exception {
+ String dimName = "statetable";
+
+ List<FieldSchema> dimColumns = new ArrayList<FieldSchema>();
+ dimColumns.add(new FieldSchema("id", "int", "state id"));
+ dimColumns.add(new FieldSchema("name", "string", "field1"));
+ dimColumns.add(new FieldSchema("capital", "string", "field2"));
+ dimColumns.add(new FieldSchema("countryid", "int", "country id"));
+
+ Map<String, TableReference> dimensionReferences =
+ new HashMap<String, TableReference>();
+ dimensionReferences.put("countryid", new TableReference("countrytable", "id"));
+
+ Map<Storage, UpdatePeriod> snapshotDumpPeriods =
+ new HashMap<Storage, UpdatePeriod>();
+ Map<String, UpdatePeriod> dumpPeriods = new HashMap<String, UpdatePeriod>();
+ Storage hdfsStorage = new HDFSStorage("C1",
+ TextInputFormat.class.getCanonicalName(),
+ HiveIgnoreKeyTextOutputFormat.class.getCanonicalName());
+ snapshotDumpPeriods.put(hdfsStorage, UpdatePeriod.HOURLY);
+ dumpPeriods.put(hdfsStorage.getName(), UpdatePeriod.HOURLY);
+ CubeDimensionTable cubeDim = new CubeDimensionTable(dimName,
+ dimColumns, 100L, dumpPeriods, dimensionReferences);
+ client.createCubeDimensionTable(dimName, dimColumns, 100L,
+ dimensionReferences, snapshotDumpPeriods);
+ Assert.assertTrue(client.tableExists(dimName));
+ Table cubeTbl = client.getHiveTable(dimName);
+ Assert.assertTrue(client.isDimensionTable(cubeTbl));
+ CubeDimensionTable cubeDim2 = new CubeDimensionTable(cubeTbl);
+ Assert.assertTrue(cubeDim.equals(cubeDim2));
+
+ // Assert for storage tables
+ for (Storage storage : snapshotDumpPeriods.keySet()) {
+ String storageTableName = MetastoreUtil.getDimStorageTableName(dimName,
+ storage.getPrefix());
+ Assert.assertTrue(client.tableExists(storageTableName));
+ }
+
+ // test partition
+ client.addPartition(cubeDim, hdfsStorage, now);
+ Assert.assertTrue(client.dimPartitionExists(cubeDim, hdfsStorage, now));
+ Assert.assertTrue(client.latestPartitionExists(cubeDim, hdfsStorage));
+ }
+
+ @Test
public void testCubeDim() throws Exception {
String dimName = "ziptable";
@@ -318,9 +419,9 @@ public class TestCubeMetastoreClient {
snapshotDumpPeriods.put(hdfsStorage, UpdatePeriod.HOURLY);
dumpPeriods.put(hdfsStorage.getName(), UpdatePeriod.HOURLY);
CubeDimensionTable cubeDim = new CubeDimensionTable(dimName,
- dimColumns, dimensionReferences, dumpPeriods);
- client.createCubeDimensionTable(dimName, dimColumns, dimensionReferences,
- snapshotDumpPeriods);
+ dimColumns, 0L, dumpPeriods, dimensionReferences);
+ client.createCubeDimensionTable(dimName, dimColumns, 0L,
+ dimensionReferences, snapshotDumpPeriods);
Assert.assertTrue(client.tableExists(dimName));
Table cubeTbl = client.getHiveTable(dimName);
Assert.assertTrue(client.isDimensionTable(cubeTbl));
@@ -340,6 +441,7 @@ public class TestCubeMetastoreClient {
Assert.assertTrue(client.latestPartitionExists(cubeDim, hdfsStorage));
}
+
@Test
public void testCubeDimWithoutDumps() throws Exception {
String dimName = "countrytable";
@@ -358,11 +460,13 @@ public class TestCubeMetastoreClient {
TextInputFormat.class.getCanonicalName(),
HiveIgnoreKeyTextOutputFormat.class.getCanonicalName());
Set<Storage> storages = new HashSet<Storage>();
+ Set<String> storageNames = new HashSet<String>();
storages.add(hdfsStorage);
+ storageNames.add(hdfsStorage.getName());
CubeDimensionTable cubeDim = new CubeDimensionTable(dimName,
- dimColumns, dimensionReferences);
- client.createCubeDimensionTable(dimName, dimColumns, dimensionReferences,
- storages);
+ dimColumns, 0L, storageNames, dimensionReferences);
+ client.createCubeDimensionTable(dimName, dimColumns, 0L,
+ dimensionReferences, storages);
Assert.assertTrue(client.tableExists(dimName));
Table cubeTbl = client.getHiveTable(dimName);
Assert.assertTrue(client.isDimensionTable(cubeTbl));
@@ -405,9 +509,9 @@ public class TestCubeMetastoreClient {
snapshotDumpPeriods.put(hdfsStorage2, null);
dumpPeriods.put(hdfsStorage2.getName(), null);
CubeDimensionTable cubeDim = new CubeDimensionTable(dimName,
- dimColumns, dimensionReferences, dumpPeriods);
- client.createCubeDimensionTable(dimName, dimColumns, dimensionReferences,
- snapshotDumpPeriods);
+ dimColumns, 0L, dumpPeriods, dimensionReferences);
+ client.createCubeDimensionTable(dimName, dimColumns, 0L,
+ dimensionReferences, snapshotDumpPeriods);
Assert.assertTrue(client.tableExists(dimName));
Table cubeTbl = client.getHiveTable(dimName);
Assert.assertTrue(client.isDimensionTable(cubeTbl));
Modified: hive/branches/HIVE-4115/ql/src/test/org/apache/hadoop/hive/ql/cube/parse/CubeTestSetup.java
URL: http://svn.apache.org/viewvc/hive/branches/HIVE-4115/ql/src/test/org/apache/hadoop/hive/ql/cube/parse/CubeTestSetup.java?rev=1481701&r1=1481700&r2=1481701&view=diff
==============================================================================
--- hive/branches/HIVE-4115/ql/src/test/org/apache/hadoop/hive/ql/cube/parse/CubeTestSetup.java (original)
+++ hive/branches/HIVE-4115/ql/src/test/org/apache/hadoop/hive/ql/cube/parse/CubeTestSetup.java Mon May 13 05:35:14 2013
@@ -118,7 +118,7 @@ public class CubeTestSetup {
// create cube fact
client.createCubeFactTable(cubeName, factName, factColumns,
- storageAggregatePeriods);
+ storageAggregatePeriods, 0L);
}
private void createCubeFactOnlyHourly(CubeMetastoreClient client)
@@ -145,7 +145,7 @@ public class CubeTestSetup {
// create cube fact
client.createCubeFactTable(cubeName, factName, factColumns,
- storageAggregatePeriods);
+ storageAggregatePeriods, 0L);
}
private void createCubeFactMonthly(CubeMetastoreClient client)
@@ -171,7 +171,7 @@ public class CubeTestSetup {
// create cube fact
client.createCubeFactTable(cubeName, factName, factColumns,
- storageAggregatePeriods);
+ storageAggregatePeriods, 0L);
}
//DimWithTwoStorages
@@ -203,8 +203,8 @@ public class CubeTestSetup {
new HashMap<Storage, UpdatePeriod>();
snapshotDumpPeriods.put(hdfsStorage1, UpdatePeriod.HOURLY);
snapshotDumpPeriods.put(hdfsStorage2, null);
- client.createCubeDimensionTable(dimName, dimColumns, dimensionReferences,
- snapshotDumpPeriods);
+ client.createCubeDimensionTable(dimName, dimColumns, 0L,
+ dimensionReferences, snapshotDumpPeriods);
}
private void createZiptable(CubeMetastoreClient client) throws Exception {
@@ -225,8 +225,8 @@ public class CubeTestSetup {
HiveIgnoreKeyTextOutputFormat.class.getCanonicalName());
snapshotDumpPeriods.put(hdfsStorage, UpdatePeriod.HOURLY);
dumpPeriods.put(hdfsStorage.getName(), UpdatePeriod.HOURLY);
- client.createCubeDimensionTable(dimName, dimColumns, dimensionReferences,
- snapshotDumpPeriods);
+ client.createCubeDimensionTable(dimName, dimColumns, 0L,
+ dimensionReferences, snapshotDumpPeriods);
}
private void createCountryTable(CubeMetastoreClient client) throws Exception {
@@ -247,8 +247,8 @@ public class CubeTestSetup {
Map<Storage, UpdatePeriod> snapshotDumpPeriods =
new HashMap<Storage, UpdatePeriod>();
snapshotDumpPeriods.put(hdfsStorage, null);
- client.createCubeDimensionTable(dimName, dimColumns, dimensionReferences,
- snapshotDumpPeriods);
+ client.createCubeDimensionTable(dimName, dimColumns, 0L,
+ dimensionReferences, snapshotDumpPeriods);
}
private void createStateTable(CubeMetastoreClient client) throws Exception {
@@ -271,8 +271,8 @@ public class CubeTestSetup {
Map<Storage, UpdatePeriod> snapshotDumpPeriods =
new HashMap<Storage, UpdatePeriod>();
snapshotDumpPeriods.put(hdfsStorage, UpdatePeriod.HOURLY);
- client.createCubeDimensionTable(dimName, dimColumns, dimensionReferences,
- snapshotDumpPeriods);
+ client.createCubeDimensionTable(dimName, dimColumns, 0L,
+ dimensionReferences, snapshotDumpPeriods);
}
public void createSources() throws Exception {