TAJO-1986: Rename the name 'option' to 'property' in TableMeta. Closes #872
Project: http://git-wip-us.apache.org/repos/asf/tajo/repo Commit: http://git-wip-us.apache.org/repos/asf/tajo/commit/b3d4a340 Tree: http://git-wip-us.apache.org/repos/asf/tajo/tree/b3d4a340 Diff: http://git-wip-us.apache.org/repos/asf/tajo/diff/b3d4a340 Branch: refs/heads/master Commit: b3d4a34029acb6edca83e3a41422c914dfd88ee1 Parents: 8b2fe11 Author: Hyunsik Choi <[email protected]> Authored: Tue Nov 24 20:37:08 2015 -0800 Committer: Hyunsik Choi <[email protected]> Committed: Tue Nov 24 20:37:08 2015 -0800 ---------------------------------------------------------------------- CHANGES | 4 +- .../org/apache/tajo/catalog/DDLBuilder.java | 6 +-- .../java/org/apache/tajo/catalog/TableMeta.java | 42 ++++++++++---------- .../tajo/catalog/json/TableMetaAdapter.java | 2 +- .../org/apache/tajo/catalog/TestTableMeta.java | 2 +- .../tajo/catalog/store/HiveCatalogStore.java | 26 ++++++------ .../catalog/store/TestHiveCatalogStore.java | 24 +++++------ .../apache/tajo/catalog/CatalogTestingUtil.java | 2 +- .../org/apache/tajo/catalog/TestCatalog.java | 6 +-- .../TestCatalogAgainstCaseSensitivity.java | 10 ++--- .../java/org/apache/tajo/QueryTestCaseBase.java | 2 +- .../apache/tajo/cli/tools/TestDDLBuilder.java | 4 +- .../org/apache/tajo/client/TestTajoClient.java | 2 +- .../apache/tajo/engine/query/TestCTASQuery.java | 2 +- .../tajo/engine/query/TestCreateTable.java | 4 +- .../java/org/apache/tajo/benchmark/TPCH.java | 2 +- .../planner/physical/PhysicalPlanUtil.java | 12 +++--- .../apache/tajo/master/exec/QueryExecutor.java | 4 +- .../java/org/apache/tajo/querymaster/Query.java | 2 +- .../org/apache/tajo/plan/LogicalPlanner.java | 2 +- .../org/apache/tajo/plan/TablePropertyUtil.java | 4 +- .../tajo/plan/function/stream/CSVLineSerDe.java | 2 +- .../stream/TextFieldSerializerDeserializer.java | 4 +- .../plan/function/stream/TextLineSerDe.java | 2 +- .../apache/tajo/plan/logical/InsertNode.java | 2 +- .../storage/hbase/AbstractHBaseAppender.java | 2 +- .../apache/tajo/storage/hbase/HBaseScanner.java | 4 +- .../tajo/storage/hbase/HBaseTablespace.java | 32 +++++++-------- .../tajo/storage/hbase/TestColumnMapping.java | 2 +- .../java/org/apache/tajo/storage/RowFile.java | 2 +- .../org/apache/tajo/storage/avro/AvroUtil.java | 8 ++-- .../tajo/storage/json/JsonLineDeserializer.java | 4 +- .../tajo/storage/json/JsonLineSerializer.java | 4 +- .../apache/tajo/storage/orc/ORCAppender.java | 10 ++--- .../org/apache/tajo/storage/orc/ORCScanner.java | 4 +- .../tajo/storage/parquet/ParquetAppender.java | 10 ++--- .../storage/rawfile/DirectRawFileWriter.java | 2 +- .../org/apache/tajo/storage/rcfile/RCFile.java | 12 +++--- .../sequencefile/SequenceFileAppender.java | 12 +++--- .../sequencefile/SequenceFileScanner.java | 6 +-- .../tajo/storage/text/CSVLineDeserializer.java | 4 +- .../apache/tajo/storage/text/CSVLineSerDe.java | 2 +- .../tajo/storage/text/DelimitedTextFile.java | 10 ++--- .../text/TextFieldSerializerDeserializer.java | 4 +- .../apache/tajo/storage/text/TextLineSerDe.java | 2 +- .../tajo/storage/TestCompressionStorages.java | 8 ++-- .../tajo/storage/TestDelimitedTextFile.java | 26 +++++------- .../org/apache/tajo/storage/TestLineReader.java | 2 +- .../apache/tajo/storage/TestMergeScanner.java | 4 +- .../org/apache/tajo/storage/TestStorages.java | 42 ++++++++++---------- .../apache/tajo/storage/avro/TestAvroUtil.java | 6 +-- 51 files changed, 198 insertions(+), 200 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/tajo/blob/b3d4a340/CHANGES ---------------------------------------------------------------------- diff --git a/CHANGES b/CHANGES index 3eec97e..be0a699 100644 --- a/CHANGES +++ b/CHANGES @@ -8,9 +8,11 @@ Release 0.12.0 - unreleased IMPROVEMENT + TAJO-1986: Rename the name 'option' to 'property' in TableMeta. (hyunsik) + TAJO-1988: Remove some duplicated codes in toString() of Projectable. (hyunsik) - + TAJO-1984: Removed unused FileTablespace::getSplit methods. (hyunsik) TAJO-1271: Improve memory usage of Hash-shuffle. (jinho) http://git-wip-us.apache.org/repos/asf/tajo/blob/b3d4a340/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/DDLBuilder.java ---------------------------------------------------------------------- diff --git a/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/DDLBuilder.java b/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/DDLBuilder.java index a597d14..e2250eb 100644 --- a/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/DDLBuilder.java +++ b/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/DDLBuilder.java @@ -120,14 +120,14 @@ public class DDLBuilder { } private static void buildWithClause(final StringBuilder sb, TableMeta meta) { - KeyValueSet options = meta.getOptions(); + KeyValueSet options = meta.getPropertySet(); if (options != null && options.size() > 0) { sb.append(" WITH ("); // sort table properties in an lexicographic order of the property keys. - Entry<String, String> [] entries = meta.getOptions().getAllKeyValus().entrySet().toArray( - new Entry[meta.getOptions().size()]); + Entry<String, String> [] entries = meta.getPropertySet().getAllKeyValus().entrySet().toArray( + new Entry[meta.getPropertySet().size()]); Arrays.sort(entries, new Comparator<Entry<String, String>>() { @Override http://git-wip-us.apache.org/repos/asf/tajo/blob/b3d4a340/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/TableMeta.java ---------------------------------------------------------------------- diff --git a/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/TableMeta.java b/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/TableMeta.java index cfbbf75..6f37b8c 100644 --- a/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/TableMeta.java +++ b/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/TableMeta.java @@ -36,48 +36,48 @@ import java.util.Map; */ public class TableMeta implements ProtoObject<CatalogProtos.TableProto>, GsonObject, Cloneable { @Expose protected String dataFormat; - @Expose protected KeyValueSet options; + @Expose protected KeyValueSet propertySet; - public TableMeta(String dataFormat, KeyValueSet options) { + public TableMeta(String dataFormat, KeyValueSet propertySet) { this.dataFormat = dataFormat; - this.options = new KeyValueSet(options); + this.propertySet = new KeyValueSet(propertySet); } public TableMeta(TableProto proto) { this.dataFormat = proto.getDataFormat(); - this.options = new KeyValueSet(proto.getParams()); + this.propertySet = new KeyValueSet(proto.getParams()); } public String getDataFormat() { return this.dataFormat; } - public void setOptions(KeyValueSet options) { - this.options = options; + public void setPropertySet(KeyValueSet options) { + this.propertySet = options; } - public void putOption(String key, String val) { - options.set(key, val); + public KeyValueSet getPropertySet() { + return propertySet; } - public boolean containsOption(String key) { - return options.containsKey(key); + public void putProperty(String key, String val) { + propertySet.set(key, val); } - public String getOption(String key) { - return options.get(key); + public boolean containsProperty(String key) { + return propertySet.containsKey(key); } - public String getOption(String key, String defaultValue) { - return options.get(key, defaultValue); + public String getProperty(String key) { + return propertySet.get(key); } - public KeyValueSet getOptions() { - return options; + public String getProperty(String key, String defaultValue) { + return propertySet.get(key, defaultValue); } public Map<String,String> toMap() { - return getOptions().getAllKeyValus(); + return getPropertySet().getAllKeyValus(); } public boolean equals(Object object) { @@ -85,7 +85,7 @@ public class TableMeta implements ProtoObject<CatalogProtos.TableProto>, GsonObj TableMeta other = (TableMeta) object; boolean eq = this.getDataFormat().equals(other.getDataFormat()); - eq = eq && this.getOptions().equals(other.getOptions()); + eq = eq && this.getPropertySet().equals(other.getPropertySet()); return eq; } @@ -93,14 +93,14 @@ public class TableMeta implements ProtoObject<CatalogProtos.TableProto>, GsonObj } public int hashCode() { - return Objects.hashCode(getDataFormat(), getOptions()); + return Objects.hashCode(getDataFormat(), getPropertySet()); } @Override public Object clone() throws CloneNotSupportedException { TableMeta meta = (TableMeta) super.clone(); meta.dataFormat = getDataFormat(); - meta.options = (KeyValueSet) (toMap() != null ? options.clone() : null); + meta.propertySet = (KeyValueSet) (toMap() != null ? propertySet.clone() : null); return meta; } @@ -116,7 +116,7 @@ public class TableMeta implements ProtoObject<CatalogProtos.TableProto>, GsonObj public TableProto getProto() { TableProto.Builder builder = TableProto.newBuilder(); builder.setDataFormat(dataFormat); - builder.setParams(options.getProto()); + builder.setParams(propertySet.getProto()); return builder.build(); } http://git-wip-us.apache.org/repos/asf/tajo/blob/b3d4a340/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/json/TableMetaAdapter.java ---------------------------------------------------------------------- diff --git a/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/json/TableMetaAdapter.java b/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/json/TableMetaAdapter.java index 766a8a9..6b2e931 100644 --- a/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/json/TableMetaAdapter.java +++ b/tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/json/TableMetaAdapter.java @@ -46,7 +46,7 @@ public class TableMetaAdapter implements GsonSerDerAdapter<TableMeta> { JsonSerializationContext context) { JsonObject jsonObj = new JsonObject(); jsonObj.addProperty("store", src.getDataFormat()); - jsonObj.add("options", context.serialize(src.getOptions(), KeyValueSet.class)); + jsonObj.add("options", context.serialize(src.getPropertySet(), KeyValueSet.class)); return jsonObj; } http://git-wip-us.apache.org/repos/asf/tajo/blob/b3d4a340/tajo-catalog/tajo-catalog-common/src/test/java/org/apache/tajo/catalog/TestTableMeta.java ---------------------------------------------------------------------- diff --git a/tajo-catalog/tajo-catalog-common/src/test/java/org/apache/tajo/catalog/TestTableMeta.java b/tajo-catalog/tajo-catalog-common/src/test/java/org/apache/tajo/catalog/TestTableMeta.java index 3f1d5c5..d85fc48 100644 --- a/tajo-catalog/tajo-catalog-common/src/test/java/org/apache/tajo/catalog/TestTableMeta.java +++ b/tajo-catalog/tajo-catalog-common/src/test/java/org/apache/tajo/catalog/TestTableMeta.java @@ -98,7 +98,7 @@ public class TestTableMeta { TableMeta meta1 = CatalogUtil.newTableMeta(BuiltinStorages.TEXT); for (int i = 0; i < MAX_COUNT; i++) { - meta1.putOption("key"+i, "value"+i); + meta1.putProperty("key"+i, "value"+i); } PrimitiveProtos.KeyValueSetProto.Builder optionBuilder = PrimitiveProtos.KeyValueSetProto.newBuilder(); http://git-wip-us.apache.org/repos/asf/tajo/blob/b3d4a340/tajo-catalog/tajo-catalog-drivers/tajo-hive/src/main/java/org/apache/tajo/catalog/store/HiveCatalogStore.java ---------------------------------------------------------------------- diff --git a/tajo-catalog/tajo-catalog-drivers/tajo-hive/src/main/java/org/apache/tajo/catalog/store/HiveCatalogStore.java b/tajo-catalog/tajo-catalog-drivers/tajo-hive/src/main/java/org/apache/tajo/catalog/store/HiveCatalogStore.java index f8bc07e..f025135 100644 --- a/tajo-catalog/tajo-catalog-drivers/tajo-hive/src/main/java/org/apache/tajo/catalog/store/HiveCatalogStore.java +++ b/tajo-catalog/tajo-catalog-drivers/tajo-hive/src/main/java/org/apache/tajo/catalog/store/HiveCatalogStore.java @@ -448,7 +448,7 @@ public class HiveCatalogStore extends CatalogConstants implements CatalogStore { org.apache.hadoop.hive.metastore.api.Table table = new org.apache.hadoop.hive.metastore.api.Table(); table.setDbName(databaseName); table.setTableName(tableName); - table.setParameters(new HashMap<>(tableDesc.getMeta().getOptions().getAllKeyValus())); + table.setParameters(new HashMap<>(tableDesc.getMeta().getPropertySet().getAllKeyValus())); // TODO: set owner //table.setOwner(); @@ -496,16 +496,16 @@ public class HiveCatalogStore extends CatalogConstants implements CatalogStore { sd.setInputFormat(descriptor.getInputFormat()); sd.setOutputFormat(descriptor.getOutputFormat()); - String serde = tableDesc.getMeta().getOption(StorageConstants.RCFILE_SERDE); + String serde = tableDesc.getMeta().getProperty(StorageConstants.RCFILE_SERDE); if (StorageConstants.DEFAULT_TEXT_SERDE.equals(serde)) { sd.getSerdeInfo().setSerializationLib(ColumnarSerDe.class.getName()); } else { sd.getSerdeInfo().setSerializationLib(LazyBinaryColumnarSerDe.class.getName()); } - if (tableDesc.getMeta().getOptions().containsKey(StorageConstants.RCFILE_NULL)) { + if (tableDesc.getMeta().getPropertySet().containsKey(StorageConstants.RCFILE_NULL)) { table.putToParameters(serdeConstants.SERIALIZATION_NULL_FORMAT, - StringEscapeUtils.unescapeJava(tableDesc.getMeta().getOption(StorageConstants.RCFILE_NULL))); + StringEscapeUtils.unescapeJava(tableDesc.getMeta().getProperty(StorageConstants.RCFILE_NULL))); } } else if (tableDesc.getMeta().getDataFormat().equals(BuiltinStorages.TEXT)) { // TextFileStorageFormatDescriptor has deprecated class. so the class name set directly @@ -513,7 +513,7 @@ public class HiveCatalogStore extends CatalogConstants implements CatalogStore { sd.setOutputFormat(HiveIgnoreKeyTextOutputFormat.class.getName()); sd.getSerdeInfo().setSerializationLib(LazySimpleSerDe.class.getName()); - String fieldDelimiter = tableDesc.getMeta().getOption(StorageConstants.TEXT_DELIMITER, + String fieldDelimiter = tableDesc.getMeta().getProperty(StorageConstants.TEXT_DELIMITER, StorageConstants.DEFAULT_FIELD_DELIMITER); // User can use an unicode for filed delimiter such as \u0001, \001. @@ -527,9 +527,9 @@ public class HiveCatalogStore extends CatalogConstants implements CatalogStore { StringEscapeUtils.unescapeJava(fieldDelimiter)); table.getParameters().remove(StorageConstants.TEXT_DELIMITER); - if (tableDesc.getMeta().containsOption(StorageConstants.TEXT_NULL)) { + if (tableDesc.getMeta().containsProperty(StorageConstants.TEXT_NULL)) { table.putToParameters(serdeConstants.SERIALIZATION_NULL_FORMAT, - StringEscapeUtils.unescapeJava(tableDesc.getMeta().getOption(StorageConstants.TEXT_NULL))); + StringEscapeUtils.unescapeJava(tableDesc.getMeta().getProperty(StorageConstants.TEXT_NULL))); table.getParameters().remove(StorageConstants.TEXT_NULL); } } else if (tableDesc.getMeta().getDataFormat().equalsIgnoreCase(BuiltinStorages.SEQUENCE_FILE)) { @@ -537,12 +537,12 @@ public class HiveCatalogStore extends CatalogConstants implements CatalogStore { sd.setInputFormat(descriptor.getInputFormat()); sd.setOutputFormat(descriptor.getOutputFormat()); - String serde = tableDesc.getMeta().getOption(StorageConstants.SEQUENCEFILE_SERDE); + String serde = tableDesc.getMeta().getProperty(StorageConstants.SEQUENCEFILE_SERDE); if (StorageConstants.DEFAULT_TEXT_SERDE.equals(serde)) { sd.getSerdeInfo().setSerializationLib(LazySimpleSerDe.class.getName()); - String fieldDelimiter = tableDesc.getMeta().getOption(StorageConstants.SEQUENCEFILE_DELIMITER, + String fieldDelimiter = tableDesc.getMeta().getProperty(StorageConstants.SEQUENCEFILE_DELIMITER, StorageConstants.DEFAULT_FIELD_DELIMITER); // User can use an unicode for filed delimiter such as \u0001, \001. @@ -559,9 +559,9 @@ public class HiveCatalogStore extends CatalogConstants implements CatalogStore { sd.getSerdeInfo().setSerializationLib(LazyBinarySerDe.class.getName()); } - if (tableDesc.getMeta().containsOption(StorageConstants.SEQUENCEFILE_NULL)) { + if (tableDesc.getMeta().containsProperty(StorageConstants.SEQUENCEFILE_NULL)) { table.putToParameters(serdeConstants.SERIALIZATION_NULL_FORMAT, - StringEscapeUtils.unescapeJava(tableDesc.getMeta().getOption(StorageConstants.SEQUENCEFILE_NULL))); + StringEscapeUtils.unescapeJava(tableDesc.getMeta().getProperty(StorageConstants.SEQUENCEFILE_NULL))); table.getParameters().remove(StorageConstants.SEQUENCEFILE_NULL); } } else if (tableDesc.getMeta().getDataFormat().equalsIgnoreCase(BuiltinStorages.PARQUET)) { @@ -570,9 +570,9 @@ public class HiveCatalogStore extends CatalogConstants implements CatalogStore { sd.setOutputFormat(descriptor.getOutputFormat()); sd.getSerdeInfo().setSerializationLib(descriptor.getSerde()); - if (tableDesc.getMeta().containsOption(ParquetOutputFormat.COMPRESSION)) { + if (tableDesc.getMeta().containsProperty(ParquetOutputFormat.COMPRESSION)) { table.putToParameters(ParquetOutputFormat.COMPRESSION, - tableDesc.getMeta().getOption(ParquetOutputFormat.COMPRESSION)); + tableDesc.getMeta().getProperty(ParquetOutputFormat.COMPRESSION)); } } else { throw new UnsupportedException(tableDesc.getMeta().getDataFormat() + " in HivecatalogStore"); http://git-wip-us.apache.org/repos/asf/tajo/blob/b3d4a340/tajo-catalog/tajo-catalog-drivers/tajo-hive/src/test/java/org/apache/tajo/catalog/store/TestHiveCatalogStore.java ---------------------------------------------------------------------- diff --git a/tajo-catalog/tajo-catalog-drivers/tajo-hive/src/test/java/org/apache/tajo/catalog/store/TestHiveCatalogStore.java b/tajo-catalog/tajo-catalog-drivers/tajo-hive/src/test/java/org/apache/tajo/catalog/store/TestHiveCatalogStore.java index 7608a7b..b4bc53f 100644 --- a/tajo-catalog/tajo-catalog-drivers/tajo-hive/src/test/java/org/apache/tajo/catalog/store/TestHiveCatalogStore.java +++ b/tajo-catalog/tajo-catalog-drivers/tajo-hive/src/test/java/org/apache/tajo/catalog/store/TestHiveCatalogStore.java @@ -125,7 +125,7 @@ public class TestHiveCatalogStore { } assertEquals(StringEscapeUtils.escapeJava(StorageConstants.DEFAULT_FIELD_DELIMITER), - table1.getMeta().getOption(StorageConstants.TEXT_DELIMITER)); + table1.getMeta().getProperty(StorageConstants.TEXT_DELIMITER)); store.dropTable(DB_NAME, CUSTOMER); } @@ -159,7 +159,7 @@ public class TestHiveCatalogStore { } assertEquals(StorageConstants.DEFAULT_BINARY_SERDE, - table1.getMeta().getOption(StorageConstants.RCFILE_SERDE)); + table1.getMeta().getProperty(StorageConstants.RCFILE_SERDE)); store.dropTable(DB_NAME, REGION); } @@ -192,7 +192,7 @@ public class TestHiveCatalogStore { assertEquals(table.getSchema().getColumn(i).getSimpleName(), table1.getSchema().getColumn(i).getSimpleName()); } - assertEquals(StorageConstants.DEFAULT_TEXT_SERDE, table1.getMeta().getOption(StorageConstants.RCFILE_SERDE)); + assertEquals(StorageConstants.DEFAULT_TEXT_SERDE, table1.getMeta().getProperty(StorageConstants.RCFILE_SERDE)); store.dropTable(DB_NAME, REGION); } @@ -232,16 +232,16 @@ public class TestHiveCatalogStore { assertEquals(table.getSchema().getColumn(i).getSimpleName(), table1.getSchema().getColumn(i).getSimpleName()); } - assertEquals(table.getMeta().getOption(StorageConstants.TEXT_DELIMITER), - table1.getMeta().getOption(StorageConstants.TEXT_DELIMITER)); + assertEquals(table.getMeta().getProperty(StorageConstants.TEXT_DELIMITER), + table1.getMeta().getProperty(StorageConstants.TEXT_DELIMITER)); - assertEquals(table.getMeta().getOption(StorageConstants.TEXT_NULL), - table1.getMeta().getOption(StorageConstants.TEXT_NULL)); + assertEquals(table.getMeta().getProperty(StorageConstants.TEXT_NULL), + table1.getMeta().getProperty(StorageConstants.TEXT_NULL)); - assertEquals(table1.getMeta().getOption(StorageConstants.TEXT_DELIMITER), + assertEquals(table1.getMeta().getProperty(StorageConstants.TEXT_DELIMITER), StringEscapeUtils.escapeJava("\u0002")); - assertEquals(table1.getMeta().getOption(StorageConstants.TEXT_NULL), + assertEquals(table1.getMeta().getProperty(StorageConstants.TEXT_NULL), StringEscapeUtils.escapeJava("\u0003")); store.dropTable(DB_NAME, SUPPLIER); @@ -577,7 +577,7 @@ public class TestHiveCatalogStore { } assertEquals(StorageConstants.DEFAULT_BINARY_SERDE, - table1.getMeta().getOption(StorageConstants.SEQUENCEFILE_SERDE)); + table1.getMeta().getProperty(StorageConstants.SEQUENCEFILE_SERDE)); store.dropTable(DB_NAME, REGION); } @@ -610,7 +610,7 @@ public class TestHiveCatalogStore { assertEquals(table.getSchema().getColumn(i).getSimpleName(), table1.getSchema().getColumn(i).getSimpleName()); } - assertEquals(StorageConstants.DEFAULT_TEXT_SERDE, table1.getMeta().getOption(StorageConstants.SEQUENCEFILE_SERDE)); + assertEquals(StorageConstants.DEFAULT_TEXT_SERDE, table1.getMeta().getProperty(StorageConstants.SEQUENCEFILE_SERDE)); store.dropTable(DB_NAME, REGION); } @@ -683,7 +683,7 @@ public class TestHiveCatalogStore { } assertEquals(StringEscapeUtils.escapeJava(StorageConstants.DEFAULT_FIELD_DELIMITER), - table1.getMeta().getOption(StorageConstants.TEXT_DELIMITER)); + table1.getMeta().getProperty(StorageConstants.TEXT_DELIMITER)); store.dropTable(DB_NAME, tableName); } } http://git-wip-us.apache.org/repos/asf/tajo/blob/b3d4a340/tajo-catalog/tajo-catalog-server/src/test/java/org/apache/tajo/catalog/CatalogTestingUtil.java ---------------------------------------------------------------------- diff --git a/tajo-catalog/tajo-catalog-server/src/test/java/org/apache/tajo/catalog/CatalogTestingUtil.java b/tajo-catalog/tajo-catalog-server/src/test/java/org/apache/tajo/catalog/CatalogTestingUtil.java index ea89790..a041adc 100644 --- a/tajo-catalog/tajo-catalog-server/src/test/java/org/apache/tajo/catalog/CatalogTestingUtil.java +++ b/tajo-catalog/tajo-catalog-server/src/test/java/org/apache/tajo/catalog/CatalogTestingUtil.java @@ -208,7 +208,7 @@ public class CatalogTestingUtil { new TableMeta("TEXT", new KeyValueSet()), path.toUri(), true); desc.setStats(buildTableStats()); - desc.getMeta().setOptions(buildOptions()); + desc.getMeta().setPropertySet(buildOptions()); return desc; } http://git-wip-us.apache.org/repos/asf/tajo/blob/b3d4a340/tajo-catalog/tajo-catalog-server/src/test/java/org/apache/tajo/catalog/TestCatalog.java ---------------------------------------------------------------------- diff --git a/tajo-catalog/tajo-catalog-server/src/test/java/org/apache/tajo/catalog/TestCatalog.java b/tajo-catalog/tajo-catalog-server/src/test/java/org/apache/tajo/catalog/TestCatalog.java index ffd5361..2a23e94 100644 --- a/tajo-catalog/tajo-catalog-server/src/test/java/org/apache/tajo/catalog/TestCatalog.java +++ b/tajo-catalog/tajo-catalog-server/src/test/java/org/apache/tajo/catalog/TestCatalog.java @@ -986,12 +986,12 @@ public class TestCatalog { KeyValueSet options = new KeyValueSet(); options.set("timezone", "GMT+9"); // Seoul, Korea setPropertyDesc.setMeta(new TableMeta("TEXT", options)); - String prevTimeZone = setPropertyDesc.getMeta().getOption("timezone"); + String prevTimeZone = setPropertyDesc.getMeta().getProperty("timezone"); String newTimeZone = "GMT-7"; // Silicon Valley, California catalog.alterTable(createMockAlterTableSetProperty(newTimeZone)); setPropertyDesc = catalog.getTableDesc("default","mynewcooltable"); - assertNotEquals(prevTimeZone, setPropertyDesc.getMeta().getOption("timezone")); - assertEquals(newTimeZone, setPropertyDesc.getMeta().getOption("timezone")); + assertNotEquals(prevTimeZone, setPropertyDesc.getMeta().getProperty("timezone")); + assertEquals(newTimeZone, setPropertyDesc.getMeta().getProperty("timezone")); } private AlterTableDesc createMockAlterTableName(){ http://git-wip-us.apache.org/repos/asf/tajo/blob/b3d4a340/tajo-catalog/tajo-catalog-server/src/test/java/org/apache/tajo/catalog/TestCatalogAgainstCaseSensitivity.java ---------------------------------------------------------------------- diff --git a/tajo-catalog/tajo-catalog-server/src/test/java/org/apache/tajo/catalog/TestCatalogAgainstCaseSensitivity.java b/tajo-catalog/tajo-catalog-server/src/test/java/org/apache/tajo/catalog/TestCatalogAgainstCaseSensitivity.java index 99a7b43..314dd8c 100644 --- a/tajo-catalog/tajo-catalog-server/src/test/java/org/apache/tajo/catalog/TestCatalogAgainstCaseSensitivity.java +++ b/tajo-catalog/tajo-catalog-server/src/test/java/org/apache/tajo/catalog/TestCatalogAgainstCaseSensitivity.java @@ -423,11 +423,11 @@ public class TestCatalogAgainstCaseSensitivity { String tableName = "testTable1"; TableDesc tableDesc = catalog.getTableDesc(databaseName, tableName); - assertEquals("ThisIsTest", tableDesc.getMeta().getOption("testString")); - assertEquals("true", tableDesc.getMeta().getOption("testBool")); - assertEquals("0.2", tableDesc.getMeta().getOption("testFloat")); - assertEquals("60", tableDesc.getMeta().getOption("testInt")); - assertEquals("800", tableDesc.getMeta().getOption("testLong")); + assertEquals("ThisIsTest", tableDesc.getMeta().getProperty("testString")); + assertEquals("true", tableDesc.getMeta().getProperty("testBool")); + assertEquals("0.2", tableDesc.getMeta().getProperty("testFloat")); + assertEquals("60", tableDesc.getMeta().getProperty("testInt")); + assertEquals("800", tableDesc.getMeta().getProperty("testLong")); } @Test http://git-wip-us.apache.org/repos/asf/tajo/blob/b3d4a340/tajo-cluster-tests/src/test/java/org/apache/tajo/QueryTestCaseBase.java ---------------------------------------------------------------------- diff --git a/tajo-cluster-tests/src/test/java/org/apache/tajo/QueryTestCaseBase.java b/tajo-cluster-tests/src/test/java/org/apache/tajo/QueryTestCaseBase.java index 0639a76..0b649fc 100644 --- a/tajo-cluster-tests/src/test/java/org/apache/tajo/QueryTestCaseBase.java +++ b/tajo-cluster-tests/src/test/java/org/apache/tajo/QueryTestCaseBase.java @@ -811,7 +811,7 @@ public class QueryTestCaseBase { throws UndefinedTableException { TableDesc tableDesc = getTableDesc(tableName); - assertEquals(expectedValue, tableDesc.getMeta().getOption(key)); + assertEquals(expectedValue, tableDesc.getMeta().getProperty(key)); } public String resultSetToString(ResultSet resultSet) throws SQLException { http://git-wip-us.apache.org/repos/asf/tajo/blob/b3d4a340/tajo-core-tests/src/test/java/org/apache/tajo/cli/tools/TestDDLBuilder.java ---------------------------------------------------------------------- diff --git a/tajo-core-tests/src/test/java/org/apache/tajo/cli/tools/TestDDLBuilder.java b/tajo-core-tests/src/test/java/org/apache/tajo/cli/tools/TestDDLBuilder.java index bb8cf1b..ec92884 100644 --- a/tajo-core-tests/src/test/java/org/apache/tajo/cli/tools/TestDDLBuilder.java +++ b/tajo-core-tests/src/test/java/org/apache/tajo/cli/tools/TestDDLBuilder.java @@ -42,8 +42,8 @@ public class TestDDLBuilder { schema1.addColumn("addr", TajoDataTypes.Type.TEXT); meta1 = CatalogUtil.newTableMeta("TEXT"); - meta1.putOption(StorageConstants.TEXT_DELIMITER, StorageConstants.DEFAULT_FIELD_DELIMITER); - meta1.putOption(StorageConstants.COMPRESSION_CODEC, GzipCodec.class.getName()); + meta1.putProperty(StorageConstants.TEXT_DELIMITER, StorageConstants.DEFAULT_FIELD_DELIMITER); + meta1.putProperty(StorageConstants.COMPRESSION_CODEC, GzipCodec.class.getName()); Schema expressionSchema = new Schema(); expressionSchema.addColumn("key", TajoDataTypes.Type.INT4); http://git-wip-us.apache.org/repos/asf/tajo/blob/b3d4a340/tajo-core-tests/src/test/java/org/apache/tajo/client/TestTajoClient.java ---------------------------------------------------------------------- diff --git a/tajo-core-tests/src/test/java/org/apache/tajo/client/TestTajoClient.java b/tajo-core-tests/src/test/java/org/apache/tajo/client/TestTajoClient.java index 2752ed4..75a0ad0 100644 --- a/tajo-core-tests/src/test/java/org/apache/tajo/client/TestTajoClient.java +++ b/tajo-core-tests/src/test/java/org/apache/tajo/client/TestTajoClient.java @@ -708,7 +708,7 @@ public class TestTajoClient { public void assertNullCharSessionVar(TableDesc resultDesc) throws Exception { TajoConf tajoConf = TpchTestBase.getInstance().getTestingCluster().getConfiguration(); - assertEquals(resultDesc.getMeta().getOption(StorageConstants.TEXT_NULL), "\\\\T"); + assertEquals(resultDesc.getMeta().getProperty(StorageConstants.TEXT_NULL), "\\\\T"); Path path = new Path(resultDesc.getUri()); FileSystem fs = path.getFileSystem(tajoConf); http://git-wip-us.apache.org/repos/asf/tajo/blob/b3d4a340/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestCTASQuery.java ---------------------------------------------------------------------- diff --git a/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestCTASQuery.java b/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestCTASQuery.java index 667d193..8e0700b 100644 --- a/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestCTASQuery.java +++ b/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestCTASQuery.java @@ -251,7 +251,7 @@ public class TestCTASQuery extends QueryTestCaseBase { assertTrue("TEXT".equalsIgnoreCase(desc.getMeta().getDataFormat())); - KeyValueSet options = desc.getMeta().getOptions(); + KeyValueSet options = desc.getMeta().getPropertySet(); assertNotNull(options); assertEquals(StringEscapeUtils.escapeJava("\u0001"), options.get(StorageConstants.TEXT_DELIMITER)); } http://git-wip-us.apache.org/repos/asf/tajo/blob/b3d4a340/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestCreateTable.java ---------------------------------------------------------------------- diff --git a/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestCreateTable.java b/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestCreateTable.java index 3450b03..b7196bd 100644 --- a/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestCreateTable.java +++ b/tajo-core-tests/src/test/java/org/apache/tajo/engine/query/TestCreateTable.java @@ -437,8 +437,8 @@ public class TestCreateTable extends QueryTestCaseBase { return false; } - KeyValueSet origOptions = origMeta.getOptions(); - KeyValueSet newOptions = newMeta.getOptions(); + KeyValueSet origOptions = origMeta.getPropertySet(); + KeyValueSet newOptions = newMeta.getPropertySet(); if(origOptions.equals(newOptions) == false) { fail("Meta options of input tables not equal"); return false; http://git-wip-us.apache.org/repos/asf/tajo/blob/b3d4a340/tajo-core/src/main/java/org/apache/tajo/benchmark/TPCH.java ---------------------------------------------------------------------- diff --git a/tajo-core/src/main/java/org/apache/tajo/benchmark/TPCH.java b/tajo-core/src/main/java/org/apache/tajo/benchmark/TPCH.java index d807d2f..8472020 100644 --- a/tajo-core/src/main/java/org/apache/tajo/benchmark/TPCH.java +++ b/tajo-core/src/main/java/org/apache/tajo/benchmark/TPCH.java @@ -203,7 +203,7 @@ public class TPCH extends BenchmarkSet { public void loadTable(String tableName) throws TajoException { TableMeta meta = CatalogUtil.newTableMeta("TEXT"); - meta.putOption(StorageConstants.TEXT_DELIMITER, StorageConstants.DEFAULT_FIELD_DELIMITER); + meta.putProperty(StorageConstants.TEXT_DELIMITER, StorageConstants.DEFAULT_FIELD_DELIMITER); PartitionMethodDesc partitionMethodDesc = null; if (tableName.equals(CUSTOMER_PARTS)) { http://git-wip-us.apache.org/repos/asf/tajo/blob/b3d4a340/tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/PhysicalPlanUtil.java ---------------------------------------------------------------------- diff --git a/tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/PhysicalPlanUtil.java b/tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/PhysicalPlanUtil.java index 8d63410..baa0bf6 100644 --- a/tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/PhysicalPlanUtil.java +++ b/tajo-core/src/main/java/org/apache/tajo/engine/planner/physical/PhysicalPlanUtil.java @@ -211,11 +211,11 @@ public class PhysicalPlanUtil { private static void setNullCharForTextSerializer(TableMeta meta, String nullChar) { String dataFormat = meta.getDataFormat(); if (dataFormat.equalsIgnoreCase(BuiltinStorages.TEXT)) { - meta.putOption(StorageConstants.TEXT_NULL, nullChar); + meta.putProperty(StorageConstants.TEXT_NULL, nullChar); } else if (dataFormat.equalsIgnoreCase(BuiltinStorages.RCFILE)) { - meta.putOption(StorageConstants.RCFILE_NULL, nullChar); + meta.putProperty(StorageConstants.RCFILE_NULL, nullChar); } else if (dataFormat.equalsIgnoreCase(BuiltinStorages.SEQUENCE_FILE)) { - meta.putOption(StorageConstants.SEQUENCEFILE_NULL, nullChar); + meta.putProperty(StorageConstants.SEQUENCEFILE_NULL, nullChar); } } @@ -228,11 +228,11 @@ public class PhysicalPlanUtil { public static boolean containsNullChar(TableMeta meta) { String dataFormat = meta.getDataFormat(); if (dataFormat.equalsIgnoreCase(BuiltinStorages.TEXT)) { - return meta.containsOption(StorageConstants.TEXT_NULL); + return meta.containsProperty(StorageConstants.TEXT_NULL); } else if (dataFormat.equalsIgnoreCase(BuiltinStorages.RCFILE)) { - return meta.containsOption(StorageConstants.RCFILE_NULL); + return meta.containsProperty(StorageConstants.RCFILE_NULL); } else if (dataFormat.equalsIgnoreCase(BuiltinStorages.SEQUENCE_FILE)) { - return meta.containsOption(StorageConstants.SEQUENCEFILE_NULL); + return meta.containsProperty(StorageConstants.SEQUENCEFILE_NULL); } else { return false; } http://git-wip-us.apache.org/repos/asf/tajo/blob/b3d4a340/tajo-core/src/main/java/org/apache/tajo/master/exec/QueryExecutor.java ---------------------------------------------------------------------- diff --git a/tajo-core/src/main/java/org/apache/tajo/master/exec/QueryExecutor.java b/tajo-core/src/main/java/org/apache/tajo/master/exec/QueryExecutor.java index 9a35ee6..6afa67a 100644 --- a/tajo-core/src/main/java/org/apache/tajo/master/exec/QueryExecutor.java +++ b/tajo-core/src/main/java/org/apache/tajo/master/exec/QueryExecutor.java @@ -288,7 +288,7 @@ public class QueryExecutor { } final TableDesc resultDesc = new TableDesc("", scanNode.getOutSchema(), - new TableMeta(BuiltinStorages.DRAW, table.getMeta().getOptions()), null); + new TableMeta(BuiltinStorages.DRAW, table.getMeta().getPropertySet()), null); // push down limit int maxRow = Integer.MAX_VALUE; @@ -461,7 +461,7 @@ public class QueryExecutor { URI finalOutputUri = insertNode.getUri(); Tablespace space = TablespaceManager.get(finalOutputUri); TableMeta tableMeta = new TableMeta(insertNode.getStorageType(), insertNode.getOptions()); - tableMeta.putOption(StorageConstants.INSERT_DIRECTLY, Boolean.TRUE.toString()); + tableMeta.putProperty(StorageConstants.INSERT_DIRECTLY, Boolean.TRUE.toString()); FormatProperty formatProperty = space.getFormatProperty(tableMeta); http://git-wip-us.apache.org/repos/asf/tajo/blob/b3d4a340/tajo-core/src/main/java/org/apache/tajo/querymaster/Query.java ---------------------------------------------------------------------- diff --git a/tajo-core/src/main/java/org/apache/tajo/querymaster/Query.java b/tajo-core/src/main/java/org/apache/tajo/querymaster/Query.java index ca8282d..0699fc7 100644 --- a/tajo-core/src/main/java/org/apache/tajo/querymaster/Query.java +++ b/tajo-core/src/main/java/org/apache/tajo/querymaster/Query.java @@ -638,7 +638,7 @@ public class Query implements EventHandler<QueryEvent> { TableMeta meta = lastStage.getTableMeta(); String nullChar = queryContext.get(SessionVars.NULL_CHAR); - meta.putOption(StorageConstants.TEXT_NULL, nullChar); + meta.putProperty(StorageConstants.TEXT_NULL, nullChar); TableStats stats = lastStage.getResultStats(); http://git-wip-us.apache.org/repos/asf/tajo/blob/b3d4a340/tajo-plan/src/main/java/org/apache/tajo/plan/LogicalPlanner.java ---------------------------------------------------------------------- diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/LogicalPlanner.java b/tajo-plan/src/main/java/org/apache/tajo/plan/LogicalPlanner.java index 061c433..10d3595 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/LogicalPlanner.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/LogicalPlanner.java @@ -1887,7 +1887,7 @@ public class LogicalPlanner extends BaseAlgebraVisitor<LogicalPlanner.PlanContex createTableNode.setPartitionMethod(partitionDesc); createTableNode.setDataFormat(CatalogUtil.getBackwardCompitableDataFormat(baseTable.getMeta().getDataFormat())); - createTableNode.setOptions(baseTable.getMeta().getOptions()); + createTableNode.setOptions(baseTable.getMeta().getPropertySet()); createTableNode.setExternal(baseTable.isExternal()); if(baseTable.isExternal()) { http://git-wip-us.apache.org/repos/asf/tajo/blob/b3d4a340/tajo-plan/src/main/java/org/apache/tajo/plan/TablePropertyUtil.java ---------------------------------------------------------------------- diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/TablePropertyUtil.java b/tajo-plan/src/main/java/org/apache/tajo/plan/TablePropertyUtil.java index f3351f6..25bd5b4 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/TablePropertyUtil.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/TablePropertyUtil.java @@ -82,8 +82,8 @@ public class TablePropertyUtil { private static void setProperty(OverridableConf context, SessionVars sessionVarKey, TableMeta meta, String propertyKey) { - if (!meta.containsOption(propertyKey)) { - meta.putOption(propertyKey, context.get(sessionVarKey)); + if (!meta.containsProperty(propertyKey)) { + meta.putProperty(propertyKey, context.get(sessionVarKey)); } } } http://git-wip-us.apache.org/repos/asf/tajo/blob/b3d4a340/tajo-plan/src/main/java/org/apache/tajo/plan/function/stream/CSVLineSerDe.java ---------------------------------------------------------------------- diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/function/stream/CSVLineSerDe.java b/tajo-plan/src/main/java/org/apache/tajo/plan/function/stream/CSVLineSerDe.java index e9da196..4c3c8e2 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/function/stream/CSVLineSerDe.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/function/stream/CSVLineSerDe.java @@ -36,7 +36,7 @@ public class CSVLineSerDe extends TextLineSerDe { } public static byte[] getFieldDelimiter(TableMeta meta) { - return StringEscapeUtils.unescapeJava(meta.getOption(StorageConstants.TEXT_DELIMITER, + return StringEscapeUtils.unescapeJava(meta.getProperty(StorageConstants.TEXT_DELIMITER, StorageConstants.DEFAULT_FIELD_DELIMITER)).getBytes(Bytes.UTF8_CHARSET); } } http://git-wip-us.apache.org/repos/asf/tajo/blob/b3d4a340/tajo-plan/src/main/java/org/apache/tajo/plan/function/stream/TextFieldSerializerDeserializer.java ---------------------------------------------------------------------- diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/function/stream/TextFieldSerializerDeserializer.java b/tajo-plan/src/main/java/org/apache/tajo/plan/function/stream/TextFieldSerializerDeserializer.java index 74cacbe..7d03f47 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/function/stream/TextFieldSerializerDeserializer.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/function/stream/TextFieldSerializerDeserializer.java @@ -49,8 +49,8 @@ public class TextFieldSerializerDeserializer implements FieldSerializerDeseriali private final TimeZone timezone; public TextFieldSerializerDeserializer(TableMeta meta) { - hasTimezone = meta.containsOption(StorageConstants.TIMEZONE); - timezone = TimeZone.getTimeZone(meta.getOption(StorageConstants.TIMEZONE, TajoConstants.DEFAULT_SYSTEM_TIMEZONE)); + hasTimezone = meta.containsProperty(StorageConstants.TIMEZONE); + timezone = TimeZone.getTimeZone(meta.getProperty(StorageConstants.TIMEZONE, TajoConstants.DEFAULT_SYSTEM_TIMEZONE)); } private static boolean isNull(ByteBuf val, ByteBuf nullBytes) { http://git-wip-us.apache.org/repos/asf/tajo/blob/b3d4a340/tajo-plan/src/main/java/org/apache/tajo/plan/function/stream/TextLineSerDe.java ---------------------------------------------------------------------- diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/function/stream/TextLineSerDe.java b/tajo-plan/src/main/java/org/apache/tajo/plan/function/stream/TextLineSerDe.java index 8cd3e56..834d15d 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/function/stream/TextLineSerDe.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/function/stream/TextLineSerDe.java @@ -51,7 +51,7 @@ public abstract class TextLineSerDe { public static byte [] getNullCharsAsBytes(TableMeta meta) { byte [] nullChars; - String nullCharacters = StringEscapeUtils.unescapeJava(meta.getOption(StorageConstants.TEXT_NULL, + String nullCharacters = StringEscapeUtils.unescapeJava(meta.getProperty(StorageConstants.TEXT_NULL, NullDatum.DEFAULT_TEXT)); if (StringUtils.isEmpty(nullCharacters)) { nullChars = NullDatum.get().asTextBytes(); http://git-wip-us.apache.org/repos/asf/tajo/blob/b3d4a340/tajo-plan/src/main/java/org/apache/tajo/plan/logical/InsertNode.java ---------------------------------------------------------------------- diff --git a/tajo-plan/src/main/java/org/apache/tajo/plan/logical/InsertNode.java b/tajo-plan/src/main/java/org/apache/tajo/plan/logical/InsertNode.java index 4030b69..eae18bb 100644 --- a/tajo-plan/src/main/java/org/apache/tajo/plan/logical/InsertNode.java +++ b/tajo-plan/src/main/java/org/apache/tajo/plan/logical/InsertNode.java @@ -47,7 +47,7 @@ public class InsertNode extends StoreTableNode implements Cloneable { if (desc.getUri() != null) { setUri(desc.getUri()); } - setOptions(desc.getMeta().getOptions()); + setOptions(desc.getMeta().getPropertySet()); setDataFormat(desc.getMeta().getDataFormat()); if (desc.hasPartition()) { http://git-wip-us.apache.org/repos/asf/tajo/blob/b3d4a340/tajo-storage/tajo-storage-hbase/src/main/java/org/apache/tajo/storage/hbase/AbstractHBaseAppender.java ---------------------------------------------------------------------- diff --git a/tajo-storage/tajo-storage-hbase/src/main/java/org/apache/tajo/storage/hbase/AbstractHBaseAppender.java b/tajo-storage/tajo-storage-hbase/src/main/java/org/apache/tajo/storage/hbase/AbstractHBaseAppender.java index 4289026..b4e90cd 100644 --- a/tajo-storage/tajo-storage-hbase/src/main/java/org/apache/tajo/storage/hbase/AbstractHBaseAppender.java +++ b/tajo-storage/tajo-storage-hbase/src/main/java/org/apache/tajo/storage/hbase/AbstractHBaseAppender.java @@ -94,7 +94,7 @@ public abstract class AbstractHBaseAppender implements Appender { stats = new TableStatistics(this.schema, columnStatsEnabled); } try { - columnMapping = new ColumnMapping(schema, meta.getOptions()); + columnMapping = new ColumnMapping(schema, meta.getPropertySet()); } catch (TajoException e) { throw new TajoInternalError(e); } http://git-wip-us.apache.org/repos/asf/tajo/blob/b3d4a340/tajo-storage/tajo-storage-hbase/src/main/java/org/apache/tajo/storage/hbase/HBaseScanner.java ---------------------------------------------------------------------- diff --git a/tajo-storage/tajo-storage-hbase/src/main/java/org/apache/tajo/storage/hbase/HBaseScanner.java b/tajo-storage/tajo-storage-hbase/src/main/java/org/apache/tajo/storage/hbase/HBaseScanner.java index 55d27a1..b2ca02d 100644 --- a/tajo-storage/tajo-storage-hbase/src/main/java/org/apache/tajo/storage/hbase/HBaseScanner.java +++ b/tajo-storage/tajo-storage-hbase/src/main/java/org/apache/tajo/storage/hbase/HBaseScanner.java @@ -117,7 +117,7 @@ public class HBaseScanner implements Scanner { } scanFetchSize = Integer.parseInt( - meta.getOption(HBaseStorageConstants.META_FETCH_ROWNUM_KEY, "" + DEFAULT_FETCH_SIZE)); + meta.getProperty(HBaseStorageConstants.META_FETCH_ROWNUM_KEY, "" + DEFAULT_FETCH_SIZE)); if (targets == null) { targets = schema.toArray(); } @@ -125,7 +125,7 @@ public class HBaseScanner implements Scanner { outTuple = new VTuple(targets.length); try { - columnMapping = new ColumnMapping(schema, meta.getOptions()); + columnMapping = new ColumnMapping(schema, meta.getPropertySet()); } catch (TajoException e) { new TajoInternalError(e); } http://git-wip-us.apache.org/repos/asf/tajo/blob/b3d4a340/tajo-storage/tajo-storage-hbase/src/main/java/org/apache/tajo/storage/hbase/HBaseTablespace.java ---------------------------------------------------------------------- diff --git a/tajo-storage/tajo-storage-hbase/src/main/java/org/apache/tajo/storage/hbase/HBaseTablespace.java b/tajo-storage/tajo-storage-hbase/src/main/java/org/apache/tajo/storage/hbase/HBaseTablespace.java index 0fb7b68..7ace9a8 100644 --- a/tajo-storage/tajo-storage-hbase/src/main/java/org/apache/tajo/storage/hbase/HBaseTablespace.java +++ b/tajo-storage/tajo-storage-hbase/src/main/java/org/apache/tajo/storage/hbase/HBaseTablespace.java @@ -124,19 +124,19 @@ public class HBaseTablespace extends Tablespace { private void createTable(URI uri, TableMeta tableMeta, Schema schema, boolean isExternal, boolean ifNotExists) throws TajoException, IOException { - String hbaseTableName = tableMeta.getOption(HBaseStorageConstants.META_TABLE_KEY, ""); + String hbaseTableName = tableMeta.getProperty(HBaseStorageConstants.META_TABLE_KEY, ""); if (hbaseTableName == null || hbaseTableName.trim().isEmpty()) { throw new MissingTablePropertyException(HBaseStorageConstants.META_TABLE_KEY, "hbase"); } TableName hTableName = TableName.valueOf(hbaseTableName); - String mappedColumns = tableMeta.getOption(HBaseStorageConstants.META_COLUMNS_KEY, ""); + String mappedColumns = tableMeta.getProperty(HBaseStorageConstants.META_COLUMNS_KEY, ""); if (mappedColumns != null && mappedColumns.split(",").length > schema.size()) { throw new InvalidTablePropertyException(HBaseStorageConstants.META_COLUMNS_KEY, "mapping column pairs must be more than number of columns in the schema"); } - ColumnMapping columnMapping = new ColumnMapping(schema, tableMeta.getOptions()); + ColumnMapping columnMapping = new ColumnMapping(schema, tableMeta.getPropertySet()); int numRowKeys = 0; boolean[] isRowKeyMappings = columnMapping.getIsRowKeyMappings(); for (int i = 0; i < isRowKeyMappings.length; i++) { @@ -223,15 +223,15 @@ public class HBaseTablespace extends Tablespace { private byte[][] getSplitKeys(TajoConf conf, String hbaseTableName, Schema schema, TableMeta meta) throws MissingTablePropertyException, InvalidTablePropertyException, IOException { - String splitRowKeys = meta.getOption(HBaseStorageConstants.META_SPLIT_ROW_KEYS_KEY, ""); - String splitRowKeysFile = meta.getOption(HBaseStorageConstants.META_SPLIT_ROW_KEYS_FILE_KEY, ""); + String splitRowKeys = meta.getProperty(HBaseStorageConstants.META_SPLIT_ROW_KEYS_KEY, ""); + String splitRowKeysFile = meta.getProperty(HBaseStorageConstants.META_SPLIT_ROW_KEYS_FILE_KEY, ""); if ((splitRowKeys == null || splitRowKeys.isEmpty()) && (splitRowKeysFile == null || splitRowKeysFile.isEmpty())) { return null; } - ColumnMapping columnMapping = new ColumnMapping(schema, meta.getOptions()); + ColumnMapping columnMapping = new ColumnMapping(schema, meta.getPropertySet()); boolean[] isBinaryColumns = columnMapping.getIsBinaryColumns(); boolean[] isRowKeys = columnMapping.getIsRowKeyMappings(); @@ -343,13 +343,13 @@ public class HBaseTablespace extends Tablespace { public static HTableDescriptor parseHTableDescriptor(TableMeta tableMeta, Schema schema) throws MissingTablePropertyException, InvalidTablePropertyException { - String hbaseTableName = tableMeta.getOption(HBaseStorageConstants.META_TABLE_KEY, ""); + String hbaseTableName = tableMeta.getProperty(HBaseStorageConstants.META_TABLE_KEY, ""); if (hbaseTableName == null || hbaseTableName.trim().isEmpty()) { throw new MissingTablePropertyException(HBaseStorageConstants.META_TABLE_KEY, hbaseTableName); } TableName hTableName = TableName.valueOf(hbaseTableName); - ColumnMapping columnMapping = new ColumnMapping(schema, tableMeta.getOptions()); + ColumnMapping columnMapping = new ColumnMapping(schema, tableMeta.getPropertySet()); HTableDescriptor hTableDescriptor = new HTableDescriptor(hTableName); @@ -397,7 +397,7 @@ public class HBaseTablespace extends Tablespace { private Column[] getIndexableColumns(TableDesc tableDesc) throws MissingTablePropertyException, InvalidTablePropertyException { - ColumnMapping columnMapping = new ColumnMapping(tableDesc.getSchema(), tableDesc.getMeta().getOptions()); + ColumnMapping columnMapping = new ColumnMapping(tableDesc.getSchema(), tableDesc.getMeta().getPropertySet()); boolean[] isRowKeyMappings = columnMapping.getIsRowKeyMappings(); int[] rowKeyIndexes = columnMapping.getRowKeyFieldIndexes(); @@ -419,14 +419,14 @@ public class HBaseTablespace extends Tablespace { @Nullable EvalNode filterCondition) throws IOException, TajoException { - ColumnMapping columnMapping = new ColumnMapping(tableDesc.getSchema(), tableDesc.getMeta().getOptions()); + ColumnMapping columnMapping = new ColumnMapping(tableDesc.getSchema(), tableDesc.getMeta().getPropertySet()); List<IndexPredication> indexPredications = getIndexPredications(columnMapping, tableDesc, filterCondition); HTable htable = null; HBaseAdmin hAdmin = null; try { - htable = new HTable(hbaseConf, tableDesc.getMeta().getOption(HBaseStorageConstants.META_TABLE_KEY)); + htable = new HTable(hbaseConf, tableDesc.getMeta().getProperty(HBaseStorageConstants.META_TABLE_KEY)); org.apache.hadoop.hbase.util.Pair<byte[][], byte[][]> keys = htable.getStartEndKeys(); if (keys == null || keys.getFirst() == null || keys.getFirst().length == 0) { @@ -915,7 +915,7 @@ public class HBaseTablespace extends Tablespace { committer.commitJob(jobContext); // insert into table - String tableName = tableDesc.getMeta().getOption(HBaseStorageConstants.META_TABLE_KEY); + String tableName = tableDesc.getMeta().getProperty(HBaseStorageConstants.META_TABLE_KEY); HTable htable = new HTable(hbaseConf, tableName); try { @@ -944,7 +944,7 @@ public class HBaseTablespace extends Tablespace { sortKeyIndexes[i] = inputSchema.getColumnId(sortSpecs[i].getSortKey().getQualifiedName()); } - ColumnMapping columnMapping = new ColumnMapping(tableDesc.getSchema(), tableDesc.getMeta().getOptions()); + ColumnMapping columnMapping = new ColumnMapping(tableDesc.getSchema(), tableDesc.getMeta().getPropertySet()); HTable htable = new HTable(hbaseConf, columnMapping.getHbaseTableName()); try { @@ -1026,7 +1026,7 @@ public class HBaseTablespace extends Tablespace { @Override public FormatProperty getFormatProperty(TableMeta meta) { - KeyValueSet tableProperty = meta.getOptions(); + KeyValueSet tableProperty = meta.getPropertySet(); if (tableProperty.isTrue(HBaseStorageConstants.INSERT_PUT_MODE) || tableProperty.isTrue(StorageConstants.INSERT_DIRECTLY)) { return PUT_MODE_PROPERTIES; @@ -1070,7 +1070,7 @@ public class HBaseTablespace extends Tablespace { @Override public URI getStagingUri(OverridableConf context, String queryId, TableMeta meta) throws IOException { - if (meta.getOptions().isTrue(HBaseStorageConstants.INSERT_PUT_MODE)) { + if (meta.getPropertySet().isTrue(HBaseStorageConstants.INSERT_PUT_MODE)) { throw new IOException("Staging phase is not supported in this storage."); } else { return TablespaceManager.getDefault().getStagingUri(context, queryId, meta); @@ -1079,7 +1079,7 @@ public class HBaseTablespace extends Tablespace { public URI prepareStagingSpace(TajoConf conf, String queryId, OverridableConf context, TableMeta meta) throws IOException { - if (!meta.getOptions().isTrue(HBaseStorageConstants.INSERT_PUT_MODE)) { + if (!meta.getPropertySet().isTrue(HBaseStorageConstants.INSERT_PUT_MODE)) { return TablespaceManager.getDefault().prepareStagingSpace(conf, queryId, context, meta); } else { throw new IOException("Staging phase is not supported in this storage."); http://git-wip-us.apache.org/repos/asf/tajo/blob/b3d4a340/tajo-storage/tajo-storage-hbase/src/test/java/org/apache/tajo/storage/hbase/TestColumnMapping.java ---------------------------------------------------------------------- diff --git a/tajo-storage/tajo-storage-hbase/src/test/java/org/apache/tajo/storage/hbase/TestColumnMapping.java b/tajo-storage/tajo-storage-hbase/src/test/java/org/apache/tajo/storage/hbase/TestColumnMapping.java index 5b1e2bd..bfdc8ca 100644 --- a/tajo-storage/tajo-storage-hbase/src/test/java/org/apache/tajo/storage/hbase/TestColumnMapping.java +++ b/tajo-storage/tajo-storage-hbase/src/test/java/org/apache/tajo/storage/hbase/TestColumnMapping.java @@ -43,7 +43,7 @@ public class TestColumnMapping { TableMeta tableMeta = new TableMeta("HBASE", keyValueSet); - ColumnMapping columnMapping = new ColumnMapping(schema, tableMeta.getOptions()); + ColumnMapping columnMapping = new ColumnMapping(schema, tableMeta.getPropertySet()); List<String> cfNames = columnMapping.getColumnFamilyNames(); assertEquals(2, cfNames.size()); http://git-wip-us.apache.org/repos/asf/tajo/blob/b3d4a340/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/RowFile.java ---------------------------------------------------------------------- diff --git a/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/RowFile.java b/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/RowFile.java index 87a112e..a7c6b71 100644 --- a/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/RowFile.java +++ b/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/RowFile.java @@ -369,7 +369,7 @@ public class RowFile { if (tableStatsEnabled) { this.stats = new TableStatistics(this.schema, columnStatsEnabled); this.shuffleType = PlannerUtil.getShuffleType( - meta.getOption(StorageConstants.SHUFFLE_TYPE, + meta.getProperty(StorageConstants.SHUFFLE_TYPE, PlannerUtil.getShuffleType(ShuffleType.NONE_SHUFFLE))); } } http://git-wip-us.apache.org/repos/asf/tajo/blob/b3d4a340/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/avro/AvroUtil.java ---------------------------------------------------------------------- diff --git a/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/avro/AvroUtil.java b/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/avro/AvroUtil.java index 0d14c3d..faeb4a0 100644 --- a/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/avro/AvroUtil.java +++ b/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/avro/AvroUtil.java @@ -35,17 +35,17 @@ public class AvroUtil { public static Schema getAvroSchema(TableMeta meta, Configuration conf) throws IOException { - boolean isSchemaLiteral = meta.containsOption(StorageConstants.AVRO_SCHEMA_LITERAL); - boolean isSchemaUrl = meta.containsOption(StorageConstants.AVRO_SCHEMA_URL); + boolean isSchemaLiteral = meta.containsProperty(StorageConstants.AVRO_SCHEMA_LITERAL); + boolean isSchemaUrl = meta.containsProperty(StorageConstants.AVRO_SCHEMA_URL); if (!isSchemaLiteral && !isSchemaUrl) { throw new RuntimeException("No Avro schema for table."); } if (isSchemaLiteral) { - String schema = meta.getOption(StorageConstants.AVRO_SCHEMA_LITERAL); + String schema = meta.getProperty(StorageConstants.AVRO_SCHEMA_LITERAL); return new Schema.Parser().parse(schema); } - String schemaURL = meta.getOption(StorageConstants.AVRO_SCHEMA_URL); + String schemaURL = meta.getProperty(StorageConstants.AVRO_SCHEMA_URL); if (schemaURL.toLowerCase().startsWith("http")) { return getAvroSchemaFromHttp(schemaURL); } else { http://git-wip-us.apache.org/repos/asf/tajo/blob/b3d4a340/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/json/JsonLineDeserializer.java ---------------------------------------------------------------------- diff --git a/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/json/JsonLineDeserializer.java b/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/json/JsonLineDeserializer.java index f3fdacb..335f12b 100644 --- a/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/json/JsonLineDeserializer.java +++ b/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/json/JsonLineDeserializer.java @@ -60,8 +60,8 @@ public class JsonLineDeserializer extends TextLineDeserializer { projectedPaths = SchemaUtil.convertColumnsToPaths(Lists.newArrayList(projected), true); types = SchemaUtil.buildTypeMap(schema.getAllColumns(), projectedPaths); - hasTimezone = meta.containsOption(StorageConstants.TIMEZONE); - timezone = TimeZone.getTimeZone(meta.getOption(StorageConstants.TIMEZONE, TajoConstants.DEFAULT_SYSTEM_TIMEZONE)); + hasTimezone = meta.containsProperty(StorageConstants.TIMEZONE); + timezone = TimeZone.getTimeZone(meta.getProperty(StorageConstants.TIMEZONE, TajoConstants.DEFAULT_SYSTEM_TIMEZONE)); } @Override http://git-wip-us.apache.org/repos/asf/tajo/blob/b3d4a340/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/json/JsonLineSerializer.java ---------------------------------------------------------------------- diff --git a/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/json/JsonLineSerializer.java b/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/json/JsonLineSerializer.java index b42e14a..1885c80 100644 --- a/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/json/JsonLineSerializer.java +++ b/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/json/JsonLineSerializer.java @@ -55,8 +55,8 @@ public class JsonLineSerializer extends TextLineSerializer { projectedPaths = SchemaUtil.convertColumnsToPaths(schema.getAllColumns(), true); types = SchemaUtil.buildTypeMap(schema.getAllColumns(), projectedPaths); - hasTimezone = meta.containsOption(StorageConstants.TIMEZONE); - timezone = TimeZone.getTimeZone(meta.getOption(StorageConstants.TIMEZONE, TajoConstants.DEFAULT_SYSTEM_TIMEZONE)); + hasTimezone = meta.containsProperty(StorageConstants.TIMEZONE); + timezone = TimeZone.getTimeZone(meta.getProperty(StorageConstants.TIMEZONE, TajoConstants.DEFAULT_SYSTEM_TIMEZONE)); } @Override http://git-wip-us.apache.org/repos/asf/tajo/blob/b3d4a340/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/orc/ORCAppender.java ---------------------------------------------------------------------- diff --git a/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/orc/ORCAppender.java b/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/orc/ORCAppender.java index 7d00206..7999d02 100644 --- a/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/orc/ORCAppender.java +++ b/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/orc/ORCAppender.java @@ -46,7 +46,7 @@ public class ORCAppender extends FileAppender { TableMeta meta, Path workDir) { super(conf, taskAttemptId, schema, meta, workDir); - timezone = TimeZone.getTimeZone(meta.getOption(StorageConstants.TIMEZONE, + timezone = TimeZone.getTimeZone(meta.getProperty(StorageConstants.TIMEZONE, TajoConstants.DEFAULT_SYSTEM_TIMEZONE)); } @@ -54,11 +54,11 @@ public class ORCAppender extends FileAppender { public void init() throws IOException { writer = OrcFile.createWriter(workDir.getFileSystem(conf), path, conf, ObjectInspectorFactory.buildStructObjectInspector(schema), - Long.parseLong(meta.getOption(StorageConstants.ORC_STRIPE_SIZE, + Long.parseLong(meta.getProperty(StorageConstants.ORC_STRIPE_SIZE, StorageConstants.DEFAULT_ORC_STRIPE_SIZE)), getCompressionKind(), - Integer.parseInt(meta.getOption(StorageConstants.ORC_BUFFER_SIZE, + Integer.parseInt(meta.getProperty(StorageConstants.ORC_BUFFER_SIZE, StorageConstants.DEFAULT_ORC_BUFFER_SIZE)), - Integer.parseInt(meta.getOption(StorageConstants.ORC_ROW_INDEX_STRIDE, + Integer.parseInt(meta.getProperty(StorageConstants.ORC_ROW_INDEX_STRIDE, StorageConstants.DEFAULT_ORC_ROW_INDEX_STRIDE)), timezone); @@ -111,7 +111,7 @@ public class ORCAppender extends FileAppender { } private CompressionKind getCompressionKind() { - String kindstr = meta.getOption(StorageConstants.ORC_COMPRESSION, StorageConstants.DEFAULT_ORC_COMPRESSION_KIND); + String kindstr = meta.getProperty(StorageConstants.ORC_COMPRESSION, StorageConstants.DEFAULT_ORC_COMPRESSION_KIND); if (kindstr.equalsIgnoreCase(StorageConstants.ORC_COMPRESSION_KIND_ZIP)) { return CompressionKind.ZLIB; http://git-wip-us.apache.org/repos/asf/tajo/blob/b3d4a340/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/orc/ORCScanner.java ---------------------------------------------------------------------- diff --git a/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/orc/ORCScanner.java b/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/orc/ORCScanner.java index b8b75ed..32a2aaa 100644 --- a/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/orc/ORCScanner.java +++ b/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/orc/ORCScanner.java @@ -131,7 +131,7 @@ public class ORCScanner extends FileScanner { this.fragment.getPath().toString(), fis, fs.getFileStatus(path).getLen(), - Integer.parseInt(meta.getOption(StorageConstants.ORC_MAX_MERGE_DISTANCE, + Integer.parseInt(meta.getProperty(StorageConstants.ORC_MAX_MERGE_DISTANCE, StorageConstants.DEFAULT_ORC_MAX_MERGE_DISTANCE))); targetColInfo = new ColumnInfo[targets.length]; @@ -155,7 +155,7 @@ public class ORCScanner extends FileScanner { orcReader = new OrcReader(orcDataSource, new OrcMetadataReader()); - TimeZone timezone = TimeZone.getTimeZone(meta.getOption(StorageConstants.TIMEZONE, + TimeZone timezone = TimeZone.getTimeZone(meta.getProperty(StorageConstants.TIMEZONE, TajoConstants.DEFAULT_SYSTEM_TIMEZONE)); // TODO: make OrcPredicate useful http://git-wip-us.apache.org/repos/asf/tajo/blob/b3d4a340/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/parquet/ParquetAppender.java ---------------------------------------------------------------------- diff --git a/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/parquet/ParquetAppender.java b/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/parquet/ParquetAppender.java index 07c9d0e..e7b523a 100644 --- a/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/parquet/ParquetAppender.java +++ b/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/parquet/ParquetAppender.java @@ -58,15 +58,15 @@ public class ParquetAppender extends FileAppender { Path workDir) throws IOException { super(conf, taskAttemptId, schema, meta, workDir); this.blockSize = Integer.parseInt( - meta.getOption(ParquetOutputFormat.BLOCK_SIZE, StorageConstants.PARQUET_DEFAULT_BLOCK_SIZE)); + meta.getProperty(ParquetOutputFormat.BLOCK_SIZE, StorageConstants.PARQUET_DEFAULT_BLOCK_SIZE)); this.pageSize = Integer.parseInt( - meta.getOption(ParquetOutputFormat.PAGE_SIZE, StorageConstants.PARQUET_DEFAULT_PAGE_SIZE)); + meta.getProperty(ParquetOutputFormat.PAGE_SIZE, StorageConstants.PARQUET_DEFAULT_PAGE_SIZE)); this.compressionCodecName = CompressionCodecName.fromConf( - meta.getOption(ParquetOutputFormat.COMPRESSION, StorageConstants.PARQUET_DEFAULT_COMPRESSION_CODEC_NAME)); + meta.getProperty(ParquetOutputFormat.COMPRESSION, StorageConstants.PARQUET_DEFAULT_COMPRESSION_CODEC_NAME)); this.enableDictionary = Boolean.parseBoolean( - meta.getOption(ParquetOutputFormat.ENABLE_DICTIONARY, StorageConstants.PARQUET_DEFAULT_IS_DICTIONARY_ENABLED)); + meta.getProperty(ParquetOutputFormat.ENABLE_DICTIONARY, StorageConstants.PARQUET_DEFAULT_IS_DICTIONARY_ENABLED)); this.validating = Boolean.parseBoolean( - meta.getOption(ParquetOutputFormat.VALIDATION, StorageConstants.PARQUET_DEFAULT_IS_VALIDATION_ENABLED)); + meta.getProperty(ParquetOutputFormat.VALIDATION, StorageConstants.PARQUET_DEFAULT_IS_VALIDATION_ENABLED)); } /** http://git-wip-us.apache.org/repos/asf/tajo/blob/b3d4a340/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/rawfile/DirectRawFileWriter.java ---------------------------------------------------------------------- diff --git a/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/rawfile/DirectRawFileWriter.java b/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/rawfile/DirectRawFileWriter.java index 9cbb7a0..8f4a6ae 100644 --- a/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/rawfile/DirectRawFileWriter.java +++ b/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/rawfile/DirectRawFileWriter.java @@ -111,7 +111,7 @@ public class DirectRawFileWriter extends FileAppender { if (tableStatsEnabled) { this.stats = new TableStatistics(this.schema, columnStatsEnabled); if (ShuffleType.RANGE_SHUFFLE == PlannerUtil.getShuffleType( - meta.getOption(StorageConstants.SHUFFLE_TYPE, + meta.getProperty(StorageConstants.SHUFFLE_TYPE, PlannerUtil.getShuffleType(ShuffleType.NONE_SHUFFLE)))) { this.analyzeField = true; } http://git-wip-us.apache.org/repos/asf/tajo/blob/b3d4a340/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/rcfile/RCFile.java ---------------------------------------------------------------------- diff --git a/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/rcfile/RCFile.java b/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/rcfile/RCFile.java index 20519b7..26bbcaf 100644 --- a/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/rcfile/RCFile.java +++ b/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/rcfile/RCFile.java @@ -726,8 +726,8 @@ public class RCFile { public void init() throws IOException { fs = path.getFileSystem(conf); - if (this.meta.containsOption(StorageConstants.COMPRESSION_CODEC)) { - String codecClassname = this.meta.getOption(StorageConstants.COMPRESSION_CODEC); + if (this.meta.containsProperty(StorageConstants.COMPRESSION_CODEC)) { + String codecClassname = this.meta.getProperty(StorageConstants.COMPRESSION_CODEC); try { Class<? extends CompressionCodec> codecClass = conf.getClassByName( codecClassname).asSubclass(CompressionCodec.class); @@ -738,7 +738,7 @@ public class RCFile { } } - String nullCharacters = StringEscapeUtils.unescapeJava(this.meta.getOption(StorageConstants.RCFILE_NULL, + String nullCharacters = StringEscapeUtils.unescapeJava(this.meta.getProperty(StorageConstants.RCFILE_NULL, NullDatum.DEFAULT_TEXT)); if (StringUtils.isEmpty(nullCharacters)) { nullChars = NullDatum.get().asTextBytes(); @@ -752,7 +752,7 @@ public class RCFile { metadata.set(new Text(COLUMN_NUMBER_METADATA_STR), new Text("" + columnNumber)); - String serdeClass = this.meta.getOption(StorageConstants.RCFILE_SERDE, + String serdeClass = this.meta.getProperty(StorageConstants.RCFILE_SERDE, BinarySerializerDeserializer.class.getName()); try { serde = (SerializerDeserializer) Class.forName(serdeClass).newInstance(); @@ -1177,7 +1177,7 @@ public class RCFile { rowId = new LongWritable(); readBytes = 0; - String nullCharacters = StringEscapeUtils.unescapeJava(meta.getOption(StorageConstants.RCFILE_NULL, + String nullCharacters = StringEscapeUtils.unescapeJava(meta.getProperty(StorageConstants.RCFILE_NULL, NullDatum.DEFAULT_TEXT)); if (StringUtils.isEmpty(nullCharacters)) { nullChars = NullDatum.get().asTextBytes(); @@ -1357,7 +1357,7 @@ public class RCFile { if(text != null && !text.toString().isEmpty()){ serdeClass = text.toString(); } else{ - serdeClass = this.meta.getOption(StorageConstants.RCFILE_SERDE, BinarySerializerDeserializer.class.getName()); + serdeClass = this.meta.getProperty(StorageConstants.RCFILE_SERDE, BinarySerializerDeserializer.class.getName()); } serde = (SerializerDeserializer) Class.forName(serdeClass).newInstance(); serde.init(schema); http://git-wip-us.apache.org/repos/asf/tajo/blob/b3d4a340/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/sequencefile/SequenceFileAppender.java ---------------------------------------------------------------------- diff --git a/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/sequencefile/SequenceFileAppender.java b/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/sequencefile/SequenceFileAppender.java index 8e0a88c..2a3e302 100644 --- a/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/sequencefile/SequenceFileAppender.java +++ b/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/sequencefile/SequenceFileAppender.java @@ -83,10 +83,10 @@ public class SequenceFileAppender extends FileAppender { this.fs = path.getFileSystem(conf); - this.delimiter = StringEscapeUtils.unescapeJava(this.meta.getOption(StorageConstants.SEQUENCEFILE_DELIMITER, + this.delimiter = StringEscapeUtils.unescapeJava(this.meta.getProperty(StorageConstants.SEQUENCEFILE_DELIMITER, StorageConstants.DEFAULT_FIELD_DELIMITER)).charAt(0); this.columnNum = schema.size(); - String nullCharacters = StringEscapeUtils.unescapeJava(this.meta.getOption(StorageConstants.SEQUENCEFILE_NULL, + String nullCharacters = StringEscapeUtils.unescapeJava(this.meta.getProperty(StorageConstants.SEQUENCEFILE_NULL, NullDatum.DEFAULT_TEXT)); if (StringUtils.isEmpty(nullCharacters)) { nullChars = NullDatum.get().asTextBytes(); @@ -94,8 +94,8 @@ public class SequenceFileAppender extends FileAppender { nullChars = nullCharacters.getBytes(); } - if(this.meta.containsOption(StorageConstants.COMPRESSION_CODEC)) { - String codecName = this.meta.getOption(StorageConstants.COMPRESSION_CODEC); + if(this.meta.containsProperty(StorageConstants.COMPRESSION_CODEC)) { + String codecName = this.meta.getProperty(StorageConstants.COMPRESSION_CODEC); codecFactory = new CompressionCodecFactory(conf); codec = codecFactory.getCodecByClassName(codecName); } else { @@ -105,7 +105,7 @@ public class SequenceFileAppender extends FileAppender { } try { - String serdeClass = this.meta.getOption(StorageConstants.SEQUENCEFILE_SERDE, + String serdeClass = this.meta.getProperty(StorageConstants.SEQUENCEFILE_SERDE, TextSerializerDeserializer.class.getName()); serde = (SerializerDeserializer) Class.forName(serdeClass).newInstance(); serde.init(schema); @@ -125,7 +125,7 @@ public class SequenceFileAppender extends FileAppender { valueClass = Text.class; } - String type = this.meta.getOption(StorageConstants.COMPRESSION_TYPE, CompressionType.NONE.name()); + String type = this.meta.getProperty(StorageConstants.COMPRESSION_TYPE, CompressionType.NONE.name()); if (type.equals(CompressionType.BLOCK.name())) { writer = SequenceFile.createWriter(fs, conf, path, keyClass, valueClass, CompressionType.BLOCK, codec); } else if (type.equals(CompressionType.RECORD.name())) { http://git-wip-us.apache.org/repos/asf/tajo/blob/b3d4a340/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/sequencefile/SequenceFileScanner.java ---------------------------------------------------------------------- diff --git a/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/sequencefile/SequenceFileScanner.java b/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/sequencefile/SequenceFileScanner.java index 5009701..37cffdb 100644 --- a/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/sequencefile/SequenceFileScanner.java +++ b/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/sequencefile/SequenceFileScanner.java @@ -96,7 +96,7 @@ public class SequenceFileScanner extends FileScanner { reader = new SequenceFile.Reader(fs, fragment.getPath(), conf); - String nullCharacters = StringEscapeUtils.unescapeJava(this.meta.getOption(StorageConstants.SEQUENCEFILE_NULL, + String nullCharacters = StringEscapeUtils.unescapeJava(this.meta.getProperty(StorageConstants.SEQUENCEFILE_NULL, NullDatum.DEFAULT_TEXT)); if (StringUtils.isEmpty(nullCharacters)) { nullChars = NullDatum.get().asTextBytes(); @@ -104,7 +104,7 @@ public class SequenceFileScanner extends FileScanner { nullChars = nullCharacters.getBytes(); } - String delim = meta.getOption(StorageConstants.SEQUENCEFILE_DELIMITER, StorageConstants.DEFAULT_FIELD_DELIMITER); + String delim = meta.getProperty(StorageConstants.SEQUENCEFILE_DELIMITER, StorageConstants.DEFAULT_FIELD_DELIMITER); this.delimiter = StringEscapeUtils.unescapeJava(delim).charAt(0); this.start = fragment.getStartKey(); @@ -130,7 +130,7 @@ public class SequenceFileScanner extends FileScanner { prepareProjection(targets); try { - String serdeClass = this.meta.getOption(StorageConstants.SEQUENCEFILE_SERDE, TextSerializerDeserializer.class.getName()); + String serdeClass = this.meta.getProperty(StorageConstants.SEQUENCEFILE_SERDE, TextSerializerDeserializer.class.getName()); serde = (SerializerDeserializer) Class.forName(serdeClass).newInstance(); serde.init(schema); http://git-wip-us.apache.org/repos/asf/tajo/blob/b3d4a340/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/text/CSVLineDeserializer.java ---------------------------------------------------------------------- diff --git a/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/text/CSVLineDeserializer.java b/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/text/CSVLineDeserializer.java index 8664f5e..8d33f5b 100644 --- a/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/text/CSVLineDeserializer.java +++ b/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/text/CSVLineDeserializer.java @@ -47,8 +47,8 @@ public class CSVLineDeserializer extends TextLineDeserializer { targetColumnIndexes = PlannerUtil.getTargetIds(schema, projected); // The quote char must be a single ASCII character. - hasQuoteChar = meta.containsOption(StorageConstants.QUOTE_CHAR); - quoteChar = meta.getOption(StorageConstants.QUOTE_CHAR, "\0").getBytes()[0]; + hasQuoteChar = meta.containsProperty(StorageConstants.QUOTE_CHAR); + quoteChar = meta.getProperty(StorageConstants.QUOTE_CHAR, "\0").getBytes()[0]; } @Override http://git-wip-us.apache.org/repos/asf/tajo/blob/b3d4a340/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/text/CSVLineSerDe.java ---------------------------------------------------------------------- diff --git a/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/text/CSVLineSerDe.java b/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/text/CSVLineSerDe.java index 4ebdbe8..b08ce15 100644 --- a/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/text/CSVLineSerDe.java +++ b/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/text/CSVLineSerDe.java @@ -37,7 +37,7 @@ public class CSVLineSerDe extends TextLineSerDe { } public static byte[] getFieldDelimiter(TableMeta meta) { - return StringEscapeUtils.unescapeJava(meta.getOption(StorageConstants.TEXT_DELIMITER, + return StringEscapeUtils.unescapeJava(meta.getProperty(StorageConstants.TEXT_DELIMITER, StorageConstants.DEFAULT_FIELD_DELIMITER)).getBytes(Bytes.UTF8_CHARSET); } } http://git-wip-us.apache.org/repos/asf/tajo/blob/b3d4a340/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/text/DelimitedTextFile.java ---------------------------------------------------------------------- diff --git a/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/text/DelimitedTextFile.java b/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/text/DelimitedTextFile.java index 53fbd57..46d7f6a 100644 --- a/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/text/DelimitedTextFile.java +++ b/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/text/DelimitedTextFile.java @@ -78,7 +78,7 @@ public class DelimitedTextFile { String serDeClassName; // if there is no given serde class, it will use CSV line serder. - serDeClassName = meta.getOption(StorageConstants.TEXT_SERDE_CLASS, StorageConstants.DEFAULT_TEXT_SERDE_CLASS); + serDeClassName = meta.getProperty(StorageConstants.TEXT_SERDE_CLASS, StorageConstants.DEFAULT_TEXT_SERDE_CLASS); try { Class<? extends TextLineSerDe> serdeClass; @@ -147,8 +147,8 @@ public class DelimitedTextFile { } os.reset(); - if (this.meta.containsOption(StorageConstants.COMPRESSION_CODEC)) { - String codecName = this.meta.getOption(StorageConstants.COMPRESSION_CODEC); + if (this.meta.containsProperty(StorageConstants.COMPRESSION_CODEC)) { + String codecName = this.meta.getProperty(StorageConstants.COMPRESSION_CODEC); codecFactory = new CompressionCodecFactory(conf); codec = codecFactory.getCodecByClassName(codecName); compressor = CodecPool.getCompressor(codec); @@ -294,7 +294,7 @@ public class DelimitedTextFile { endOffset = startOffset + fragment.getLength(); errorTorrenceMaxNum = - Integer.parseInt(meta.getOption(TEXT_ERROR_TOLERANCE_MAXNUM, DEFAULT_TEXT_ERROR_TOLERANCE_MAXNUM)); + Integer.parseInt(meta.getProperty(TEXT_ERROR_TOLERANCE_MAXNUM, DEFAULT_TEXT_ERROR_TOLERANCE_MAXNUM)); } @@ -329,7 +329,7 @@ public class DelimitedTextFile { } else { // skip header lines if it is defined // initialization for skipping header(max 20) - int headerLineNum = Math.min(Integer.parseInt(meta.getOption(StorageConstants.TEXT_SKIP_HEADER_LINE, "0")), 20); + int headerLineNum = Math.min(Integer.parseInt(meta.getProperty(StorageConstants.TEXT_SKIP_HEADER_LINE, "0")), 20); if (headerLineNum > 0) { LOG.info(String.format("Skip %d header lines", headerLineNum)); for (int i = 0; i < headerLineNum; i++) { http://git-wip-us.apache.org/repos/asf/tajo/blob/b3d4a340/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/text/TextFieldSerializerDeserializer.java ---------------------------------------------------------------------- diff --git a/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/text/TextFieldSerializerDeserializer.java b/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/text/TextFieldSerializerDeserializer.java index d9d2639..53b6bcd 100644 --- a/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/text/TextFieldSerializerDeserializer.java +++ b/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/text/TextFieldSerializerDeserializer.java @@ -53,8 +53,8 @@ public class TextFieldSerializerDeserializer implements FieldSerializerDeseriali private Schema schema; public TextFieldSerializerDeserializer(TableMeta meta) { - hasTimezone = meta.containsOption(StorageConstants.TIMEZONE); - timezone = TimeZone.getTimeZone(meta.getOption(StorageConstants.TIMEZONE, TajoConstants.DEFAULT_SYSTEM_TIMEZONE)); + hasTimezone = meta.containsProperty(StorageConstants.TIMEZONE); + timezone = TimeZone.getTimeZone(meta.getProperty(StorageConstants.TIMEZONE, TajoConstants.DEFAULT_SYSTEM_TIMEZONE)); } private static boolean isNull(ByteBuf val, ByteBuf nullBytes) { http://git-wip-us.apache.org/repos/asf/tajo/blob/b3d4a340/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/text/TextLineSerDe.java ---------------------------------------------------------------------- diff --git a/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/text/TextLineSerDe.java b/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/text/TextLineSerDe.java index 3143ec2..0717fae 100644 --- a/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/text/TextLineSerDe.java +++ b/tajo-storage/tajo-storage-hdfs/src/main/java/org/apache/tajo/storage/text/TextLineSerDe.java @@ -62,7 +62,7 @@ public abstract class TextLineSerDe { public static byte[] getNullCharsAsBytes(TableMeta meta, String key, String defaultVal) { byte [] nullChars; - String nullCharacters = StringEscapeUtils.unescapeJava(meta.getOption(key, defaultVal)); + String nullCharacters = StringEscapeUtils.unescapeJava(meta.getProperty(key, defaultVal)); if (StringUtils.isEmpty(nullCharacters)) { nullChars = NullDatum.get().asTextBytes(); } else { http://git-wip-us.apache.org/repos/asf/tajo/blob/b3d4a340/tajo-storage/tajo-storage-hdfs/src/test/java/org/apache/tajo/storage/TestCompressionStorages.java ---------------------------------------------------------------------- diff --git a/tajo-storage/tajo-storage-hdfs/src/test/java/org/apache/tajo/storage/TestCompressionStorages.java b/tajo-storage/tajo-storage-hdfs/src/test/java/org/apache/tajo/storage/TestCompressionStorages.java index 9c30202..7836730 100644 --- a/tajo-storage/tajo-storage-hdfs/src/test/java/org/apache/tajo/storage/TestCompressionStorages.java +++ b/tajo-storage/tajo-storage-hdfs/src/test/java/org/apache/tajo/storage/TestCompressionStorages.java @@ -114,10 +114,10 @@ public class TestCompressionStorages { schema.addColumn("name", Type.TEXT); TableMeta meta = CatalogUtil.newTableMeta(dataFormat); - meta.putOption("compression.codec", codec.getCanonicalName()); - meta.putOption("compression.type", SequenceFile.CompressionType.BLOCK.name()); - meta.putOption("rcfile.serde", TextSerializerDeserializer.class.getName()); - meta.putOption("sequencefile.serde", TextSerializerDeserializer.class.getName()); + meta.putProperty("compression.codec", codec.getCanonicalName()); + meta.putProperty("compression.type", SequenceFile.CompressionType.BLOCK.name()); + meta.putProperty("rcfile.serde", TextSerializerDeserializer.class.getName()); + meta.putProperty("sequencefile.serde", TextSerializerDeserializer.class.getName()); String fileName = "Compression_" + codec.getSimpleName(); Path tablePath = new Path(testDir, fileName);
