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);

Reply via email to