carbondata-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From ravipes...@apache.org
Subject [4/5] incubator-carbondata git commit: Fix groupid, package name, Class name issues
Date Thu, 23 Mar 2017 08:22:17 GMT
Fix groupid,package name,Class name issues


Project: http://git-wip-us.apache.org/repos/asf/incubator-carbondata/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-carbondata/commit/32bf2961
Tree: http://git-wip-us.apache.org/repos/asf/incubator-carbondata/tree/32bf2961
Diff: http://git-wip-us.apache.org/repos/asf/incubator-carbondata/diff/32bf2961

Branch: refs/heads/master
Commit: 32bf2961a38d53c4674fc57b25ab48d99e0f4858
Parents: 9d7dbea
Author: chenliang613 <chenliang613@huawei.com>
Authored: Thu Mar 23 13:32:30 2017 +0530
Committer: chenliang613 <chenliang613@huawei.com>
Committed: Thu Mar 23 13:32:30 2017 +0530

----------------------------------------------------------------------
 integration/presto/pom.xml                      | 335 +++++----
 integration/presto/src/checkstyle/checks.xml    |   7 -
 .../presto/src/license/LICENSE-HEADER.txt       |  11 -
 .../carbondata/CarbondataColumnConstraint.java  |  99 ---
 .../carbondata/CarbondataColumnHandle.java      | 159 ----
 .../presto/carbondata/CarbondataConnector.java  |  84 ---
 .../carbondata/CarbondataConnectorFactory.java  |  95 ---
 .../carbondata/CarbondataConnectorId.java       |  57 --
 .../carbondata/CarbondataHandleResolver.java    |  45 --
 .../presto/carbondata/CarbondataMetadata.java   | 305 --------
 .../presto/carbondata/CarbondataModule.java     |  79 --
 .../presto/carbondata/CarbondataPlugin.java     |  32 -
 .../carbondata/CarbondataRecordCursor.java      | 152 ----
 .../presto/carbondata/CarbondataRecordSet.java  | 111 ---
 .../carbondata/CarbondataRecordSetProvider.java | 292 --------
 .../presto/carbondata/CarbondataSplit.java      |  92 ---
 .../carbondata/CarbondataSplitManager.java      | 300 --------
 .../carbondata/CarbondataTableHandle.java       |  80 --
 .../carbondata/CarbondataTableLayoutHandle.java |  83 ---
 .../carbondata/CarbondataTransactionHandle.java |  22 -
 .../com/facebook/presto/carbondata/Types.java   |  34 -
 .../carbondata/impl/CarbonLocalInputSplit.java  |  89 ---
 .../carbondata/impl/CarbonTableCacheModel.java  |  40 -
 .../carbondata/impl/CarbonTableConfig.java      |  58 --
 .../carbondata/impl/CarbonTableReader.java      | 736 ------------------
 .../presto/CarbondataColumnConstraint.java      | 103 +++
 .../presto/CarbondataColumnHandle.java          | 163 ++++
 .../carbondata/presto/CarbondataConnector.java  |  88 +++
 .../presto/CarbondataConnectorFactory.java      |  99 +++
 .../presto/CarbondataConnectorId.java           |  61 ++
 .../presto/CarbondataHandleResolver.java        |  49 ++
 .../carbondata/presto/CarbondataMetadata.java   | 309 ++++++++
 .../carbondata/presto/CarbondataModule.java     |  83 +++
 .../carbondata/presto/CarbondataPlugin.java     |  36 +
 .../presto/CarbondataRecordCursor.java          | 156 ++++
 .../carbondata/presto/CarbondataRecordSet.java  | 115 +++
 .../presto/CarbondataRecordSetProvider.java     | 296 ++++++++
 .../carbondata/presto/CarbondataSplit.java      |  96 +++
 .../presto/CarbondataSplitManager.java          | 304 ++++++++
 .../presto/CarbondataTableHandle.java           |  84 +++
 .../presto/CarbondataTableLayoutHandle.java     |  87 +++
 .../presto/CarbondataTransactionHandle.java     |  26 +
 .../org/apache/carbondata/presto/Types.java     |  38 +
 .../presto/impl/CarbonLocalInputSplit.java      |  93 +++
 .../presto/impl/CarbonTableCacheModel.java      |  44 ++
 .../presto/impl/CarbonTableConfig.java          |  62 ++
 .../presto/impl/CarbonTableReader.java          | 738 +++++++++++++++++++
 47 files changed, 3303 insertions(+), 3224 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/32bf2961/integration/presto/pom.xml
----------------------------------------------------------------------
diff --git a/integration/presto/pom.xml b/integration/presto/pom.xml
index b9a7e34..26e7f85 100644
--- a/integration/presto/pom.xml
+++ b/integration/presto/pom.xml
@@ -1,167 +1,178 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0"
-         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-    <modelVersion>4.0.0</modelVersion>
-
-    <parent>
-        <groupId>com.facebook.presto</groupId>
-        <artifactId>presto-root</artifactId>
-        <version>0.153</version>
-    </parent>
-
-    <groupId>com.facebook.presto</groupId>
-    <artifactId>presto-carbondata</artifactId>
-    <packaging>presto-plugin</packaging>
-
-    <dependencies>
-        <dependency>
-            <groupId>com.facebook.presto</groupId>
-            <artifactId>presto-spi</artifactId>
-            <version>0.153</version>
-        </dependency>
-
-        <dependency>
-            <groupId>org.apache.thrift</groupId>
-            <artifactId>libthrift</artifactId>
-            <version>0.9.3</version>
-        </dependency>
-
-        <dependency>
-            <groupId>org.apache.carbondata</groupId>
-            <artifactId>carbondata-core</artifactId>
-            <version>1.0.0-incubating</version>
-        </dependency>
-
-        <dependency>
-            <groupId>org.apache.carbondata</groupId>
-            <artifactId>carbondata-common</artifactId>
-            <version>1.0.0-incubating</version>
-        </dependency>
-
-        <dependency>
-            <groupId>org.apache.carbondata</groupId>
-            <artifactId>carbondata-hadoop</artifactId>
-            <version>1.0.0-incubating</version>
-        </dependency>
-
-        <dependency>
-            <groupId>io.airlift</groupId>
-            <artifactId>bootstrap</artifactId>
-            <exclusions>
-                <exclusion>
-                    <groupId>org.slf4j</groupId>
-                    <artifactId>log4j-over-slf4j</artifactId>
-                </exclusion>
-            </exclusions>
-        </dependency>
-
-        <dependency>
-            <groupId>io.airlift</groupId>
-            <artifactId>json</artifactId>
-        </dependency>
-
-        <dependency>
-            <groupId>io.airlift</groupId>
-            <artifactId>log</artifactId>
-        </dependency>
-
-        <dependency>
-            <groupId>com.google.guava</groupId>
-            <artifactId>guava</artifactId>
-        </dependency>
-
-        <dependency>
-            <groupId>com.google.inject</groupId>
-            <artifactId>guice</artifactId>
-        </dependency>
-
-        <!--presto intergated-->
-
-        <dependency>
-            <groupId>com.facebook.presto</groupId>
-            <artifactId>presto-spi</artifactId>
-            <version>0.153</version>
-            <!--<scope>provided</scope>-->
-        </dependency>
-
-        <dependency>
-            <groupId>io.airlift</groupId>
-            <artifactId>slice</artifactId>
-            <scope>provided</scope>
-        </dependency>
-
-        <dependency>
-            <groupId>io.airlift</groupId>
-            <artifactId>units</artifactId>
-            <scope>provided</scope>
-        </dependency>
-
-        <dependency>
-            <groupId>com.fasterxml.jackson.core</groupId>
-            <artifactId>jackson-annotations</artifactId>
-            <scope>provided</scope>
-        </dependency>
-        <dependency>
-            <groupId>com.facebook.presto.hadoop</groupId>
-            <artifactId>hadoop-apache2</artifactId>
-        </dependency>
-
-    </dependencies>
+<!--
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+
+  <modelVersion>4.0.0</modelVersion>
+
+  <parent>
+    <groupId>org.apache.carbondata</groupId>
+    <artifactId>carbondata-parent</artifactId>
+    <version>1.1.0-incubating-SNAPSHOT</version>
+    <relativePath>../../pom.xml</relativePath>
+  </parent>
+
+  <artifactId>carbondata-presto</artifactId>
+  <name>Apache CarbonData :: presto</name>
+
+  <properties>
+    <dev.path>${basedir}/../../dev</dev.path>
+  </properties>
+
+  <dependencies>
+    <dependency>
+      <groupId>org.apache.thrift</groupId>
+      <artifactId>libthrift</artifactId>
+      <version>0.9.3</version>
+    </dependency>
+
+    <dependency>
+      <groupId>org.apache.carbondata</groupId>
+      <artifactId>carbondata-core</artifactId>
+      <version>1.0.0-incubating</version>
+    </dependency>
+
+    <dependency>
+      <groupId>org.apache.carbondata</groupId>
+      <artifactId>carbondata-common</artifactId>
+      <version>1.0.0-incubating</version>
+    </dependency>
+
+    <dependency>
+      <groupId>org.apache.carbondata</groupId>
+      <artifactId>carbondata-hadoop</artifactId>
+      <version>1.0.0-incubating</version>
+    </dependency>
+
+    <dependency>
+      <groupId>io.airlift</groupId>
+      <artifactId>bootstrap</artifactId>
+      <exclusions>
+        <exclusion>
+          <groupId>org.slf4j</groupId>
+          <artifactId>log4j-over-slf4j</artifactId>
+        </exclusion>
+      </exclusions>
+    </dependency>
+
+    <dependency>
+      <groupId>io.airlift</groupId>
+      <artifactId>json</artifactId>
+    </dependency>
+
+    <dependency>
+      <groupId>io.airlift</groupId>
+      <artifactId>log</artifactId>
+    </dependency>
+
+    <dependency>
+      <groupId>io.airlift</groupId>
+      <artifactId>slice</artifactId>
+      <scope>provided</scope>
+    </dependency>
+
+    <dependency>
+      <groupId>io.airlift</groupId>
+      <artifactId>units</artifactId>
+      <scope>provided</scope>
+    </dependency>
+
+    <dependency>
+      <groupId>com.fasterxml.jackson.core</groupId>
+      <artifactId>jackson-annotations</artifactId>
+      <scope>provided</scope>
+    </dependency>
+
+    <dependency>
+      <groupId>com.google.guava</groupId>
+      <artifactId>guava</artifactId>
+    </dependency>
+
+    <dependency>
+      <groupId>com.google.inject</groupId>
+      <artifactId>guice</artifactId>
+    </dependency>
+
+    <!--presto intergated-->
+    <dependency>
+      <groupId>com.facebook.presto</groupId>
+      <artifactId>presto-spi</artifactId>
+      <version>0.166</version>
+      <!--<scope>provided</scope>-->
+    </dependency>
+
+    <dependency>
+      <groupId>com.facebook.presto.hadoop</groupId>
+      <artifactId>hadoop-apache2</artifactId>
+    </dependency>
+  </dependencies>
 
     <build>
-        <plugins>
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-checkstyle-plugin</artifactId>
-                <version>2.17</version>
-                <configuration>
-                    <skip>true</skip>
-                </configuration>
-            </plugin>
-
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-enforcer-plugin</artifactId>
-                <version>1.4.1</version>
-                <configuration>
-                    <skip>true</skip>
-                </configuration>
-            </plugin>
-
-            <plugin>
-                <groupId>com.ning.maven.plugins</groupId>
-                <artifactId>maven-dependency-versions-check-plugin</artifactId>
-                <configuration>
-                    <skip>true</skip>
-                    <failBuildInCaseOfConflict>false</failBuildInCaseOfConflict>
-                </configuration>
-            </plugin>
-
-            <plugin>
-                <groupId>org.apache.maven.plugins</groupId>
-                <artifactId>maven-dependency-plugin</artifactId>
-                <configuration>
-                    <skip>false</skip>
-                </configuration>
-            </plugin>
-
-            <plugin>
-                <groupId>com.ning.maven.plugins</groupId>
-                <artifactId>maven-duplicate-finder-plugin</artifactId>
-                <configuration>
-                    <skip>true</skip>
-                </configuration>
-            </plugin>
-
-            <plugin>
-                <groupId>pl.project13.maven</groupId>
-                <artifactId>git-commit-id-plugin</artifactId>
-                <configuration>
-                    <skip>true</skip>
-                </configuration>
-            </plugin>
-        </plugins>
+      <plugins>
+        <plugin>
+          <groupId>org.apache.maven.plugins</groupId>
+          <artifactId>maven-checkstyle-plugin</artifactId>
+          <version>2.17</version>
+          <configuration>
+            <skip>true</skip>
+          </configuration>
+        </plugin>
+
+        <plugin>
+          <groupId>org.apache.maven.plugins</groupId>
+          <artifactId>maven-enforcer-plugin</artifactId>
+          <version>1.4.1</version>
+          <configuration>
+            <skip>true</skip>
+          </configuration>
+        </plugin>
+
+        <plugin>
+          <groupId>com.ning.maven.plugins</groupId>
+          <artifactId>maven-dependency-versions-check-plugin</artifactId>
+          <configuration>
+            <skip>true</skip>
+            <failBuildInCaseOfConflict>false</failBuildInCaseOfConflict>
+          </configuration>
+        </plugin>
+
+        <plugin>
+          <groupId>org.apache.maven.plugins</groupId>
+          <artifactId>maven-dependency-plugin</artifactId>
+          <configuration>
+            <skip>false</skip>
+          </configuration>
+        </plugin>
+
+        <plugin>
+          <groupId>com.ning.maven.plugins</groupId>
+          <artifactId>maven-duplicate-finder-plugin</artifactId>
+          <configuration>
+            <skip>true</skip>
+          </configuration>
+        </plugin>
+        <!--
+        <plugin>
+          <groupId>pl.project13.maven</groupId>
+          <artifactId>git-commit-id-plugin</artifactId>
+          <configuration>
+            <skip>true</skip>
+          </configuration>
+        </plugin>-->
+      </plugins>
     </build>
-
 </project>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/32bf2961/integration/presto/src/checkstyle/checks.xml
----------------------------------------------------------------------
diff --git a/integration/presto/src/checkstyle/checks.xml b/integration/presto/src/checkstyle/checks.xml
deleted file mode 100755
index fb6f41d..0000000
--- a/integration/presto/src/checkstyle/checks.xml
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE module PUBLIC
-        "-//Puppy Crawl//DTD Check Configuration 1.3//EN"
-        "http://www.puppycrawl.com/dtds/configuration_1_3.dtd">
-<module name="Checker">
-
-</module>

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/32bf2961/integration/presto/src/license/LICENSE-HEADER.txt
----------------------------------------------------------------------
diff --git a/integration/presto/src/license/LICENSE-HEADER.txt b/integration/presto/src/license/LICENSE-HEADER.txt
deleted file mode 100755
index d955a86..0000000
--- a/integration/presto/src/license/LICENSE-HEADER.txt
+++ /dev/null
@@ -1,11 +0,0 @@
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-    http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/32bf2961/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataColumnConstraint.java
----------------------------------------------------------------------
diff --git a/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataColumnConstraint.java b/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataColumnConstraint.java
deleted file mode 100755
index 29d2076..0000000
--- a/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataColumnConstraint.java
+++ /dev/null
@@ -1,99 +0,0 @@
-/*
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package com.facebook.presto.carbondata;
-
-import com.facebook.presto.spi.predicate.Domain;
-import com.fasterxml.jackson.annotation.JsonCreator;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import com.fasterxml.jackson.annotation.JsonSetter;
-
-import java.util.Objects;
-import java.util.Optional;
-
-import static com.google.common.base.MoreObjects.toStringHelper;
-import static java.util.Objects.requireNonNull;
-
-public class CarbondataColumnConstraint {
-    private final String name;
-    private final boolean invertedindexed;
-    private Optional<Domain> domain;
-
-    @JsonCreator
-    public CarbondataColumnConstraint(
-            @JsonProperty("name") String name,
-            @JsonProperty("domain") Optional<Domain> domain,
-            @JsonProperty("invertedindexed") boolean invertedindexed)
-    {
-        this.name = requireNonNull(name, "name is null");
-        this.invertedindexed = requireNonNull(invertedindexed, "invertedIndexed is null");
-        this.domain = requireNonNull(domain, "domain is null");
-    }
-
-    @JsonProperty
-    public boolean isInvertedindexed()
-    {
-        return invertedindexed;
-    }
-
-    @JsonProperty
-    public String getName()
-    {
-        return name;
-    }
-
-    @JsonProperty
-    public Optional<Domain> getDomain()
-    {
-        return domain;
-    }
-
-    @JsonSetter
-    public void setDomain(Optional<Domain> domain)
-    {
-        this.domain = domain;
-    }
-
-    @Override
-    public int hashCode()
-    {
-        return Objects.hash(name, domain, invertedindexed);
-    }
-
-    @Override
-    public boolean equals(Object obj)
-    {
-        if (this == obj) {
-            return true;
-        }
-
-        if ((obj == null) || (getClass() != obj.getClass())) {
-            return false;
-        }
-
-        CarbondataColumnConstraint other = (CarbondataColumnConstraint) obj;
-        return Objects.equals(this.name, other.name)
-                && Objects.equals(this.domain, other.domain)
-                && Objects.equals(this.invertedindexed, other.invertedindexed);
-    }
-
-    @Override
-    public String toString()
-    {
-        return toStringHelper(this)
-                .add("name", this.name)
-                .add("invertedindexed", this.invertedindexed)
-                .add("domain", this.domain)
-                .toString();
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/32bf2961/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataColumnHandle.java
----------------------------------------------------------------------
diff --git a/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataColumnHandle.java b/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataColumnHandle.java
deleted file mode 100755
index 49d140a..0000000
--- a/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataColumnHandle.java
+++ /dev/null
@@ -1,159 +0,0 @@
-/*
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package com.facebook.presto.carbondata;
-
-import com.facebook.presto.spi.ColumnHandle;
-import com.facebook.presto.spi.ColumnMetadata;
-import com.facebook.presto.spi.type.Type;
-import com.fasterxml.jackson.annotation.JsonCreator;
-import com.fasterxml.jackson.annotation.JsonProperty;
-
-import java.util.Objects;
-
-import static com.google.common.base.MoreObjects.toStringHelper;
-import static java.util.Objects.requireNonNull;
-
-public class CarbondataColumnHandle
-    implements ColumnHandle
-{
-        private final String connectorId;
-        private final String columnName;
-
-    public boolean isInvertedIndex() {
-        return isInvertedIndex;
-    }
-
-    private final Type columnType;
-    private final int ordinalPosition;
-    private final int keyOrdinal;
-    private final int columnGroupOrdinal;
-
-    private final int columnGroupId;
-    private final String columnUniqueId;
-    private final boolean isInvertedIndex;
-
-    public boolean isMeasure() {
-        return isMeasure;
-    }
-
-    private final boolean isMeasure;
-
-    public int getKeyOrdinal() {
-        return keyOrdinal;
-    }
-
-    public int getColumnGroupOrdinal() {
-        return columnGroupOrdinal;
-    }
-
-    public int getColumnGroupId() {
-        return columnGroupId;
-    }
-
-    public String getColumnUniqueId() {
-        return columnUniqueId;
-    }
-    /* ordinalPosition of a columnhandle is the -> number of the column in the entire list of columns of this table
-        IT DOESNT DEPEND ON THE QUERY (select clm3, clm0, clm1  from tablename)
-        The columnhandle of clm3 : has ordinalposition = 3
-     */
-
-    @JsonCreator
-    public CarbondataColumnHandle(
-            @JsonProperty("connectorId") String connectorId,
-            @JsonProperty("columnName") String columnName,
-            @JsonProperty("columnType") Type columnType,
-            @JsonProperty("ordinalPosition") int ordinalPosition,
-            @JsonProperty("keyOrdinal") int keyOrdinal,
-            @JsonProperty("columnGroupOrdinal") int columnGroupOrdinal,
-            @JsonProperty("isMeasure") boolean isMeasure,
-            @JsonProperty("columnGroupId") int columnGroupId,
-            @JsonProperty("columnUniqueId") String columnUniqueId,
-            @JsonProperty("isInvertedIndex") boolean isInvertedIndex)
-    {
-        this.connectorId = requireNonNull(connectorId, "connectorId is null");
-        this.columnName = requireNonNull(columnName, "columnName is null");
-        this.columnType = requireNonNull(columnType, "columnType is null");
-
-        this.ordinalPosition = requireNonNull(ordinalPosition, "ordinalPosition is null");
-        this.keyOrdinal = requireNonNull(keyOrdinal, "keyOrdinal is null");
-        this.columnGroupOrdinal = requireNonNull(columnGroupOrdinal, "columnGroupOrdinal is null");
-
-        this.isMeasure = isMeasure;
-        this.columnGroupId = requireNonNull(columnGroupId, "columnGroupId is null");
-        this.columnUniqueId = columnUniqueId;//requireNonNull(columnUniqueId, "columnUniqueId is null");
-        this.isInvertedIndex = requireNonNull(isInvertedIndex, "isInvertedIndex is null");
-    }
-
-    @JsonProperty
-    public String getConnectorId()
-    {
-        return connectorId;
-    }
-
-    @JsonProperty
-    public String getColumnName()
-    {
-        return columnName;
-    }
-
-    @JsonProperty
-    public Type getColumnType()
-    {
-        return columnType;
-    }
-
-    @JsonProperty
-    public int getOrdinalPosition()
-    {
-        return ordinalPosition;
-    }
-
-    public ColumnMetadata getColumnMetadata()
-    {
-        return new ColumnMetadata(columnName, columnType, null, false);
-    }
-
-    @Override
-    public int hashCode()
-    {
-        return Objects.hash(connectorId, columnName);
-    }
-
-    @Override
-    public boolean equals(Object obj)
-    {
-        if (this == obj) {
-            return true;
-        }
-        if ((obj == null) || (getClass() != obj.getClass())) {
-            return false;
-        }
-
-        CarbondataColumnHandle other = (CarbondataColumnHandle) obj;
-        return Objects.equals(this.connectorId, other.connectorId) &&
-                Objects.equals(this.columnName, other.columnName);
-    }
-
-    @Override
-    public String toString()
-    {
-        return toStringHelper(this)
-                .add("connectorId", connectorId)
-                .add("columnName", columnName)
-                .add("columnType", columnType)
-                .add("ordinalPosition", ordinalPosition)
-                .toString();
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/32bf2961/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataConnector.java
----------------------------------------------------------------------
diff --git a/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataConnector.java b/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataConnector.java
deleted file mode 100755
index 7d8fdee..0000000
--- a/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataConnector.java
+++ /dev/null
@@ -1,84 +0,0 @@
-/*
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package com.facebook.presto.carbondata;
-
-import com.facebook.presto.spi.connector.*;
-import com.facebook.presto.spi.transaction.IsolationLevel;
-import io.airlift.bootstrap.LifeCycleManager;
-import io.airlift.log.Logger;
-
-import static com.facebook.presto.spi.transaction.IsolationLevel.READ_COMMITTED;
-import static com.facebook.presto.spi.transaction.IsolationLevel.checkConnectorSupports;
-import static java.util.Objects.requireNonNull;
-
-public class CarbondataConnector
-        implements Connector
-{
-
-    private static final Logger log = Logger.get(CarbondataConnector.class);
-
-    private final LifeCycleManager lifeCycleManager;
-    private final CarbondataMetadata metadata;
-    private final ConnectorSplitManager splitManager;
-    private final ConnectorRecordSetProvider recordSetProvider;
-    private final ClassLoader classLoader;
-
-
-    public CarbondataConnector(LifeCycleManager lifeCycleManager,
-                               CarbondataMetadata metadata,
-                               ConnectorSplitManager splitManager,
-                               ConnectorRecordSetProvider recordSetProvider,
-                               ClassLoader classLoader)
-    {
-        this.lifeCycleManager = requireNonNull(lifeCycleManager, "lifeCycleManager is null");
-        this.metadata = requireNonNull(metadata, "metadata is null");
-        this.splitManager = requireNonNull(splitManager, "splitManager is null");
-        this.recordSetProvider = requireNonNull(recordSetProvider, "recordSetProvider is null");
-        this.classLoader = requireNonNull(classLoader, "classLoader is null");
-    }
-
-    @Override
-    public ConnectorTransactionHandle beginTransaction(IsolationLevel isolationLevel, boolean readOnly) {
-        checkConnectorSupports(READ_COMMITTED, isolationLevel);
-        return CarbondataTransactionHandle.INSTANCE;
-    }
-
-    @Override
-    public ConnectorMetadata getMetadata(ConnectorTransactionHandle transactionHandle) {
-        metadata.putClassLoader(classLoader);
-        return metadata;
-    }
-
-    @Override
-    public ConnectorSplitManager getSplitManager() {
-        return splitManager;
-    }
-
-    @Override
-    public ConnectorRecordSetProvider getRecordSetProvider()
-    {
-        return recordSetProvider;
-    }
-
-    @Override
-    public final void shutdown()
-    {
-        try {
-            lifeCycleManager.stop();
-        }
-        catch (Exception e) {
-            log.error(e, "Error shutting down connector");
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/32bf2961/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataConnectorFactory.java
----------------------------------------------------------------------
diff --git a/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataConnectorFactory.java b/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataConnectorFactory.java
deleted file mode 100755
index 09a3717..0000000
--- a/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataConnectorFactory.java
+++ /dev/null
@@ -1,95 +0,0 @@
-/*
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package com.facebook.presto.carbondata;
-
-import com.facebook.presto.spi.ConnectorHandleResolver;
-import com.facebook.presto.spi.classloader.ThreadContextClassLoader;
-import com.facebook.presto.spi.connector.*;
-import com.facebook.presto.spi.connector.classloader.ClassLoaderSafeConnectorSplitManager;
-import com.google.common.base.Throwables;
-import com.google.inject.Injector;
-import io.airlift.bootstrap.Bootstrap;
-import io.airlift.bootstrap.LifeCycleManager;
-import io.airlift.json.JsonModule;
-
-import java.util.Map;
-
-import static java.util.Objects.requireNonNull;
-
-public class CarbondataConnectorFactory
-        implements ConnectorFactory {
-
-    private final String name;
-    private final ClassLoader classLoader;
-
-    public CarbondataConnectorFactory(String connectorName, ClassLoader classLoader){
-        this.name = connectorName;
-        this.classLoader = requireNonNull(classLoader, "classLoader is null");
-    }
-
-
-    @Override
-    public String getName() {
-        return name;
-    }
-
-    @Override
-    public ConnectorHandleResolver getHandleResolver() {
-        return new CarbondataHandleResolver();
-    }
-
-    @Override
-    public Connector create(String connectorId, Map<String, String> config, ConnectorContext context) {
-        requireNonNull(config, "config is null");
-
-        try (ThreadContextClassLoader ignored = new ThreadContextClassLoader(classLoader)) {
-            Bootstrap app = new Bootstrap(new JsonModule(), new CarbondataModule(connectorId, context.getTypeManager()));
-
-            Injector injector = app
-                    .strictConfig()
-                    .doNotInitializeLogging()
-                    .setRequiredConfigurationProperties(config)
-                    .initialize();
-
-            LifeCycleManager lifeCycleManager = injector.getInstance(LifeCycleManager.class);
-            CarbondataMetadata metadata = injector.getInstance(CarbondataMetadata.class);
-            //HiveTransactionManager transactionManager = injector.getInstance(HiveTransactionManager.class);
-            ConnectorSplitManager splitManager = injector.getInstance(ConnectorSplitManager.class);
-            ConnectorRecordSetProvider connectorRecordSet = injector.getInstance(ConnectorRecordSetProvider.class);
-            //ConnectorAccessControl accessControl = injector.getInstance(ConnectorAccessControl.class);
-
-
-            //ConnectorPageSourceProvider connectorPageSource = injector.getInstance(ConnectorPageSourceProvider.class);
-            //ConnectorPageSinkProvider pageSinkProvider = injector.getInstance(ConnectorPageSinkProvider.class);
-            //ConnectorNodePartitioningProvider connectorDistributionProvider = injector.getInstance(ConnectorNodePartitioningProvider.class);
-            //HiveSessionProperties hiveSessionProperties = injector.getInstance(HiveSessionProperties.class);
-            //HiveTableProperties hiveTableProperties = injector.getInstance(HiveTableProperties.class);
-
-
-            return new CarbondataConnector(
-                    lifeCycleManager,
-                    metadata,
-                    new ClassLoaderSafeConnectorSplitManager(splitManager, classLoader),
-                    connectorRecordSet,//new ClassLoaderSafeConnectorRecordSetProvider(, classLoader),
-                    classLoader
-                    //new ClassLoaderSafeConnectorPageSourceProvider(connectorPageSource, classLoader),
-                    //new ClassLoaderSafeConnectorPageSinkProvider(pageSinkProvider, classLoader),
-                    //new ClassLoaderSafeNodePartitioningProvider(connectorDistributionProvider, classLoader),
-            );
-        }
-        catch (Exception e) {
-            throw Throwables.propagate(e);
-        }
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/32bf2961/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataConnectorId.java
----------------------------------------------------------------------
diff --git a/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataConnectorId.java b/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataConnectorId.java
deleted file mode 100755
index 09289e3..0000000
--- a/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataConnectorId.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package com.facebook.presto.carbondata;
-
-import com.google.inject.Inject;
-
-import java.util.Objects;
-
-import static java.util.Objects.requireNonNull;
-
-public class CarbondataConnectorId
-{
-    private final String id;
-
-    @Inject
-    public CarbondataConnectorId(String id)
-    {
-        this.id = requireNonNull(id, "id is null");
-    }
-
-    @Override
-    public String toString()
-    {
-        return id;
-    }
-
-    @Override
-    public int hashCode()
-    {
-        return Objects.hash(id);
-    }
-
-    @Override
-    public boolean equals(Object obj)
-    {
-        if (this == obj) {
-            return true;
-        }
-
-        if ((obj == null) || (getClass() != obj.getClass())) {
-            return false;
-        }
-
-        return Objects.equals(this.id, ((CarbondataConnectorId) obj).id);
-    }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/32bf2961/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataHandleResolver.java
----------------------------------------------------------------------
diff --git a/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataHandleResolver.java b/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataHandleResolver.java
deleted file mode 100755
index 729d9e5..0000000
--- a/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataHandleResolver.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package com.facebook.presto.carbondata;
-
-import com.facebook.presto.spi.*;
-import com.facebook.presto.spi.connector.ConnectorTransactionHandle;
-
-public class CarbondataHandleResolver implements ConnectorHandleResolver {
-    @Override
-    public Class<? extends ConnectorTableHandle> getTableHandleClass() {
-        return CarbondataTableHandle.class;
-    }
-
-    @Override
-    public Class<? extends ConnectorTableLayoutHandle> getTableLayoutHandleClass() {
-        return CarbondataTableLayoutHandle.class;
-    }
-
-    @Override
-    public Class<? extends ColumnHandle> getColumnHandleClass() {
-        return CarbondataColumnHandle.class;
-    }
-
-    @Override
-    public Class<? extends ConnectorSplit> getSplitClass() {
-        return CarbondataSplit.class;
-    }
-
-    @Override
-    public Class<? extends ConnectorTransactionHandle> getTransactionHandleClass()
-    {
-        return CarbondataTransactionHandle.class;
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/32bf2961/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataMetadata.java
----------------------------------------------------------------------
diff --git a/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataMetadata.java b/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataMetadata.java
deleted file mode 100755
index 2866149..0000000
--- a/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataMetadata.java
+++ /dev/null
@@ -1,305 +0,0 @@
-/*
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package com.facebook.presto.carbondata;
-
-import com.facebook.presto.carbondata.impl.CarbonTableReader;
-import com.facebook.presto.spi.*;
-import com.facebook.presto.spi.classloader.ThreadContextClassLoader;
-import com.facebook.presto.spi.connector.ConnectorMetadata;
-import com.facebook.presto.spi.type.*;
-import com.google.common.collect.ImmutableList;
-import com.google.common.collect.ImmutableMap;
-import org.apache.carbondata.core.metadata.datatype.DataType;
-import org.apache.carbondata.core.metadata.schema.table.CarbonTable;
-import org.apache.carbondata.core.metadata.schema.table.column.CarbonDimension;
-import org.apache.carbondata.core.metadata.schema.table.column.CarbonMeasure;
-import org.apache.carbondata.core.metadata.schema.table.column.ColumnSchema;
-
-import javax.inject.Inject;
-import java.util.*;
-
-import static com.facebook.presto.carbondata.Types.checkType;
-import static com.google.common.base.Preconditions.checkArgument;
-import static java.util.Objects.requireNonNull;
-
-public class CarbondataMetadata
-        implements ConnectorMetadata
-{
-    private final String connectorId;
-    private CarbonTableReader carbonTableReader;
-    private ClassLoader classLoader;
-
-    private Map<String, ColumnHandle> columnHandleMap;
-
-    @Inject
-    public CarbondataMetadata(CarbondataConnectorId connectorId, CarbonTableReader reader)
-    {
-        this.connectorId = requireNonNull(connectorId, "connectorId is null").toString();
-        this.carbonTableReader = requireNonNull(reader, "client is null");
-    }
-
-
-    public void putClassLoader(ClassLoader classLoader)
-    {
-        this.classLoader = classLoader;
-    }
-
-
-    @Override
-    public List<String> listSchemaNames(ConnectorSession session) {
-        return listSchemaNamesInternal();
-    }
-
-
-    public List<String> listSchemaNamesInternal()
-    {
-        List<String> ret;
-        try (ThreadContextClassLoader ignored = new ThreadContextClassLoader(classLoader)) {
-            ret = carbonTableReader.getSchemaNames();
-        }
-        return ret;
-    }
-
-    @Override
-    public List<SchemaTableName> listTables(ConnectorSession session, String schemaNameOrNull) {
-
-        /*List<SchemaTableName> all = carbonTableReader.getTableList();
-        if(schemaNameOrNull != null)
-        {
-            return all.stream().filter(a -> schemaNameOrNull.equals(a.getSchemaName())).collect(Collectors.toList());
-        }
-        return all;*/
-
-        List<String> schemaNames;
-        if (schemaNameOrNull != null) {
-            schemaNames = ImmutableList.of(schemaNameOrNull);
-        }
-        else {
-            schemaNames = carbonTableReader.getSchemaNames();
-        }
-
-        ImmutableList.Builder<SchemaTableName> builder = ImmutableList.builder();
-        for (String schemaName : schemaNames) {
-            for (String tableName : carbonTableReader.getTableNames(schemaName)) {
-                builder.add(new SchemaTableName(schemaName, tableName));
-            }
-        }
-        return builder.build();
-    }
-
-    @Override
-    public Map<SchemaTableName, List<ColumnMetadata>> listTableColumns(ConnectorSession session, SchemaTablePrefix prefix) {
-        requireNonNull(prefix, "SchemaTablePrefix is null");
-
-        ImmutableMap.Builder<SchemaTableName, List<ColumnMetadata>> columns = ImmutableMap.builder();
-        for (SchemaTableName tableName : listTables(session, prefix)) {
-            ConnectorTableMetadata tableMetadata = getTableMetadata(tableName);
-            if (tableMetadata != null) {
-                columns.put(tableName, tableMetadata.getColumns());
-            }
-        }
-        return columns.build();
-    }
-
-    //if prefix is null. return all tables
-    //if prefix is not null, just return this table
-    private List<SchemaTableName> listTables(ConnectorSession session, SchemaTablePrefix prefix)
-    {
-        if (prefix.getSchemaName() == null) {
-            return listTables(session, prefix.getSchemaName());
-        }
-        return ImmutableList.of(new SchemaTableName(prefix.getSchemaName(), prefix.getTableName()));
-    }
-
-    private ConnectorTableMetadata getTableMetadata(SchemaTableName tableName)
-    {
-        if (!listSchemaNamesInternal().contains(tableName.getSchemaName())) {
-            return null;
-        }
-
-        CarbonTable cb = carbonTableReader.getTable(tableName);
-        if (cb == null) {
-            return null;
-        }
-
-        List<ColumnMetadata> spiCols = new LinkedList<>();
-        List<CarbonDimension> cols = cb.getDimensionByTableName(tableName.getTableName());
-        for(CarbonDimension col : cols)
-        {
-            //show columns command will return these data
-            Type spiType = CarbondataType2SpiMapper(col.getColumnSchema().getDataType());
-            ColumnMetadata spiCol = new ColumnMetadata(col.getColumnSchema().getColumnName(), spiType);
-            spiCols.add(spiCol);
-        }
-
-        List<CarbonMeasure> mcols = cb.getMeasureByTableName(tableName.getTableName());
-        for(CarbonMeasure mcol : mcols)
-        {
-            Type spiType = CarbondataType2SpiMapper(mcol.getColumnSchema().getDataType());
-            ColumnMetadata spiCol = new ColumnMetadata(mcol.getColumnSchema().getColumnName(), spiType);
-            spiCols.add(spiCol);
-        }
-
-        //封装carbonTable
-        return new ConnectorTableMetadata(tableName, spiCols);
-    }
-
-    @Override
-    public Map<String, ColumnHandle> getColumnHandles(ConnectorSession session, ConnectorTableHandle tableHandle) {
-
-        CarbondataTableHandle handle = checkType(tableHandle, CarbondataTableHandle.class, "tableHandle");
-        checkArgument(handle.getConnectorId().equals(connectorId), "tableHandle is not for this connector");
-
-        String schemaName = handle.getSchemaTableName().getSchemaName();
-        if (!listSchemaNamesInternal().contains(schemaName)) {
-            throw new SchemaNotFoundException(schemaName);
-        }
-
-        //CarbonTable(official struct) is stored in CarbonMetadata(official struct)
-        CarbonTable cb = carbonTableReader.getTable(handle.getSchemaTableName());
-        if (cb == null) {
-            throw new TableNotFoundException(handle.getSchemaTableName());
-        }
-
-        ImmutableMap.Builder<String, ColumnHandle> columnHandles = ImmutableMap.builder();
-        int index = 0;
-        String tableName = handle.getSchemaTableName().getTableName();
-        for (CarbonDimension column : cb.getDimensionByTableName(tableName)) {
-            ColumnSchema cs = column.getColumnSchema();
-
-            int complex = column.getComplexTypeOrdinal();
-            column.getNumberOfChild();
-            column.getListOfChildDimensions();
-
-            Type spiType = CarbondataType2SpiMapper(cs.getDataType());
-            columnHandles.put(
-                    cs.getColumnName(),
-                    new CarbondataColumnHandle(
-                            connectorId,
-                            cs.getColumnName(),
-                            spiType,
-                            index,
-                            column.getKeyOrdinal(),
-                            column.getColumnGroupOrdinal(),
-                            false,
-                            cs.getColumnGroupId(),
-                            cs.getColumnUniqueId(),
-                            cs.isUseInvertedIndex()));
-            index++;
-        }
-
-        for(CarbonMeasure measure : cb.getMeasureByTableName(tableName)){
-            ColumnSchema cs = measure.getColumnSchema();
-
-            Type spiType = CarbondataType2SpiMapper(cs.getDataType());
-            columnHandles.put(
-                    cs.getColumnName(),
-                    new CarbondataColumnHandle(
-                            connectorId,
-                            cs.getColumnName(),
-                            spiType,
-                            index,
-                            measure.getOrdinal(),
-                            cs.getColumnGroupId(),
-                            true,
-                            cs.getColumnGroupId(),
-                            cs.getColumnUniqueId(),
-                            cs.isUseInvertedIndex()));
-            index++;
-        }
-
-        //should i cache it?
-        columnHandleMap = columnHandles.build();
-
-        return columnHandleMap;
-    }
-
-    @Override
-    public ColumnMetadata getColumnMetadata(ConnectorSession session, ConnectorTableHandle tableHandle, ColumnHandle columnHandle) {
-
-        checkType(tableHandle, CarbondataTableHandle.class, "tableHandle");
-        return checkType(columnHandle, CarbondataColumnHandle.class, "columnHandle").getColumnMetadata();
-    }
-
-    @Override
-    public ConnectorTableHandle getTableHandle(ConnectorSession session, SchemaTableName tableName) {
-        //check tablename is valid
-        //schema is exist
-        //tables is exist
-
-        //CarbondataTable  get from jar
-        return new CarbondataTableHandle(connectorId, tableName);
-    }
-
-    @Override
-    public List<ConnectorTableLayoutResult> getTableLayouts(ConnectorSession session, ConnectorTableHandle table, Constraint<ColumnHandle> constraint, Optional<Set<ColumnHandle>> desiredColumns) {
-        CarbondataTableHandle handle = checkType(table, CarbondataTableHandle.class, "table");
-        ConnectorTableLayout layout = new ConnectorTableLayout(new CarbondataTableLayoutHandle(handle,constraint.getSummary()/*, constraint.getPredicateMap(),constraint.getFilterTuples()*/));
-        return ImmutableList.of(new ConnectorTableLayoutResult(layout, constraint.getSummary()));
-    }
-
-    @Override
-    public ConnectorTableLayout getTableLayout(ConnectorSession session, ConnectorTableLayoutHandle handle) {
-        return new ConnectorTableLayout(handle);
-    }
-
-    @Override
-    public ConnectorTableMetadata getTableMetadata(ConnectorSession session, ConnectorTableHandle table) {
-        return getTableMetadataInternal(table);
-    }
-
-    public ConnectorTableMetadata getTableMetadataInternal(ConnectorTableHandle table)
-    {
-        CarbondataTableHandle carbondataTableHandle = checkType(table, CarbondataTableHandle.class, "table");
-        checkArgument(carbondataTableHandle.getConnectorId().equals(connectorId), "tableHandle is not for this connector");
-        return getTableMetadata(carbondataTableHandle.getSchemaTableName());
-    }
-
-
-    public static Type CarbondataType2SpiMapper(DataType colType)
-    {
-        switch (colType)
-        {
-            case BOOLEAN:
-                return BooleanType.BOOLEAN;
-            case SHORT:
-                return SmallintType.SMALLINT;
-            case INT:
-                return IntegerType.INTEGER;
-            case LONG:
-                return BigintType.BIGINT;
-            case FLOAT:
-            case DOUBLE:
-                return DoubleType.DOUBLE;
-
-            case DECIMAL:
-                return DecimalType.createDecimalType();
-            case STRING:
-                return VarcharType.VARCHAR;
-            case DATE:
-                return DateType.DATE;
-            case TIMESTAMP:
-                return TimestampType.TIMESTAMP;
-
-            /*case DataType.MAP:
-            case DataType.ARRAY:
-            case DataType.STRUCT:
-            case DataType.NULL:*/
-
-            default:
-                return VarcharType.VARCHAR;
-        }
-    }
-
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/32bf2961/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataModule.java
----------------------------------------------------------------------
diff --git a/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataModule.java b/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataModule.java
deleted file mode 100755
index af62a75..0000000
--- a/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataModule.java
+++ /dev/null
@@ -1,79 +0,0 @@
-/*
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package com.facebook.presto.carbondata;
-
-import com.facebook.presto.carbondata.impl.CarbonTableConfig;
-import com.facebook.presto.carbondata.impl.CarbonTableReader;
-import com.facebook.presto.spi.connector.ConnectorRecordSetProvider;
-import com.facebook.presto.spi.connector.ConnectorSplitManager;
-import com.facebook.presto.spi.type.Type;
-import com.facebook.presto.spi.type.TypeManager;
-import com.fasterxml.jackson.databind.DeserializationContext;
-import com.fasterxml.jackson.databind.deser.std.FromStringDeserializer;
-import com.google.inject.Binder;
-import com.google.inject.Module;
-import com.google.inject.Scopes;
-
-import javax.inject.Inject;
-
-import static com.facebook.presto.spi.type.TypeSignature.parseTypeSignature;
-import static com.google.common.base.Preconditions.checkArgument;
-import static io.airlift.configuration.ConfigBinder.configBinder;
-import static java.util.Objects.requireNonNull;
-
-public class CarbondataModule implements Module {
-
-    private final String connectorId;
-    private final TypeManager typeManager;
-
-    public CarbondataModule(String connectorId, TypeManager typeManager)
-    {
-        this.connectorId = requireNonNull(connectorId, "connector id is null");
-        this.typeManager = requireNonNull(typeManager, "typeManager is null");
-    }
-
-    @Override
-    public void configure(Binder binder) {
-        binder.bind(TypeManager.class).toInstance(typeManager);
-
-        binder.bind(CarbondataConnectorId.class).toInstance(new CarbondataConnectorId(connectorId));
-        binder.bind(CarbondataMetadata.class).in(Scopes.SINGLETON);
-        binder.bind(CarbonTableReader.class).in(Scopes.SINGLETON);
-        binder.bind(ConnectorSplitManager.class).to(CarbondataSplitManager.class).in(Scopes.SINGLETON);
-        binder.bind(ConnectorRecordSetProvider.class).to(CarbondataRecordSetProvider.class).in(Scopes.SINGLETON);
-        binder.bind(CarbondataHandleResolver.class).in(Scopes.SINGLETON);
-        configBinder(binder).bindConfig(CarbonTableConfig.class);
-    }
-
-    public static final class TypeDeserializer
-            extends FromStringDeserializer<Type>
-    {
-        private final TypeManager typeManager;
-
-        @Inject
-        public TypeDeserializer(TypeManager typeManager)
-        {
-            super(Type.class);
-            this.typeManager = requireNonNull(typeManager, "typeManager is null");
-        }
-
-        @Override
-        protected Type _deserialize(String value, DeserializationContext context)
-        {
-            Type type = typeManager.getType(parseTypeSignature(value));
-            checkArgument(type != null, "Unknown type %s", value);
-            return type;
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/32bf2961/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataPlugin.java
----------------------------------------------------------------------
diff --git a/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataPlugin.java b/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataPlugin.java
deleted file mode 100755
index bd6a156..0000000
--- a/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataPlugin.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package com.facebook.presto.carbondata;
-
-import com.facebook.presto.spi.Plugin;
-import com.facebook.presto.spi.connector.ConnectorFactory;
-import com.google.common.collect.ImmutableList;
-import org.apache.carbondata.core.datastore.impl.FileFactory;
-
-public class CarbondataPlugin implements Plugin {
-
-    @Override
-    public Iterable<ConnectorFactory> getConnectorFactories()
-    {
-        return ImmutableList.of(new CarbondataConnectorFactory("carbondata", getClassLoader()));
-    }
-
-    private static ClassLoader getClassLoader() {
-        return FileFactory.class.getClassLoader();
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/32bf2961/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataRecordCursor.java
----------------------------------------------------------------------
diff --git a/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataRecordCursor.java b/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataRecordCursor.java
deleted file mode 100755
index 43ca876..0000000
--- a/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataRecordCursor.java
+++ /dev/null
@@ -1,152 +0,0 @@
-/*
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package com.facebook.presto.carbondata;
-
-import com.facebook.presto.spi.RecordCursor;
-import com.facebook.presto.spi.type.Type;
-import com.google.common.base.Strings;
-import io.airlift.log.Logger;
-import io.airlift.slice.Slice;
-import io.airlift.slice.Slices;
-import org.apache.carbondata.common.CarbonIterator;
-import org.apache.carbondata.hadoop.readsupport.CarbonReadSupport;
-
-import java.util.List;
-import java.util.stream.Collectors;
-import java.util.stream.Stream;
-
-import static com.facebook.presto.spi.type.BooleanType.BOOLEAN;
-import static com.facebook.presto.spi.type.DoubleType.DOUBLE;
-import static com.facebook.presto.spi.type.VarcharType.VARCHAR;
-import static com.google.common.base.Preconditions.checkArgument;
-import static com.google.common.base.Preconditions.checkState;
-
-public class CarbondataRecordCursor implements RecordCursor {
-
-    private static final Logger log = Logger.get(CarbondataRecordCursor.class);
-    private final List<CarbondataColumnHandle> columnHandles;
-
-    private List<String> fields;
-    private CarbondataSplit split;
-    private CarbonIterator<Object[]> rowCursor;
-    private CarbonReadSupport<Object[]> readSupport;
-
-    private long totalBytes;
-    private long nanoStart;
-    private long nanoEnd;
-
-    public CarbondataRecordCursor(CarbonReadSupport<Object[]> readSupport, CarbonIterator<Object[]> carbonIterator, List<CarbondataColumnHandle> columnHandles, CarbondataSplit split) {
-        this.rowCursor = carbonIterator;
-        this.columnHandles = columnHandles;
-        this.readSupport = readSupport;
-        this.totalBytes = 0;
-    }
-
-
-    @Override
-    public long getTotalBytes() {
-        return totalBytes;
-    }
-
-    @Override
-    public long getCompletedBytes() {
-        return totalBytes;
-    }
-
-    @Override
-    public long getReadTimeNanos() {
-        return nanoStart > 0L ? (nanoEnd == 0 ? System.nanoTime() : nanoEnd) - nanoStart : 0L;
-    }
-
-    @Override
-    public Type getType(int field) {
-
-        checkArgument(field < columnHandles.size(), "Invalid field index");
-        return columnHandles.get(field).getColumnType();
-    }
-
-    @Override
-    public boolean advanceNextPosition() {
-
-        if (nanoStart == 0) {
-            nanoStart = System.nanoTime();
-        }
-
-        if(rowCursor.hasNext())
-        {
-            fields = Stream.of(readSupport.readRow(rowCursor.next())).map(a -> a.toString()).collect(Collectors.toList());
-
-            totalBytes += fields.size();
-            return true;
-        }
-        return false;
-    }
-
-    @Override
-    public boolean getBoolean(int field) {
-        checkFieldType(field, BOOLEAN);
-        return Boolean.parseBoolean(getFieldValue(field));
-    }
-
-    @Override
-    public long getLong(int field) {
-        String timeStr = getFieldValue(field);
-        Long milliSec = 0L;
-
-        //suppose the
-        return Math.round(Double.parseDouble(getFieldValue(field)));
-    }
-
-    @Override
-    public double getDouble(int field) {
-        checkFieldType(field, DOUBLE);
-        return Double.parseDouble(getFieldValue(field));
-    }
-
-    @Override
-    public Slice getSlice(int field) {
-        checkFieldType(field, VARCHAR);
-        return Slices.utf8Slice(getFieldValue(field));
-    }
-
-    @Override
-    public Object getObject(int field) {
-        return null;
-    }
-
-    @Override
-    public boolean isNull(int field) {
-        checkArgument(field < columnHandles.size(), "Invalid field index");
-        return Strings.isNullOrEmpty(getFieldValue(field));
-    }
-
-    String getFieldValue(int field)
-    {
-        checkState(fields != null, "Cursor has not been advanced yet");
-        return fields.get(field);
-    }
-
-    private void checkFieldType(int field, Type expected)
-    {
-        Type actual = getType(field);
-        checkArgument(actual.equals(expected), "Expected field %s to be type %s but is %s", field, expected, actual);
-    }
-
-    @Override
-    public void close() {
-        nanoEnd = System.nanoTime();
-
-        //todo  delete cache from readSupport
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/32bf2961/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataRecordSet.java
----------------------------------------------------------------------
diff --git a/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataRecordSet.java b/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataRecordSet.java
deleted file mode 100755
index 622ef8a..0000000
--- a/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataRecordSet.java
+++ /dev/null
@@ -1,111 +0,0 @@
-/*
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package com.facebook.presto.carbondata;
-
-import com.facebook.presto.spi.*;
-import com.facebook.presto.spi.predicate.TupleDomain;
-import com.facebook.presto.spi.type.Type;
-import org.apache.carbondata.common.CarbonIterator;
-import org.apache.carbondata.core.datastore.block.TableBlockInfo;
-import org.apache.carbondata.core.metadata.ColumnarFormatVersion;
-import org.apache.carbondata.core.metadata.schema.table.CarbonTable;
-import org.apache.carbondata.core.scan.executor.QueryExecutor;
-import org.apache.carbondata.core.scan.executor.QueryExecutorFactory;
-import org.apache.carbondata.core.scan.executor.exception.QueryExecutionException;
-import org.apache.carbondata.core.scan.expression.Expression;
-import org.apache.carbondata.core.scan.model.QueryModel;
-import org.apache.carbondata.core.scan.result.BatchResult;
-import org.apache.carbondata.core.scan.result.iterator.ChunkRowIterator;
-import org.apache.carbondata.hadoop.readsupport.CarbonReadSupport;
-import org.apache.carbondata.hadoop.readsupport.impl.DictionaryDecodedReadSupportImpl;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.stream.Collectors;
-
-import static com.facebook.presto.carbondata.Types.checkType;
-
-public class CarbondataRecordSet implements RecordSet {
-
-    private CarbonTable carbonTable;
-    private TupleDomain<ColumnHandle> originalConstraint;
-    private Expression carbonConstraint;
-    private List<CarbondataColumnConstraint> rebuildConstraints;
-    private QueryModel queryModel;
-    private CarbondataSplit split;
-    private List<CarbondataColumnHandle> columns;
-    private QueryExecutor queryExecutor;
-
-    private CarbonReadSupport<Object[]> readSupport;
-
-    public CarbondataRecordSet(
-            CarbonTable carbonTable,
-            ConnectorSession session,
-            ConnectorSplit split,
-            List<CarbondataColumnHandle> columns,
-            QueryModel queryModel){
-        this.carbonTable = carbonTable;
-        this.split = checkType(split, CarbondataSplit.class, "connectorSplit");
-        this.originalConstraint = this.split.getConstraints();
-        this.rebuildConstraints = this.split.getRebuildConstraints();
-        this.queryModel = queryModel;
-        this.columns = columns;
-        this.readSupport = new DictionaryDecodedReadSupportImpl();
-    }
-
-    //todo support later
-    private Expression parseConstraint2Expression(TupleDomain<ColumnHandle> constraints) {
-        return null;
-    }
-
-    @Override
-    public List<Type> getColumnTypes() {
-        return columns.stream().map(a -> a.getColumnType()).collect(Collectors.toList());
-    }
-
-    @Override
-    public RecordCursor cursor() {
-        List<TableBlockInfo> tableBlockInfoList = new ArrayList<TableBlockInfo>();
-
-        //tableBlockInfoList.add(split.getLocalInputSplit().getTableBlockInfo());
-        /*BlockletInfos blockletInfos = new BlockletInfos(split.getLocalInputSplit().getNumberOfBlocklets(), 0,
-                split.getLocalInputSplit().getNumberOfBlocklets());*/
-        tableBlockInfoList.add(
-                new TableBlockInfo(split.getLocalInputSplit().getPath().toString(),
-                        split.getLocalInputSplit().getStart(),
-                        split.getLocalInputSplit().getSegmentId(),
-                        split.getLocalInputSplit().getLocations().toArray(new String[0]),
-                        split.getLocalInputSplit().getLength(),
-                        //blockletInfos,
-                        ColumnarFormatVersion.valueOf(split.getLocalInputSplit().getVersion())));
-        queryModel.setTableBlockInfos(tableBlockInfoList);
-
-        queryExecutor = QueryExecutorFactory.getQueryExecutor(queryModel);
-
-        //queryModel.setQueryId(queryModel.getQueryId() + "_" + split.getLocalInputSplit().getSegmentId());
-        try {
-            readSupport.initialize(queryModel.getProjectionColumns(), queryModel.getAbsoluteTableIdentifier());
-            CarbonIterator<Object[]> carbonIterator = new ChunkRowIterator((CarbonIterator<BatchResult>) queryExecutor.execute(queryModel));
-            RecordCursor rc = new CarbondataRecordCursor(readSupport, carbonIterator, columns, split);
-            return rc;
-        } catch (QueryExecutionException e) {
-            //throw new InterruptedException(e.getMessage());
-            System.out.println(e.getMessage());
-        } catch(Exception ex) {
-            System.out.println(ex.toString());
-        }
-        return null;
-    }
-}
-

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/32bf2961/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataRecordSetProvider.java
----------------------------------------------------------------------
diff --git a/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataRecordSetProvider.java b/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataRecordSetProvider.java
deleted file mode 100755
index 9e82b93..0000000
--- a/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataRecordSetProvider.java
+++ /dev/null
@@ -1,292 +0,0 @@
-/*
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package com.facebook.presto.carbondata;
-
-import com.facebook.presto.carbondata.impl.CarbonTableCacheModel;
-import com.facebook.presto.carbondata.impl.CarbonTableReader;
-import com.facebook.presto.spi.ColumnHandle;
-import com.facebook.presto.spi.ConnectorSession;
-import com.facebook.presto.spi.ConnectorSplit;
-import com.facebook.presto.spi.RecordSet;
-import com.facebook.presto.spi.connector.ConnectorRecordSetProvider;
-import com.facebook.presto.spi.connector.ConnectorTransactionHandle;
-import com.facebook.presto.spi.predicate.Domain;
-import com.facebook.presto.spi.predicate.Range;
-import com.facebook.presto.spi.predicate.TupleDomain;
-import com.facebook.presto.spi.type.*;
-import com.google.common.collect.ImmutableList;
-import io.airlift.slice.Slice;
-import org.apache.carbondata.core.metadata.datatype.DataType;
-import org.apache.carbondata.core.metadata.schema.table.CarbonTable;
-import org.apache.carbondata.core.scan.expression.ColumnExpression;
-import org.apache.carbondata.core.scan.expression.Expression;
-import org.apache.carbondata.core.scan.expression.LiteralExpression;
-import org.apache.carbondata.core.scan.expression.conditional.*;
-import org.apache.carbondata.core.scan.expression.logical.AndExpression;
-import org.apache.carbondata.core.scan.expression.logical.OrExpression;
-import org.apache.carbondata.core.scan.model.CarbonQueryPlan;
-import org.apache.carbondata.core.scan.model.QueryModel;
-import org.apache.carbondata.hadoop.util.CarbonInputFormatUtil;
-
-import javax.inject.Inject;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.stream.Collectors;
-
-import static com.facebook.presto.carbondata.Types.checkType;
-import static com.google.common.base.Preconditions.checkArgument;
-import static com.google.common.base.Preconditions.checkNotNull;
-import static com.google.common.base.Preconditions.checkState;
-import static java.util.Objects.requireNonNull;
-
-public class CarbondataRecordSetProvider implements ConnectorRecordSetProvider {
-
-    private final String connectorId;
-    private final CarbonTableReader carbonTableReader;
-
-    @Inject
-    public CarbondataRecordSetProvider(
-            CarbondataConnectorId connectorId,
-            CarbonTableReader reader)
-    {
-        //this.config = requireNonNull(config, "config is null");
-        //this.connector = requireNonNull(connector, "connector is null");
-        this.connectorId = requireNonNull(connectorId, "connectorId is null").toString();
-        this.carbonTableReader = reader;
-    }
-
-    @Override
-    public RecordSet getRecordSet(ConnectorTransactionHandle transactionHandle, ConnectorSession session, ConnectorSplit split, List<? extends ColumnHandle> columns) {
-        requireNonNull(split, "split is null");
-        requireNonNull(columns, "columns is null");
-
-        // Convert split
-        CarbondataSplit cdSplit = checkType(split, CarbondataSplit.class, "split is not class CarbondataSplit");
-        checkArgument(cdSplit.getConnectorId().equals(connectorId), "split is not for this connector");
-
-        // Convert all columns handles
-        ImmutableList.Builder<CarbondataColumnHandle> handles = ImmutableList.builder();
-        for (ColumnHandle handle : columns) {
-            handles.add(checkType(handle, CarbondataColumnHandle.class, "handle"));
-        }
-
-        // Build column projection(check the column order)
-        String targetCols = "";
-        for(ColumnHandle col : columns){
-            targetCols += ((CarbondataColumnHandle)col).getColumnName() + ",";
-        }
-        targetCols = targetCols.substring(0, targetCols.length() -1 );
-        //String cols = String.join(",", columns.stream().map(a -> ((CarbondataColumnHandle)a).getColumnName()).collect(Collectors.toList()));
-
-        CarbonTableCacheModel tableCacheModel = carbonTableReader.getCarbonCache(cdSplit.getSchemaTableName());
-        checkNotNull(tableCacheModel, "tableCacheModel should not be null");
-        checkNotNull(tableCacheModel.carbonTable, "tableCacheModel.carbonTable should not be null");
-        checkNotNull(tableCacheModel.tableInfo, "tableCacheModel.tableInfo should not be null");
-
-        // Build Query Model
-        CarbonTable targetTable = tableCacheModel.carbonTable;
-        CarbonQueryPlan queryPlan = CarbonInputFormatUtil.createQueryPlan(targetTable, targetCols);
-        QueryModel queryModel = QueryModel.createModel(targetTable.getAbsoluteTableIdentifier(), queryPlan, targetTable);
-
-        // Push down filter
-        fillFilter2QueryModel(queryModel, cdSplit.getConstraints(), targetTable);
-
-        // Return new record set
-        return new CarbondataRecordSet(targetTable,/*connector,*/ session, /*config, */cdSplit, handles.build(), queryModel);
-    }
-
-    // Build filter for QueryModel (copy from CarbonInputFormat=> createRecordReader)
-    private void fillFilter2QueryModel(QueryModel queryModel, TupleDomain<ColumnHandle> originalConstraint, CarbonTable carbonTable) {
-
-        //queryModel.setFilterExpressionResolverTree(new FilterResolverIntf());
-
-        //Build Predicate Expression
-        ImmutableList.Builder<Expression> filters = ImmutableList.builder();
-
-        Domain domain = null;
-
-        for (ColumnHandle c : originalConstraint.getDomains().get().keySet()) {
-
-            // Build ColumnExpresstion for Expresstion(Carbondata)
-            CarbondataColumnHandle cdch = (CarbondataColumnHandle) c;
-            Type type = cdch.getColumnType();
-
-            DataType coltype = Spi2CarbondataTypeMapper(type);
-            Expression colExpression = new ColumnExpression(cdch.getColumnName(), coltype);
-
-            domain = originalConstraint.getDomains().get().get(c);
-            checkArgument(domain.getType().isOrderable(), "Domain type must be orderable");
-
-            if (domain.getValues().isNone()) {
-                //return QueryBuilders.filteredQuery(null, FilterBuilders.missingFilter(columnName));
-                //return domain.isNullAllowed() ? columnName + " IS NULL" : "FALSE";
-                //new Expression()
-            }
-
-            if (domain.getValues().isAll()) {
-                //return QueryBuilders.filteredQuery(null, FilterBuilders.existsFilter(columnName));
-                //return domain.isNullAllowed() ? "TRUE" : columnName + " IS NOT NULL";
-            }
-
-            List<Object> singleValues = new ArrayList<>();
-            List<Expression> rangeFilter = new ArrayList<>();
-            for (Range range : domain.getValues().getRanges().getOrderedRanges()) {
-                checkState(!range.isAll()); // Already checked
-                if (range.isSingleValue()) {
-                    singleValues.add(range.getLow().getValue());
-                }
-                else
-                {
-                    List<String> rangeConjuncts = new ArrayList<>();
-                    if (!range.getLow().isLowerUnbounded()) {
-                        Object value = ConvertDataByType(range.getLow().getValue(), type);
-                        switch (range.getLow().getBound()) {
-                            case ABOVE:
-                                if (type == TimestampType.TIMESTAMP) {
-                                    //todo not now
-                                } else {
-                                    GreaterThanExpression greater = new GreaterThanExpression(colExpression, new LiteralExpression(value, coltype));
-                                    //greater.setRangeExpression(true);
-                                    rangeFilter.add(greater);
-                                }
-                                break;
-                            case EXACTLY:
-                                GreaterThanEqualToExpression greater = new GreaterThanEqualToExpression(colExpression, new LiteralExpression(value, coltype));
-                                //greater.setRangeExpression(true);
-                                rangeFilter.add(greater);
-                                break;
-                            case BELOW:
-                                throw new IllegalArgumentException("Low marker should never use BELOW bound");
-                            default:
-                                throw new AssertionError("Unhandled bound: " + range.getLow().getBound());
-                        }
-                    }
-                    if (!range.getHigh().isUpperUnbounded()) {
-                        Object value = ConvertDataByType(range.getHigh().getValue(), type);
-                        switch (range.getHigh().getBound()) {
-                            case ABOVE:
-                                throw new IllegalArgumentException("High marker should never use ABOVE bound");
-                            case EXACTLY:
-                                LessThanEqualToExpression less = new LessThanEqualToExpression(colExpression, new LiteralExpression(value, coltype));
-                                //less.setRangeExpression(true);
-                                rangeFilter.add(less);
-                                break;
-                            case BELOW:
-                                LessThanExpression less2 = new LessThanExpression(colExpression, new LiteralExpression(value, coltype));
-                                //less2.setRangeExpression(true);
-                                rangeFilter.add(less2);
-                                break;
-                            default:
-                                throw new AssertionError("Unhandled bound: " + range.getHigh().getBound());
-                        }
-                    }
-                }
-            }
-
-            if (singleValues.size() == 1) {
-                Expression ex = null;
-                if (coltype.equals(DataType.STRING)) {
-                    ex = new EqualToExpression(colExpression, new LiteralExpression(((Slice) singleValues.get(0)).toStringUtf8(), coltype));
-                } else
-                    ex = new EqualToExpression(colExpression, new LiteralExpression(singleValues.get(0), coltype));
-                filters.add(ex);
-            }
-            else if(singleValues.size() > 1) {
-                ListExpression candidates = null;
-                List<Expression> exs = singleValues.stream().map((a) ->
-                {
-                    return new LiteralExpression(ConvertDataByType(a, type), coltype);
-                }).collect(Collectors.toList());
-                candidates = new ListExpression(exs);
-
-                if(candidates != null)
-                    filters.add(new InExpression(colExpression, candidates));
-            }
-            else if(rangeFilter.size() > 0){
-                if(rangeFilter.size() > 1) {
-                    Expression finalFilters = new OrExpression(rangeFilter.get(0), rangeFilter.get(1));
-                    if(rangeFilter.size() > 2)
-                    {
-                        for(int i = 2; i< rangeFilter.size(); i++)
-                        {
-                            filters.add(new AndExpression(finalFilters, rangeFilter.get(i)));
-                        }
-                    }
-                }
-                else if(rangeFilter.size() == 1)
-                    filters.add(rangeFilter.get(0));
-            }
-        }
-
-        Expression finalFilters;
-        List<Expression> tmp = filters.build();
-        if(tmp.size() > 1) {
-            finalFilters = new AndExpression(tmp.get(0), tmp.get(1));
-            if(tmp.size() > 2)
-            {
-                for(int i = 2; i< tmp.size(); i++)
-                {
-                    finalFilters = new AndExpression(finalFilters, tmp.get(i));
-                }
-            }
-        }
-        else if(tmp.size() == 1)
-            finalFilters = tmp.get(0);
-        else
-            return;
-
-        // todo set into QueryModel
-        CarbonInputFormatUtil.processFilterExpression(finalFilters, carbonTable);
-        queryModel.setFilterExpressionResolverTree(CarbonInputFormatUtil.resolveFilter(finalFilters, queryModel.getAbsoluteTableIdentifier()));
-    }
-
-    public static DataType Spi2CarbondataTypeMapper(Type colType)
-    {
-        if(colType == BooleanType.BOOLEAN)
-            return DataType.BOOLEAN;
-        else if(colType == SmallintType.SMALLINT)
-            return DataType.SHORT;
-        else if(colType == IntegerType.INTEGER)
-            return DataType.INT;
-        else if(colType == BigintType.BIGINT)
-            return DataType.LONG;
-        else if(colType == DoubleType.DOUBLE)
-            return DataType.DOUBLE;
-        else if(colType == DecimalType.createDecimalType())
-            return DataType.DECIMAL;
-        else if(colType == VarcharType.VARCHAR)
-            return DataType.STRING;
-        else if(colType == DateType.DATE)
-            return DataType.DATE;
-        else if(colType == TimestampType.TIMESTAMP)
-            return DataType.TIMESTAMP;
-        else
-            return DataType.STRING;
-    }
-
-
-    public Object ConvertDataByType(Object rawdata, Type type)
-    {
-        if(type.equals(IntegerType.INTEGER))
-            return new Integer((rawdata.toString()));
-        else if(type.equals(BigintType.BIGINT))
-            return (Long)rawdata;
-        else if(type.equals(VarcharType.VARCHAR))
-            return ((Slice)rawdata).toStringUtf8();
-        else if(type.equals(BooleanType.BOOLEAN))
-            return (Boolean)(rawdata);
-
-        return rawdata;
-    }
-}

http://git-wip-us.apache.org/repos/asf/incubator-carbondata/blob/32bf2961/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataSplit.java
----------------------------------------------------------------------
diff --git a/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataSplit.java b/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataSplit.java
deleted file mode 100755
index eb3db1e..0000000
--- a/integration/presto/src/main/java/com/facebook/presto/carbondata/CarbondataSplit.java
+++ /dev/null
@@ -1,92 +0,0 @@
-/*
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package com.facebook.presto.carbondata;
-
-import com.facebook.presto.carbondata.impl.CarbonLocalInputSplit;
-import com.facebook.presto.spi.ColumnHandle;
-import com.facebook.presto.spi.ConnectorSplit;
-import com.facebook.presto.spi.HostAddress;
-import com.facebook.presto.spi.SchemaTableName;
-import com.facebook.presto.spi.predicate.TupleDomain;
-import com.fasterxml.jackson.annotation.JsonCreator;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import com.google.common.collect.ImmutableList;
-
-import java.util.List;
-
-import static java.util.Objects.requireNonNull;
-
-public class CarbondataSplit implements ConnectorSplit {
-
-    private final String connectorId;
-    private final SchemaTableName schemaTableName;
-    private final TupleDomain<ColumnHandle> constraints;
-    private final CarbonLocalInputSplit localInputSplit;
-    private final List<CarbondataColumnConstraint> rebuildConstraints;
-    private final ImmutableList<HostAddress> addresses;
-
-    @JsonCreator
-    public CarbondataSplit( @JsonProperty("connectorId") String connectorId,
-                            @JsonProperty("schemaTableName") SchemaTableName schemaTableName,
-                            @JsonProperty("constraints") TupleDomain<ColumnHandle> constraints,
-                            @JsonProperty("localInputSplit") CarbonLocalInputSplit localInputSplit,
-                            @JsonProperty("rebuildConstraints") List<CarbondataColumnConstraint> rebuildConstraints) {
-        this.connectorId = requireNonNull(connectorId, "connectorId is null");
-        this.schemaTableName = requireNonNull(schemaTableName, "schemaTable is null");
-        this.constraints = requireNonNull(constraints, "constraints is null");
-        this.localInputSplit = requireNonNull(localInputSplit, "localInputSplit is null");
-        this.rebuildConstraints = requireNonNull(rebuildConstraints, "rebuildConstraints is null");
-        this.addresses = ImmutableList.of();
-    }
-
-
-    @JsonProperty
-    public String getConnectorId() {
-        return connectorId;
-    }
-
-    @JsonProperty
-    public SchemaTableName getSchemaTableName(){
-        return  schemaTableName;
-    }
-
-    @JsonProperty
-    public TupleDomain<ColumnHandle> getConstraints() {
-        return constraints;
-    }
-
-    @JsonProperty
-    public CarbonLocalInputSplit getLocalInputSplit(){return localInputSplit;}
-
-    @JsonProperty
-    public List<CarbondataColumnConstraint> getRebuildConstraints() {
-        return rebuildConstraints;
-    }
-
-    @Override
-    public boolean isRemotelyAccessible() {
-        return true;
-    }
-
-    @Override
-    public List<HostAddress> getAddresses() {
-        return addresses;
-    }
-
-    @Override
-    public Object getInfo() {
-        return this;
-    }
-}
-


Mime
View raw message