You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@drill.apache.org by ja...@apache.org on 2013/09/04 13:09:43 UTC

[13/52] [abbrv] [partial] DRILL-165: Reorganize directories (moves only)

http://git-wip-us.apache.org/repos/asf/incubator-drill/blob/a593d908/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
new file mode 100644
index 0000000..277442f
--- /dev/null
+++ b/pom.xml
@@ -0,0 +1,585 @@
+<?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>org.apache</groupId>
+    <artifactId>apache</artifactId>
+    <version>13</version>
+  </parent>
+
+  <groupId>org.apache.drill</groupId>
+  <artifactId>drill-root</artifactId>
+  <version>1.0.0-m1-SNAPSHOT</version>
+  <packaging>pom</packaging>
+
+  <name>Apache Drill Root POM</name>
+
+  <properties>
+    <target.gen.source.path>${project.basedir}/target/generated-sources</target.gen.source.path>
+    <proto.cas.path>${project.basedir}/src/main/protobuf/</proto.cas.path>
+    <dep.junit.version>4.11</dep.junit.version>
+    <dep.slf4j.version>1.7.5</dep.slf4j.version>
+  </properties>
+
+
+  <scm>
+    <connection>scm:git:https://git-wip-us.apache.org/repos/asf/incubator-drill.git</connection>
+    <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/incubator-drill.git</developerConnection>
+    <url>https://github.com/apache/incubator-drill</url>
+  </scm>
+
+  <repositories>
+    <repository>
+      <id>conjars</id>
+      <name>Conjars</name>
+      <url>http://conjars.org/repo</url>
+      <layout>default</layout>
+      <releases>
+        <enabled>true</enabled>
+        <updatePolicy>never</updatePolicy>
+        <checksumPolicy>warn</checksumPolicy>
+      </releases>
+      <snapshots>
+        <enabled>false</enabled>
+      </snapshots>
+    </repository>
+
+    <repository>
+      <id>pentaho</id>
+      <name>Pentaho</name>
+      <url>http://repo.pentaho.org/artifactory/repo</url>
+      <layout>default</layout>
+      <releases>
+        <enabled>true</enabled>
+        <updatePolicy>never</updatePolicy>
+        <checksumPolicy>warn</checksumPolicy>
+      </releases>
+      <snapshots>
+        <enabled>false</enabled>
+      </snapshots>
+    </repository>
+
+    <repository>
+      <id>sonatype-nexus-snapshots</id>
+      <url>https://oss.sonatype.org/content/repositories/snapshots</url>
+      <releases>
+        <enabled>false</enabled>
+      </releases>
+      <snapshots>
+        <enabled>true</enabled>
+      </snapshots>
+    </repository>
+  </repositories>
+
+  <issueManagement>
+    <system>Jira</system>
+    <url>https://issues.apache.org/jira/browse/DRILL</url>
+  </issueManagement>
+
+  <build>
+
+    <plugins>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-jar-plugin</artifactId>
+        <configuration>
+          <archive>
+            <index>true</index>
+            <manifest>
+              <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
+              <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
+            </manifest>
+            <manifestEntries>
+              <Extension-Name>org.apache.drill</Extension-Name>
+              <Built-By>${username}</Built-By>
+              <url>http://lucene.apache.org/mahout</url>
+            </manifestEntries>
+          </archive>
+        </configuration>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-jar-plugin</artifactId>
+        <configuration>
+          <excludes>
+            <exclude>**/logging.properties</exclude>
+            <exclude>**/logback-test.xml</exclude>
+            <exclude>**/logback.out.xml</exclude>
+            <exclude>**/logback.xml</exclude>
+          </excludes>
+        </configuration>
+
+        <executions>
+          <execution>
+            <goals>
+              <goal>test-jar</goal>
+            </goals>
+          </execution>
+        </executions>
+      </plugin>
+
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-resources-plugin</artifactId>
+        <configuration>
+          <encoding>UTF-8</encoding>
+        </configuration>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-compiler-plugin</artifactId>
+        <configuration>
+          <source>1.7</source>
+          <target>1.7</target>
+        </configuration>
+      </plugin>
+      <plugin>
+        <artifactId>maven-enforcer-plugin</artifactId>
+        <executions>
+          <execution>
+            <id>no_commons_logging</id>
+            <goals>
+              <goal>enforce</goal>
+            </goals>
+            <configuration>
+              <rules>
+                <bannedDependencies>
+                  <excludes>
+                    <exclude>commons-logging</exclude>
+                  </excludes>
+                </bannedDependencies>
+              </rules>
+            </configuration>
+          </execution>
+        </executions>
+      </plugin>
+    </plugins>
+    <pluginManagement>
+
+      <plugins>
+        <plugin>
+          <groupId>org.apache.maven.plugins</groupId>
+          <artifactId>maven-resources-plugin</artifactId>
+          <version>2.6</version>
+        </plugin>
+        <plugin>
+          <groupId>org.apache.maven.plugins</groupId>
+          <artifactId>maven-compiler-plugin</artifactId>
+          <version>3.0</version>
+        </plugin>
+        <plugin>
+          <artifactId>maven-enforcer-plugin</artifactId>
+          <version>1.2</version>
+        </plugin>
+        <plugin>
+          <artifactId>maven-surefire-plugin</artifactId>
+          <version>2.15</version>
+          <configuration>
+            <argLine>-XX:MaxDirectMemorySize=4096M </argLine>
+          </configuration>
+        </plugin>
+        <!--This plugin's configuration is used to store Eclipse m2e settings 
+          only. It has no influence on the Maven build itself. -->
+        <plugin>
+          <groupId>org.eclipse.m2e</groupId>
+          <artifactId>lifecycle-mapping</artifactId>
+          <version>1.0.0</version>
+          <configuration>
+            <lifecycleMappingMetadata>
+              <pluginExecutions>
+                <pluginExecution>
+                  <pluginExecutionFilter>
+                    <groupId>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-antrun-plugin</artifactId>
+                    <versionRange>[1.6,)</versionRange>
+                    <goals>
+                      <goal>run</goal>
+                    </goals>
+                  </pluginExecutionFilter>
+                  <action>
+                    <ignore></ignore>
+                  </action>
+                </pluginExecution>
+                <pluginExecution>
+                  <pluginExecutionFilter>
+                    <groupId>com.github.igor-petruk.protobuf</groupId>
+                    <artifactId>protobuf-maven-plugin</artifactId>
+                    <versionRange>[0.6.3,)</versionRange>
+                    <goals>
+                      <goal>run</goal>
+                    </goals>
+                  </pluginExecutionFilter>
+                  <action>
+                    <ignore></ignore>
+                  </action>
+                </pluginExecution>
+                <pluginExecution>
+                  <pluginExecutionFilter>
+                    <groupId>com.googlecode.fmpp-maven-plugin</groupId>
+                    <artifactId>fmpp-maven-plugin</artifactId>
+                    <versionRange>[1.0,)</versionRange>
+                    <goals>
+                      <goal>run</goal>
+                      <goal>generate</goal>
+                    </goals>
+                  </pluginExecutionFilter>
+                  <action>
+                    <ignore></ignore>
+                  </action>
+                </pluginExecution>
+                <pluginExecution>
+                  <pluginExecutionFilter>
+                    <groupId>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-enforcer-plugin</artifactId>
+                    <versionRange>[1.2,)</versionRange>
+                    <goals>
+                      <goal>enforce</goal>
+                    </goals>
+                  </pluginExecutionFilter>
+                  <action>
+                    <ignore></ignore>
+                  </action>
+                </pluginExecution>
+                <pluginExecution>
+                  <pluginExecutionFilter>
+                    <groupId>org.apache.maven.plugins</groupId>
+                    <artifactId>
+                      maven-remote-resources-plugin
+                    </artifactId>
+                    <versionRange>[1.1,)</versionRange>
+                    <goals>
+                      <goal>process</goal>
+                    </goals>
+                  </pluginExecutionFilter>
+                  <action>
+                    <ignore></ignore>
+                  </action>
+                </pluginExecution>
+              </pluginExecutions>
+            </lifecycleMappingMetadata>
+          </configuration>
+        </plugin>
+        <plugin>
+          <artifactId>maven-assembly-plugin</artifactId>
+          <version>2.4</version>
+          <configuration>
+            <descriptors>
+              <descriptor>src/assemble/bin.xml</descriptor>
+            </descriptors>
+          </configuration>
+        </plugin>
+      </plugins>
+    </pluginManagement>
+  </build>
+  <dependencies>
+
+    <dependency>
+      <groupId>com.google.guava</groupId>
+      <artifactId>guava</artifactId>
+      <version>14.0.1</version>
+    </dependency>
+
+    <dependency>
+      <groupId>org.slf4j</groupId>
+      <artifactId>slf4j-api</artifactId>
+      <version>${dep.slf4j.version}</version>
+    </dependency>
+
+    <dependency>
+      <groupId>org.slf4j</groupId>
+      <artifactId>jul-to-slf4j</artifactId>
+      <version>${dep.slf4j.version}</version>
+    </dependency>
+
+    <dependency>
+      <groupId>org.slf4j</groupId>
+      <artifactId>jcl-over-slf4j</artifactId>
+      <version>${dep.slf4j.version}</version>
+    </dependency>
+
+    <dependency>
+      <groupId>org.slf4j</groupId>
+      <artifactId>log4j-over-slf4j</artifactId>
+      <version>${dep.slf4j.version}</version>
+    </dependency>
+
+    <!-- Test Dependencies -->
+    <dependency>
+      <groupId>com.googlecode.jmockit</groupId>
+      <artifactId>jmockit</artifactId>
+      <version>1.3</version>
+      <scope>test</scope>
+    </dependency>
+    <dependency>
+      <groupId>junit</groupId>
+      <artifactId>junit</artifactId>
+      <version>${dep.junit.version}</version>
+      <scope>test</scope>
+    </dependency>
+    <dependency>
+      <groupId>ch.qos.logback</groupId>
+      <artifactId>logback-classic</artifactId>
+      <version>1.0.13</version>
+      <scope>test</scope>
+    </dependency>
+    <dependency>
+      <groupId>de.huxhorn.lilith</groupId>
+      <artifactId>de.huxhorn.lilith.logback.appender.multiplex-classic</artifactId>
+      <version>0.9.43</version>
+      <scope>test</scope>
+    </dependency>
+
+  </dependencies>
+
+  <!-- Managed Dependencies -->
+  <dependencyManagement>
+  </dependencyManagement>
+
+  <profiles>
+    <profile>
+      <id>default-hadoop</id>
+      <activation>
+        <property>
+          <name>!alt-hadoop</name>
+        </property>
+      </activation>
+      <dependencyManagement>
+        <dependencies>
+          <dependency>
+            <groupId>org.apache.hadoop</groupId>
+            <artifactId>hadoop-core</artifactId>
+            <version>1.2.1</version>
+            <exclusions>
+              <exclusion>
+                <artifactId>jets3t</artifactId>
+                <groupId>net.java.dev.jets3t</groupId>
+              </exclusion>
+              <exclusion>
+                <artifactId>log4j</artifactId>
+                <groupId>log4j</groupId>
+              </exclusion>
+
+              <exclusion>
+                <artifactId>mockito-all</artifactId>
+                <groupId>org.mockito</groupId>
+              </exclusion>
+              <exclusion>
+                <artifactId>commons-logging-api</artifactId>
+                <groupId>commons-logging</groupId>
+              </exclusion>
+              <exclusion>
+                <artifactId>commons-logging</artifactId>
+                <groupId>commons-logging</groupId>
+              </exclusion>
+              <exclusion>
+                <artifactId>jersey-server</artifactId>
+                <groupId>com.sun.jersey</groupId>
+              </exclusion>
+              <exclusion>
+                <artifactId>core</artifactId>
+                <groupId>org.eclipse.jdt</groupId>
+              </exclusion>
+            </exclusions>
+          </dependency>
+        </dependencies>
+      </dependencyManagement>
+    </profile>
+    <profile>
+      <id>mapr</id>
+      <properties>
+        <alt-hadoop>mapr</alt-hadoop>
+      </properties>
+      <dependencyManagement>
+        <dependencies>
+          <dependency>
+            <groupId>xerces</groupId>
+            <artifactId>xercesImpl</artifactId>
+            <version>2.9.1</version>
+          </dependency>
+          <dependency>
+            <groupId>xalan</groupId>
+            <artifactId>xalan</artifactId>
+            <version>2.7.1</version>
+          </dependency>
+          <dependency>
+            <groupId>com.mapr.hadoop</groupId>
+            <artifactId>maprfs</artifactId>
+            <version>1.0.3-mapr-3.0.0</version>
+          </dependency>
+          <dependency>
+            <groupId>org.apache.hadoop</groupId>
+            <artifactId>hadoop-core</artifactId>
+            <version>1.0.3-mapr-3.0.0</version>
+            <exclusions>
+              <exclusion>
+                <artifactId>asm</artifactId>
+                <groupId>asm</groupId>
+              </exclusion>
+              <exclusion>
+                <artifactId>central-logging</artifactId>
+                <groupId>com.mapr.util</groupId>
+              </exclusion>
+              <exclusion>
+                <groupId>org.codehaus.jackson</groupId>
+                <artifactId>jackson-core-asl</artifactId>
+              </exclusion>
+              <exclusion>
+                <groupId>org.codehaus.jackson</groupId>
+                <artifactId>jackson-mapper-asl</artifactId>
+              </exclusion>
+              <exclusion>
+                <groupId>org.codehaus.jackson</groupId>
+                <artifactId>jackson-xc</artifactId>
+              </exclusion>
+              <exclusion>
+                <groupId>org.codehaus.jackson</groupId>
+                <artifactId>jackson-jaxrs</artifactId>
+              </exclusion>
+              <exclusion>
+                <artifactId>mockito-all</artifactId>
+                <groupId>org.codehaus</groupId>
+              </exclusion>
+              <exclusion>
+
+                <artifactId>jets3t</artifactId>
+                <groupId>net.java.dev.jets3t</groupId>
+              </exclusion>
+              <exclusion>
+                <artifactId>log4j</artifactId>
+                <groupId>log4j</groupId>
+              </exclusion>
+
+              <exclusion>
+                <artifactId>mockito-all</artifactId>
+                <groupId>org.mockito</groupId>
+              </exclusion>
+              <exclusion>
+                <artifactId>commons-logging-api</artifactId>
+                <groupId>commons-logging</groupId>
+              </exclusion>
+              <exclusion>
+                <artifactId>commons-logging</artifactId>
+                <groupId>commons-logging</groupId>
+              </exclusion>
+              <exclusion>
+                <artifactId>slf4j-log4j12</artifactId>
+                <groupId>org.slf4j</groupId>
+              </exclusion>
+              <exclusion>
+                <artifactId>servlet-api-2.5</artifactId>
+                <groupId>org.mortbay.jetty</groupId>
+              </exclusion>
+              <exclusion>
+                <artifactId>jasper-runtime</artifactId>
+                <groupId>tomcat</groupId>
+              </exclusion>
+              <exclusion>
+                <artifactId>jasper-compiler</artifactId>
+                <groupId>tomcat</groupId>
+              </exclusion>
+              <exclusion>
+                <artifactId>jetty</artifactId>
+                <groupId>org.mortbay.jetty</groupId>
+              </exclusion>
+              <exclusion>
+                <artifactId>jersey-server</artifactId>
+                <groupId>com.sun.jersey</groupId>
+              </exclusion>
+              <exclusion>
+                <artifactId>core</artifactId>
+                <groupId>org.eclipse.jdt</groupId>
+              </exclusion>
+            </exclusions>
+          </dependency>
+        </dependencies>
+      </dependencyManagement>
+      <repositories>
+        <repository>
+          <id>mapr-releases</id>
+          <url>http://repository.mapr.com/maven/</url>
+          <snapshots>
+            <enabled>false</enabled>
+          </snapshots>
+          <releases>
+            <enabled>true</enabled>
+          </releases>
+        </repository>
+      </repositories>
+    </profile>
+    <profile>
+      <id>cdh</id>
+      <properties>
+        <alt-hadoop>cdh4</alt-hadoop>
+      </properties>
+      <dependencyManagement>
+        <dependencies>
+          <dependency>
+            <groupId>org.apache.hadoop</groupId>
+            <artifactId>hadoop-common</artifactId>
+            <version>2.0.0-cdh4.4.0</version>
+            <exclusions>
+              <exclusion>
+                <artifactId>commons-logging</artifactId>
+                <groupId>commons-logging</groupId>
+              </exclusion>
+            </exclusions>
+          </dependency>
+        </dependencies>
+      </dependencyManagement>
+      <repositories>
+        <repository>
+          <id>cloudera</id>
+          <url>https://repository.cloudera.com/artifactory/cloudera-repos/</url>
+        </repository>
+      </repositories>
+    </profile>
+    <profile>
+      <id>hdp</id>
+      <properties>
+        <alt-hadoop>hdp</alt-hadoop>
+      </properties>
+      <dependencyManagement>
+        <dependencies>
+          <dependency>
+            <groupId>org.apache.hadoop</groupId>
+            <artifactId>hadoop-common</artifactId>
+            <version>2.1.0.2.0.4.0-38</version>
+            <exclusions>
+              <exclusion>
+                <artifactId>commons-logging</artifactId>
+                <groupId>commons-logging</groupId>
+              </exclusion>
+            </exclusions>
+          </dependency>
+        </dependencies>
+      </dependencyManagement>
+      <repositories>
+        <repository>
+          <releases>
+            <enabled>true</enabled>
+            <updatePolicy>always</updatePolicy>
+            <checksumPolicy>warn</checksumPolicy>
+          </releases>
+          <snapshots>
+            <enabled>false</enabled>
+            <updatePolicy>never</updatePolicy>
+            <checksumPolicy>fail</checksumPolicy>
+          </snapshots>
+          <id>HDPReleases</id>
+          <name>HDP Releases</name>
+          <url>http://repo.hortonworks.com/content/repositories/releases</url>
+          <layout>default</layout>
+        </repository>
+      </repositories>
+    </profile>
+  </profiles>
+  <modules>
+    <module>common</module>
+    <module>contrib</module>
+    <module>exec</module>
+    <module>sqlparser</module>
+    <module>distribution</module>
+  </modules>
+</project>

http://git-wip-us.apache.org/repos/asf/incubator-drill/blob/a593d908/sample-data/nation.parquet
----------------------------------------------------------------------
diff --git a/sample-data/nation.parquet b/sample-data/nation.parquet
new file mode 100644
index 0000000..db65492
Binary files /dev/null and b/sample-data/nation.parquet differ

http://git-wip-us.apache.org/repos/asf/incubator-drill/blob/a593d908/sample-data/region.parquet
----------------------------------------------------------------------
diff --git a/sample-data/region.parquet b/sample-data/region.parquet
new file mode 100644
index 0000000..ab8122c
Binary files /dev/null and b/sample-data/region.parquet differ

http://git-wip-us.apache.org/repos/asf/incubator-drill/blob/a593d908/sandbox/prototype/KEYS
----------------------------------------------------------------------
diff --git a/sandbox/prototype/KEYS b/sandbox/prototype/KEYS
deleted file mode 100644
index 205469b..0000000
--- a/sandbox/prototype/KEYS
+++ /dev/null
@@ -1,86 +0,0 @@
-This file contains the PGP keys of various developers.
-Please don't use them for email unless you have to. Their main
-purpose is code signing.
-
-Examples of importing this file in your keystore:
- gpg --import KEYS.txt
- (need pgp and other examples here)
-
-Examples of adding your key to this file:
- pgp -kxa <your name> and append it to this file.
- (pgpk -ll <your name> && pgpk -xa <your name>) >> this file.
- (gpg --list-sigs <your name>
-     && gpg --armor --export <your name>) >> this file.
-
------------------------------------------------------------------------------------
-
-pub   4096R/AB10D143 2013-09-01 [expires: 2017-09-01]
-uid                  Jacques Nadeau <ja...@apache.org>
-sig 3        AB10D143 2013-09-01  Jacques Nadeau <ja...@apache.org>
-sub   4096R/6B5FA695 2013-09-01 [expires: 2017-09-01]
-sig          AB10D143 2013-09-01  Jacques Nadeau <ja...@apache.org>
-
------BEGIN PGP PUBLIC KEY BLOCK-----
-Version: GnuPG v1.4.13 (Darwin)
-
-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
-P5iIjn4zOZYYd6Fobkpw3vi03ifusAeOzwpCmw==
-=6NWa
------END PGP PUBLIC KEY BLOCK-----
-

http://git-wip-us.apache.org/repos/asf/incubator-drill/blob/a593d908/sandbox/prototype/LICENSE
----------------------------------------------------------------------
diff --git a/sandbox/prototype/LICENSE b/sandbox/prototype/LICENSE
deleted file mode 100644
index f62230e..0000000
--- a/sandbox/prototype/LICENSE
+++ /dev/null
@@ -1,209 +0,0 @@
-
-                                 Apache License
-                           Version 2.0, January 2004
-                        http://www.apache.org/licenses/
-
-   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
-   1. Definitions.
-
-      "License" shall mean the terms and conditions for use, reproduction,
-      and distribution as defined by Sections 1 through 9 of this document.
-
-      "Licensor" shall mean the copyright owner or entity authorized by
-      the copyright owner that is granting the License.
-
-      "Legal Entity" shall mean the union of the acting entity and all
-      other entities that control, are controlled by, or are under common
-      control with that entity. For the purposes of this definition,
-      "control" means (i) the power, direct or indirect, to cause the
-      direction or management of such entity, whether by contract or
-      otherwise, or (ii) ownership of fifty percent (50%) or more of the
-      outstanding shares, or (iii) beneficial ownership of such entity.
-
-      "You" (or "Your") shall mean an individual or Legal Entity
-      exercising permissions granted by this License.
-
-      "Source" form shall mean the preferred form for making modifications,
-      including but not limited to software source code, documentation
-      source, and configuration files.
-
-      "Object" form shall mean any form resulting from mechanical
-      transformation or translation of a Source form, including but
-      not limited to compiled object code, generated documentation,
-      and conversions to other media types.
-
-      "Work" shall mean the work of authorship, whether in Source or
-      Object form, made available under the License, as indicated by a
-      copyright notice that is included in or attached to the work
-      (an example is provided in the Appendix below).
-
-      "Derivative Works" shall mean any work, whether in Source or Object
-      form, that is based on (or derived from) the Work and for which the
-      editorial revisions, annotations, elaborations, or other modifications
-      represent, as a whole, an original work of authorship. For the purposes
-      of this License, Derivative Works shall not include works that remain
-      separable from, or merely link (or bind by name) to the interfaces of,
-      the Work and Derivative Works thereof.
-
-      "Contribution" shall mean any work of authorship, including
-      the original version of the Work and any modifications or additions
-      to that Work or Derivative Works thereof, that is intentionally
-      submitted to Licensor for inclusion in the Work by the copyright owner
-      or by an individual or Legal Entity authorized to submit on behalf of
-      the copyright owner. For the purposes of this definition, "submitted"
-      means any form of electronic, verbal, or written communication sent
-      to the Licensor or its representatives, including but not limited to
-      communication on electronic mailing lists, source code control systems,
-      and issue tracking systems that are managed by, or on behalf of, the
-      Licensor for the purpose of discussing and improving the Work, but
-      excluding communication that is conspicuously marked or otherwise
-      designated in writing by the copyright owner as "Not a Contribution."
-
-      "Contributor" shall mean Licensor and any individual or Legal Entity
-      on behalf of whom a Contribution has been received by Licensor and
-      subsequently incorporated within the Work.
-
-   2. Grant of Copyright License. Subject to the terms and conditions of
-      this License, each Contributor hereby grants to You a perpetual,
-      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
-      copyright license to reproduce, prepare Derivative Works of,
-      publicly display, publicly perform, sublicense, and distribute the
-      Work and such Derivative Works in Source or Object form.
-
-   3. Grant of Patent License. Subject to the terms and conditions of
-      this License, each Contributor hereby grants to You a perpetual,
-      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
-      (except as stated in this section) patent license to make, have made,
-      use, offer to sell, sell, import, and otherwise transfer the Work,
-      where such license applies only to those patent claims licensable
-      by such Contributor that are necessarily infringed by their
-      Contribution(s) alone or by combination of their Contribution(s)
-      with the Work to which such Contribution(s) was submitted. If You
-      institute patent litigation against any entity (including a
-      cross-claim or counterclaim in a lawsuit) alleging that the Work
-      or a Contribution incorporated within the Work constitutes direct
-      or contributory patent infringement, then any patent licenses
-      granted to You under this License for that Work shall terminate
-      as of the date such litigation is filed.
-
-   4. Redistribution. You may reproduce and distribute copies of the
-      Work or Derivative Works thereof in any medium, with or without
-      modifications, and in Source or Object form, provided that You
-      meet the following conditions:
-
-      (a) You must give any other recipients of the Work or
-          Derivative Works a copy of this License; and
-
-      (b) You must cause any modified files to carry prominent notices
-          stating that You changed the files; and
-
-      (c) You must retain, in the Source form of any Derivative Works
-          that You distribute, all copyright, patent, trademark, and
-          attribution notices from the Source form of the Work,
-          excluding those notices that do not pertain to any part of
-          the Derivative Works; and
-
-      (d) If the Work includes a "NOTICE" text file as part of its
-          distribution, then any Derivative Works that You distribute must
-          include a readable copy of the attribution notices contained
-          within such NOTICE file, excluding those notices that do not
-          pertain to any part of the Derivative Works, in at least one
-          of the following places: within a NOTICE text file distributed
-          as part of the Derivative Works; within the Source form or
-          documentation, if provided along with the Derivative Works; or,
-          within a display generated by the Derivative Works, if and
-          wherever such third-party notices normally appear. The contents
-          of the NOTICE file are for informational purposes only and
-          do not modify the License. You may add Your own attribution
-          notices within Derivative Works that You distribute, alongside
-          or as an addendum to the NOTICE text from the Work, provided
-          that such additional attribution notices cannot be construed
-          as modifying the License.
-
-      You may add Your own copyright statement to Your modifications and
-      may provide additional or different license terms and conditions
-      for use, reproduction, or distribution of Your modifications, or
-      for any such Derivative Works as a whole, provided Your use,
-      reproduction, and distribution of the Work otherwise complies with
-      the conditions stated in this License.
-
-   5. Submission of Contributions. Unless You explicitly state otherwise,
-      any Contribution intentionally submitted for inclusion in the Work
-      by You to the Licensor shall be under the terms and conditions of
-      this License, without any additional terms or conditions.
-      Notwithstanding the above, nothing herein shall supersede or modify
-      the terms of any separate license agreement you may have executed
-      with Licensor regarding such Contributions.
-
-   6. Trademarks. This License does not grant permission to use the trade
-      names, trademarks, service marks, or product names of the Licensor,
-      except as required for reasonable and customary use in describing the
-      origin of the Work and reproducing the content of the NOTICE file.
-
-   7. Disclaimer of Warranty. Unless required by applicable law or
-      agreed to in writing, Licensor provides the Work (and each
-      Contributor provides its Contributions) on an "AS IS" BASIS,
-      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
-      implied, including, without limitation, any warranties or conditions
-      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
-      PARTICULAR PURPOSE. You are solely responsible for determining the
-      appropriateness of using or redistributing the Work and assume any
-      risks associated with Your exercise of permissions under this License.
-
-   8. Limitation of Liability. In no event and under no legal theory,
-      whether in tort (including negligence), contract, or otherwise,
-      unless required by applicable law (such as deliberate and grossly
-      negligent acts) or agreed to in writing, shall any Contributor be
-      liable to You for damages, including any direct, indirect, special,
-      incidental, or consequential damages of any character arising as a
-      result of this License or out of the use or inability to use the
-      Work (including but not limited to damages for loss of goodwill,
-      work stoppage, computer failure or malfunction, or any and all
-      other commercial damages or losses), even if such Contributor
-      has been advised of the possibility of such damages.
-
-   9. Accepting Warranty or Additional Liability. While redistributing
-      the Work or Derivative Works thereof, You may choose to offer,
-      and charge a fee for, acceptance of support, warranty, indemnity,
-      or other liability obligations and/or rights consistent with this
-      License. However, in accepting such obligations, You may act only
-      on Your own behalf and on Your sole responsibility, not on behalf
-      of any other Contributor, and only if You agree to indemnify,
-      defend, and hold each Contributor harmless for any liability
-      incurred by, or claims asserted against, such Contributor by reason
-      of your accepting any such warranty or additional liability.
-
-   END OF TERMS AND CONDITIONS
-
-   APPENDIX: How to apply the Apache License to your work.
-
-      To apply the Apache License to your work, attach the following
-      boilerplate notice, with the fields enclosed by brackets "[]"
-      replaced with your own identifying information. (Don't include
-      the brackets!)  The text should be enclosed in the appropriate
-      comment syntax for the file format. We also recommend that a
-      file or class name and description of purpose be included on the
-      same "printed page" as the copyright notice for easier
-      identification within third-party archives.
-
-   Copyright [yyyy] [name of copyright owner]
-
-   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.
-
-================================================================================
-
-The compiled Apache Drill distribution includes the following sources/binaries.
-The use of these sources/binaries is subject to the terms and conditions of
-their respective licenses.
-

http://git-wip-us.apache.org/repos/asf/incubator-drill/blob/a593d908/sandbox/prototype/common/pom.xml
----------------------------------------------------------------------
diff --git a/sandbox/prototype/common/pom.xml b/sandbox/prototype/common/pom.xml
deleted file mode 100644
index cd973e2..0000000
--- a/sandbox/prototype/common/pom.xml
+++ /dev/null
@@ -1,158 +0,0 @@
-<?xml version="1.0"?>
-<project
-  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
-  xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-  <modelVersion>4.0.0</modelVersion>
-  
-  <parent>
-    <artifactId>drill-root</artifactId>
-    <groupId>org.apache.drill</groupId>
-    <version>1.0.0-m1-SNAPSHOT</version>
-  </parent>
-
-  <artifactId>common</artifactId>
-  <packaging>jar</packaging>
-  <name>Common (Logical Plan, Base expressions)</name>
-
-  <dependencies>
-
-    <dependency>
-      <groupId>com.google.protobuf</groupId>
-      <artifactId>protobuf-java</artifactId>
-      <version>2.5.0</version>
-    </dependency>
-
-    <dependency>
-      <groupId>com.typesafe</groupId>
-      <artifactId>config</artifactId>
-      <version>1.0.0</version>
-    </dependency>
-
-    <dependency>
-      <groupId>org.apache.commons</groupId>
-      <artifactId>commons-lang3</artifactId>
-      <version>3.1</version>
-    </dependency>
-
-    <dependency>
-      <groupId>org.msgpack</groupId>
-      <artifactId>msgpack</artifactId>
-      <version>0.6.6</version>
-    </dependency>
-
-    <dependency>
-      <groupId>org.reflections</groupId>
-      <artifactId>reflections</artifactId>
-      <version>0.9.8</version>
-    </dependency>
-
-    <dependency>
-      <groupId>com.fasterxml.jackson.core</groupId>
-      <artifactId>jackson-annotations</artifactId>
-      <version>2.1.1</version>
-    </dependency>
-    <dependency>
-      <groupId>org.hibernate</groupId>
-      <artifactId>hibernate-validator</artifactId>
-      <version>4.3.1.Final</version>
-    </dependency>
-    <dependency>
-      <groupId>com.fasterxml.jackson.core</groupId>
-      <artifactId>jackson-databind</artifactId>
-      <version>2.1.1</version>
-    </dependency>
-    <dependency>
-      <groupId>org.antlr</groupId>
-      <artifactId>antlr-runtime</artifactId>
-      <version>3.4</version>
-    </dependency>
-
-
-  </dependencies>
-
-
-  <build>
-    <plugins>
-      <plugin>
-          <artifactId>maven-surefire-plugin</artifactId>
-          <version>2.15</version>
-          <configuration>
-            <useSystemClassLoader>false</useSystemClassLoader>
-          </configuration>
-      </plugin>    
-      <plugin>
-        <artifactId>maven-jar-plugin</artifactId>
-        <executions>
-          <execution>
-            <id>test-jar</id>
-            <goals>
-              <goal>test-jar</goal>
-            </goals>
-          </execution>
-        </executions>
-      </plugin>
-      <plugin>
-        <groupId>org.antlr</groupId>
-        <artifactId>antlr3-maven-plugin</artifactId>
-        <version>3.4</version>
-        <configuration>
-
-        </configuration>
-        <executions>
-          <execution>
-            <goals>
-              <goal>antlr</goal>
-            </goals>
-          </execution>
-        </executions>
-      </plugin>
-
-
-      <plugin>
-        <groupId>com.github.igor-petruk.protobuf</groupId>
-        <artifactId>protobuf-maven-plugin</artifactId>
-        <version>0.6.3</version>
-        <executions>
-          <execution>
-            <goals>
-              <goal>run</goal>
-            </goals>
-          </execution>
-        </executions>
-      </plugin>
-	 
-      <plugin>
-        <groupId>org.apache.maven.plugins</groupId>
-        <artifactId>maven-shade-plugin</artifactId>
-        <version>2.1</version>
-        <executions>
-          <execution>
-            <phase>package</phase>
-            <goals>
-              <goal>shade</goal>
-            </goals>
-            <configuration>
-              <artifactSet>
-                 <includes>
-                    <include>com.google.protobuf:protobuf-java</include>                     
-                 </includes>                 
-              </artifactSet>
-              <shadedArtifactAttached>true</shadedArtifactAttached>
-              <shadedClassifierName>rebuffed</shadedClassifierName>
-             
-              <relocations>
-                <relocation>
-                  <pattern>com.google.protobuf</pattern>
-                  <shadedPattern>250.com.google.protobuf</shadedPattern>
-                </relocation>
-              </relocations>
-            </configuration>
-          </execution>
-        </executions>
-      </plugin>
-
-
-    </plugins>
-
-  </build>
-</project>

http://git-wip-us.apache.org/repos/asf/incubator-drill/blob/a593d908/sandbox/prototype/common/src/main/antlr3/org/apache/drill/common/expression/parser/ExprLexer.g
----------------------------------------------------------------------
diff --git a/sandbox/prototype/common/src/main/antlr3/org/apache/drill/common/expression/parser/ExprLexer.g b/sandbox/prototype/common/src/main/antlr3/org/apache/drill/common/expression/parser/ExprLexer.g
deleted file mode 100644
index 76da965..0000000
--- a/sandbox/prototype/common/src/main/antlr3/org/apache/drill/common/expression/parser/ExprLexer.g
+++ /dev/null
@@ -1,111 +0,0 @@
-lexer grammar ExprLexer;
-
-options {
-    language=Java;
-}
-
-@header {
-/*
- * 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.
- */
-
-package org.apache.drill.common.expression.parser;
-}
-
-If       : 'if';
-Else     : 'else';
-Return   : 'return';
-Then     : 'then';
-End      : 'end';
-In       : 'in';
-Case     : 'case';
-When     : 'when';
-
-
-Or       : '||' | 'or' | 'OR' | 'Or';
-And      : '&&' | 'and' | 'AND' ;
-Equals   : '==' | '=';
-NEquals  : '<>' | '!=';
-GTEquals : '>=';
-LTEquals : '<=';
-Caret      : '^';
-Excl     : '!';
-GT       : '>';
-LT       : '<';
-Plus      : '+';
-Minus : '-';
-Asterisk : '*';
-ForwardSlash   : '/';
-Percent  : '%';
-OBrace   : '{';
-CBrace   : '}';
-OBracket : '[';
-CBracket : ']';
-OParen   : '(';
-CParen   : ')';
-SColon   : ';';
-Comma    : ',';
-QMark    : '?';
-Colon    : ':';
-SingleQuote: '\'';
-
-Bool
-  :  'true' 
-  |  'false'
-  ;
-
-Number
-  :  Int ('.' Digit*)? ('e' ('+' | '-')? Digit*)?
-  ;
-
-//Float
-//  :  Int ('.' Digit*)? ('e' ('+' | '-')? Digit*)?
-//  ;
-//
-//Integer
-//  :  Digit Digit*
-//  ;
-  
-Identifier
-  :  ('a'..'z' | 'A'..'Z' | '_' | '$') ('a'..'z' | 'A'..'Z' | '_' | '$' | Digit)* ('.' ('a'..'z' | 'A'..'Z' | '_' | '$' ) ('a'..'z' | 'A'..'Z' | '_' | '$' | Digit)*)*
-  ;
-
-String
-@after {
-  setText(getText().substring(1, getText().length()-1).replaceAll("\\\\(.)", "$1"));
-}
-  :  '"'  (~('"' | '\\')  | '\\' ('\\' | '"'))* '"' 
-  |  '\'' (~('\'' | '\\') | '\\' ('\\' | '\''))* '\''
-  ;
-
-Comment
-  :  '//' ~('\r' | '\n')* {skip();}
-  |  '/*' .* '*/'         {skip();}
-  ;
-
-Space
-  :  (' ' | '\t' | '\r' | '\n' | '\u000C') {skip();}
-  ;
-
-fragment Int
-  :  '1'..'9' Digit*
-  |  '0'
-  ;
-  
-fragment Digit 
-  :  '0'..'9'
-  ;

http://git-wip-us.apache.org/repos/asf/incubator-drill/blob/a593d908/sandbox/prototype/common/src/main/antlr3/org/apache/drill/common/expression/parser/ExprParser.g
----------------------------------------------------------------------
diff --git a/sandbox/prototype/common/src/main/antlr3/org/apache/drill/common/expression/parser/ExprParser.g b/sandbox/prototype/common/src/main/antlr3/org/apache/drill/common/expression/parser/ExprParser.g
deleted file mode 100644
index 7fc1651..0000000
--- a/sandbox/prototype/common/src/main/antlr3/org/apache/drill/common/expression/parser/ExprParser.g
+++ /dev/null
@@ -1,224 +0,0 @@
-parser grammar ExprParser;
-
-options{
-  output=AST;
-  language=Java;
-  tokenVocab=ExprLexer;
-  backtrack=true;
-  memoize=true;
-}
-
-
-
-@header {
-/*
- * 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.
- */
-
-package org.apache.drill.common.expression.parser;
-  
-//Explicit import...
-import org.antlr.runtime.BitSet;
-import java.util.*;
-import org.apache.drill.common.expression.*;
-
-}
-
-@members{
-  private FunctionRegistry registry;
-  private String fullExpression;
-  private int tokenPos;
-  public void setRegistry(FunctionRegistry registry){
-    this.registry = registry;
-  }
-
-  public static void p(String s){
-    System.out.println(s);
-  }
-  
-  public ExpressionPosition pos(Token token){
-    return new ExpressionPosition(fullExpression, token.getTokenIndex());
-  }
-}
-
-parse returns [LogicalExpression e]
-  :  expression EOF {
-    $e = $expression.e; 
-    if(fullExpression == null) fullExpression = $expression.text;
-    tokenPos = $expression.start.getTokenIndex();
-  }
-  ;
- 
-functionCall returns [LogicalExpression e]
-  :  Identifier OParen exprList? CParen {$e = registry.createExpression($Identifier.text, pos($Identifier), $exprList.listE);  }
-  ;
-
-ifStatement returns [LogicalExpression e]
-	@init {
-	  IfExpression.Builder s = IfExpression.newBuilder();
-	}
-	@after {
-	  $e = s.build();
-	}  
-  :  i1=ifStat {s.addCondition($i1.i); s.setPosition(pos($i1.start)); } (elseIfStat { s.addCondition($elseIfStat.i); } )* Else expression { s.setElse($expression.e); }End 
-  ;
-
-ifStat returns [IfExpression.IfCondition i]
-  : If e1=expression Then e2=expression { $i = new IfExpression.IfCondition($e1.e, $e2.e); }
-  ;
-elseIfStat returns [IfExpression.IfCondition i]
-  : Else If e1=expression Then e2=expression { $i = new IfExpression.IfCondition($e1.e, $e2.e); }
-  ;
-
-caseStatement returns [LogicalExpression e]
-	@init {
-	  IfExpression.Builder s = IfExpression.newBuilder();
-	}
-	@after {
-	  $e = s.build();
-	}  
-  : Case (caseWhenStat {s.addCondition($caseWhenStat.i); }) + caseElseStat { s.setElse($caseElseStat.e); } End 
-  ;
-  
-caseWhenStat returns [IfExpression.IfCondition i]
-  : When e1=expression Then e2=expression {$i = new IfExpression.IfCondition($e1.e, $e2.e); }
-  ;
-  
-caseElseStat returns [LogicalExpression e]
-  : Else expression {$e = $expression.e; }
-  ;
-  
-exprList returns [List<LogicalExpression> listE]
-	@init{
-	  $listE = new ArrayList<LogicalExpression>();
-	}
-  :  e1=expression {$listE.add($e1.e); } (Comma e2=expression {$listE.add($e2.e); } )*
-  ;
-
-expression returns [LogicalExpression e]  
-  :  ifStatement {$e = $ifStatement.e; }
-  |  caseStatement {$e = $caseStatement.e; }
-  |  condExpr {$e = $condExpr.e; }
-  ;
-
-condExpr returns [LogicalExpression e]
-  :  orExpr {$e = $orExpr.e; }
-  ;
-
-orExpr returns [LogicalExpression e]
-	@init{
-	  List<LogicalExpression> exprs = new ArrayList<LogicalExpression>();
-	  ExpressionPosition p = null;
-	}
-	@after{
-	  if(exprs.size() == 1){
-	    $e = exprs.get(0);
-	  }else{
-	    $e = registry.createExpression("||", p, exprs);
-	  }
-	}
-  :  a1=andExpr { exprs.add($a1.e); p = pos( $a1.start );} (Or a2=andExpr { exprs.add($a2.e); })*
-  ;
-
-andExpr returns [LogicalExpression e]
-	@init{
-	  List<LogicalExpression> exprs = new ArrayList<LogicalExpression>();
-	  ExpressionPosition p = null;
-	}
-	@after{
-	  if(exprs.size() == 1){
-	    $e = exprs.get(0);
-	  }else{
-	    $e = registry.createExpression("&&", p, exprs);
-	  }
-	}
-  :  e1=equExpr { exprs.add($e1.e); p = pos( $e1.start );  } ( And e2=equExpr { exprs.add($e2.e);  })*
-  ;
-
-equExpr returns [LogicalExpression e]
-	@init{
-	  List<LogicalExpression> exprs = new ArrayList<LogicalExpression>();
-	  List<String> cmps = new ArrayList();
-	  ExpressionPosition p = null;
-	}
-	@after{
-	  $e = registry.createByOp(exprs, p, cmps);
-	}
-  :  r1=relExpr { exprs.add($r1.e); p = pos( $r1.start );
-    } ( cmpr= ( Equals | NEquals ) r2=relExpr {exprs.add($r2.e); cmps.add($cmpr.text); })*
-  ;
-
-relExpr returns [LogicalExpression e]
-  :  left=addExpr {$e = $left.e; } (cmpr = (GTEquals | LTEquals | GT | LT) right=addExpr {$e = registry.createExpression($cmpr.text, pos($left.start), $left.e, $right.e); } )? 
-  ;
-
-addExpr returns [LogicalExpression e]
-	@init{
-	  List<LogicalExpression> exprs = new ArrayList<LogicalExpression>();
-	  List<String> ops = new ArrayList();
-	  ExpressionPosition p = null;
-	}
-	@after{
-	  $e = registry.createByOp(exprs, p, ops);
-	}
-  :  m1=mulExpr  {exprs.add($m1.e); p = pos($m1.start); } ( op=(Plus|Minus) m2=mulExpr {exprs.add($m2.e); ops.add($op.text); })* 
-  ;
-
-mulExpr returns [LogicalExpression e]
-	@init{
-	  List<LogicalExpression> exprs = new ArrayList<LogicalExpression>();
-	  List<String> ops = new ArrayList();
-	  ExpressionPosition p = null;
-	}
-	@after{
-	  $e = registry.createByOp(exprs, p, ops);
-	}
-  :  p1=xorExpr  {exprs.add($p1.e); p = pos($p1.start);} (op=(Asterisk|ForwardSlash|Percent) p2=xorExpr {exprs.add($p2.e); ops.add($op.text); } )*
-  ;
-
-xorExpr returns [LogicalExpression e]
-	@init{
-	  List<LogicalExpression> exprs = new ArrayList<LogicalExpression>();
-	  List<String> ops = new ArrayList();
-	  ExpressionPosition p = null;
-	}
-	@after{
-	  $e = registry.createByOp(exprs, p, ops);
-	}
-  :  u1=unaryExpr {exprs.add($u1.e); p = pos($u1.start);} (Caret u2=unaryExpr {exprs.add($u2.e); ops.add($Caret.text);} )*
-  ;
-  
-unaryExpr returns [LogicalExpression e]
-  :  Minus atom {$e = registry.createExpression("u-", pos($atom.start), $atom.e); }
-  |  Excl atom {$e= registry.createExpression("!", pos($atom.start), $atom.e); }
-  |  atom {$e = $atom.e; }
-  ;
-
-atom returns [LogicalExpression e]
-  :  Number {$e = ValueExpressions.getNumericExpression($Number.text, pos($atom.start)); }
-  |  Bool {$e = new ValueExpressions.BooleanExpression( $Bool.text, pos($atom.start)); }
-  |  lookup {$e = $lookup.e; }
-  ;
-
-
-lookup returns [LogicalExpression e]
-  :  functionCall {$e = $functionCall.e ;}
-  | Identifier {$e = new SchemaPath($Identifier.text, pos($Identifier) ); }
-  | String {$e = new ValueExpressions.QuotedString($String.text, pos($String) ); }
-  | OParen expression CParen  {$e = $expression.e; }
-  | SingleQuote Identifier SingleQuote {$e = new SchemaPath($Identifier.text, pos($Identifier) ); }
-  ;

http://git-wip-us.apache.org/repos/asf/incubator-drill/blob/a593d908/sandbox/prototype/common/src/main/antlr3/org/apache/drill/common/storage/proto/ProtoLexer.g.bk
----------------------------------------------------------------------
diff --git a/sandbox/prototype/common/src/main/antlr3/org/apache/drill/common/storage/proto/ProtoLexer.g.bk b/sandbox/prototype/common/src/main/antlr3/org/apache/drill/common/storage/proto/ProtoLexer.g.bk
deleted file mode 100644
index 81b3e03..0000000
--- a/sandbox/prototype/common/src/main/antlr3/org/apache/drill/common/storage/proto/ProtoLexer.g.bk
+++ /dev/null
@@ -1,287 +0,0 @@
-//========================================================================
-//Copyright 2007-2009 David Yu dyuproject@gmail.com
-//------------------------------------------------------------------------
-//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.
-//========================================================================
-
-/** Apache Drill notes: Based off r1586 of protostuff **/
-
-lexer grammar ProtoLexer;
-
-options {
-   language=Java;  // Default
-}
-
-@header {
-    package org.apache.drill.common.storage.proto;
-}
-    
-ASSIGN
-    :   '='
-    ;
-    
-AT
-    :   '@'
-    ;
-    
-LEFTCURLY
-    :   '{'
-    ;
-    
-RIGHTCURLY
-    :   '}'
-    ;
-    
-LEFTPAREN
-    :   '('
-    ;
-    
-RIGHTPAREN
-    :   ')'
-    ;
-    
-LEFTSQUARE
-    :   '['
-    ;
-    
-RIGHTSQUARE
-    :   ']'
-    ;
-
-SEMICOLON
-    :   ';'
-    ;
-    
-COMMA
-    :   ','
-    ;
-    
-PLUS
-    :   '+'
-    ;
-    
-MINUS
-    :   '-'
-    ;
-    
-TO
-    :   'to'
-    ;
-
-TRUE
-    :   'true'
-    ;
-    
-FALSE
-    :   'false'
-    ;
-    
-PKG 
-    :   'package'
-    ;
-
-SYNTAX
-    :   'syntax'
-    ;
-    
-IMPORT
-    :   'import'
-    ;
-    
-OPTION
-    :   'option'
-    ;
-    
-MESSAGE
-    :   'message'
-    ;
-
-SERVICE
-    :   'service'
-    ;
-    
-ENUM
-    :   'enum'
-    ;
-
-REQUIRED
-    :   'required'
-    ;
-    
-OPTIONAL
-    :   'optional'
-    ;
-
-REPEATED
-    :   'repeated'
-    ;
-    
-EXTENSIONS
-    :   'extensions'
-    ;
-    
-EXTEND
-    :   'extend'
-    ;
-    
-GROUP
-    :   'group'
-    ;
-    
-RPC
-    :   'rpc'
-    ;
-    
-RETURNS
-    :   'returns'
-    ;
-    
-INT32
-    :   'int32'
-    ;
-    
-INT64
-    :   'int64'
-    ;
-    
-UINT32
-    :   'uint32'
-    ;
-    
-UINT64
-    :   'uint64'
-    ;
-    
-SINT32
-    :   'sint32'
-    ;
-    
-SINT64
-    :   'sint64'
-    ;
-    
-FIXED32
-    :   'fixed32'
-    ;
-    
-FIXED64
-    :   'fixed64'
-    ;
-    
-SFIXED32
-    :   'sfixed32'
-    ;
-    
-SFIXED64
-    :   'sfixed64'
-    ;
-    
-FLOAT
-    :   'float'
-    ;
-    
-DOUBLE
-    :   'double'
-    ;
-    
-BOOL
-    :   'bool'
-    ;
-    
-STRING
-    :   'string'
-    ;
-    
-BYTES
-    :   'bytes'
-    ;
-    
-DEFAULT
-    :   'default'
-    ;
-
-MAX
-    :   'max'
-    ;    
-
-VOID
-    :   'void'
-    ;
-
-FULL_ID
-    : ID ('.' ID)+
-    ;
-
-ID  
-    :   ('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'0'..'9'|'_')*
-    ;
-    
-EXP
-    :   NUMINT ('e'|'E') NUMINT
-    ;
-    
-NUMDOUBLE
-    :   (NUMFLOAT|NUMINT)
-        'e' '0'..'9'+
-    ;
-
-NUMFLOAT
-    :   NUMINT '.' '0'..'9'+ 'f'?
-    ;
- 
-NUMINT
-    :   '0' | MINUS? '1'..'9' '0'..'9'*
-    ;
-    
-HEX
-    :   MINUS? '0' ('x'|'X') HEX_DIGIT+
-    ;
-    
-OCTAL
-    :   '0' ('0'..'7')+
-    ;
-    
-COMMENT
-    :   '//' ~('\n'|'\r')* '\r'? '\n' {skip();}
-    |   '/*' ( options {greedy=false;} : . )* '*/' {skip();}
-    ;
-
-WS  :   ( ' '
-        | '\t'
-        | '\r'
-        | '\n'
-        ) {skip();}
-    ;
-    
-STRING_LITERAL
-    :   '"' ( ESC_SEQ | ~('\\'|'"') )* '"'
-    ;
-
-fragment HEX_DIGIT
-    :   ('0'..'9'|'a'..'f'|'A'..'F')
-    ;
-
-fragment ESC_SEQ
-    :   '\\' ('a'|'v'|'b'|'t'|'n'|'f'|'r'|'\"'|'\''|'\\')
-    |   '\\' ('x'|'X') HEX_DIGIT HEX_DIGIT
-    |   UNICODE_ESC
-    |   OCTAL_ESC
-    ;
-
-fragment OCTAL_ESC
-    :   '\\' ('0'..'3') ('0'..'7') ('0'..'7')
-    |   '\\' ('0'..'7') ('0'..'7')
-    |   '\\' ('0'..'7')
-    ;
-
-fragment UNICODE_ESC
-    :   '\\' 'u' HEX_DIGIT HEX_DIGIT HEX_DIGIT HEX_DIGIT
-    ;

http://git-wip-us.apache.org/repos/asf/incubator-drill/blob/a593d908/sandbox/prototype/common/src/main/antlr3/org/apache/drill/common/storage/proto/ProtoParser.g.bk
----------------------------------------------------------------------
diff --git a/sandbox/prototype/common/src/main/antlr3/org/apache/drill/common/storage/proto/ProtoParser.g.bk b/sandbox/prototype/common/src/main/antlr3/org/apache/drill/common/storage/proto/ProtoParser.g.bk
deleted file mode 100644
index 81b6eb6..0000000
--- a/sandbox/prototype/common/src/main/antlr3/org/apache/drill/common/storage/proto/ProtoParser.g.bk
+++ /dev/null
@@ -1,605 +0,0 @@
-//========================================================================
-//Copyright 2007-2009 David Yu dyuproject@gmail.com
-//------------------------------------------------------------------------
-//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.
-//========================================================================
-
-/** Apache Drill notes: Based off r1586 of protostuff **/
-
-parser grammar ProtoParser;
-
-options {
-    language  = Java;
-    output    = AST;
-    tokenVocab = ProtoLexer;
-}
-
-@header {
-    package org.apache.drill.common.storage.proto;
-}
-
-parse [Proto proto]
-    :   (statement[proto])+ EOF! {
-            if(!proto.annotations.isEmpty())
-                throw new IllegalStateException("Misplaced annotations: " + proto.annotations);
-            
-            proto.postParse();
-        }
-    ;
-    
-statement [Proto proto]
-    :   header_syntax[proto]
-    |   header_package[proto]
-    |   header_import[proto]
-    |   message_block[proto, null]
-    |   enum_block[proto, null]
-    |   extend_block[proto, null]
-    |   service_block[proto]
-    |   annotation_entry[proto]
-    |   option_entry[proto, proto]
-    ;
-
-// some keywords that might possibly be used as a variable
-var
-    :   ID | TO | PKG | SYNTAX | IMPORT | OPTION | MESSAGE | SERVICE | ENUM |  
-        REQUIRED | OPTIONAL | REPEATED | EXTENSIONS | EXTEND | GROUP | RPC | 
-        RETURNS | INT32 | INT64 | UINT32 | UINT64 | SINT32 | SINT64 | 
-        FIXED32 | FIXED64 | SFIXED32 | SFIXED64 | FLOAT | DOUBLE | BOOL | 
-        STRING | BYTES | DEFAULT | MAX | VOID
-    ;
-
-annotation_entry [Proto proto]
-@init {
-    Annotation annotation = null;
-}
-    :   AT var { annotation = new Annotation($var.text); }
-        (LEFTPAREN 
-        annotation_keyval[proto, annotation] (COMMA annotation_keyval[proto, annotation])* 
-        RIGHTPAREN)? {
-            proto.add(annotation);
-        }
-    ;
-
-annotation_keyval [Proto proto, Annotation annotation]
-    :   k=var ASSIGN (
-                ID { annotation.putRef($k.text, $ID.text); }
-            |   fid=FULL_ID { annotation.putRef($k.text, $fid.text); }
-            |   NUMFLOAT { annotation.put($k.text, Float.valueOf($NUMFLOAT.text)); }
-            |   NUMINT { annotation.put($k.text, Integer.valueOf($NUMINT.text)); }
-            |   NUMDOUBLE { annotation.put($k.text, Double.valueOf($NUMDOUBLE.text)); }
-            |   TRUE { annotation.put($k.text, Boolean.TRUE); }
-            |   FALSE { annotation.put($k.text, Boolean.FALSE); }
-            |   STRING_LITERAL { annotation.put($k.text, getStringFromStringLiteral($STRING_LITERAL.text)); }
-            |   v=var { annotation.put($k.text, $v.text); }
-        )
-    ;
-
-header_syntax [Proto proto]
-    :   SYNTAX ASSIGN STRING_LITERAL SEMICOLON! {
-            if(!"proto2".equals(getStringFromStringLiteral($STRING_LITERAL.text))) {
-                throw new IllegalStateException("Syntax isn't proto2: '" +
-                  getStringFromStringLiteral($STRING_LITERAL.text)+"'");
-            }
-                  
-            if(!proto.annotations.isEmpty())
-                throw new IllegalStateException("Misplaced annotations: " + proto.annotations);
-        }
-    ;
-
-header_package [Proto proto] // ignore
-    :   PKG (FULL_ID  | var ) SEMICOLON! 
-    ;
-    
-header_import [Proto proto]
-    :   IMPORT STRING_LITERAL SEMICOLON! {
-            proto.importProto(getStringFromStringLiteral($STRING_LITERAL.text));
-            
-            if(!proto.annotations.isEmpty())
-                throw new IllegalStateException("Misplaced annotations: " + proto.annotations);
-        }
-    ;
-
-option_entry [Proto proto, HasOptions ho]
-    :   OPTION LEFTPAREN? k=(ID|FULL_ID) RIGHTPAREN? ASSIGN (
-                id=ID { ho.putStandardOption($k.text, $id.text); }
-            |   fid=FULL_ID { ho.putStandardOption($k.text, $fid.text); }
-            |   NUMFLOAT { ho.putExtraOption($k.text, Float.valueOf($NUMFLOAT.text)); }
-            |   NUMINT { ho.putExtraOption($k.text, Integer.valueOf($NUMINT.text)); }
-            |   NUMDOUBLE { ho.putExtraOption($k.text, Double.valueOf($NUMDOUBLE.text)); }
-            |   TRUE { ho.putExtraOption($k.text, Boolean.TRUE); }
-            |   FALSE { ho.putExtraOption($k.text, Boolean.FALSE); }
-            |   STRING_LITERAL { ho.putExtraOption($k.text, getStringFromStringLiteral($STRING_LITERAL.text)); }
-        ) SEMICOLON! {
-            if(!proto.annotations.isEmpty())
-                throw new IllegalStateException("Misplaced annotations: " + proto.annotations);
-        }
-    ;
-    
-message_block [Proto proto, Message parent]
-@init {
-    Message message = null;
-}
-    :   MESSAGE ID { 
-            message = new Message($ID.text);
-            if(parent==null)
-                proto.addMessage(message);
-            else
-                parent.addNestedMessage(message);
-                
-            proto.addAnnotationsTo(message);
-        } 
-        LEFTCURLY (message_body[proto, message])* RIGHTCURLY {
-            if(!proto.annotations.isEmpty())
-                throw new IllegalStateException("Misplaced annotations: " + proto.annotations);
-        }
-    ;
-
-message_body [Proto proto, Message message]
-    :   message_block[proto, message]
-    |   message_field[proto, message]
-    |   enum_block[proto, message]
-    |   extend_block[proto, message]
-    |   extensions_range[proto, message]
-    |   annotation_entry[proto]
-    |   option_entry[proto, message]
-    ;
-    
-extensions_range [Proto proto, Message message]
-@init {
-  int first = -1;
-  int last = -1;
-}
-    :   EXTENSIONS f=NUMINT { first = Integer.parseInt($f.text); last = first;}
-        ( TO ( l=NUMINT { last = Integer.parseInt($l.text); } | MAX {last = 536870911; } ) )?
-        SEMICOLON! {
-            message.defineExtensionRange(first, last);
-        }
-    ;
-    
-message_field [Proto proto, HasFields message]
-@init {
-    Field.Modifier modifier = null;
-    FieldHolder fieldHolder = null;
-}
-    :   (OPTIONAL { modifier = Field.Modifier.OPTIONAL;  } 
-        |   REQUIRED { modifier = Field.Modifier.REQUIRED; } 
-        |   REPEATED { modifier = Field.Modifier.REPEATED; }) {
-            fieldHolder = new FieldHolder();
-        }
-        field_type[proto, message, fieldHolder] 
-        var ASSIGN NUMINT {
-            if(fieldHolder.field != null) {
-                fieldHolder.field.modifier = modifier;
-                fieldHolder.field.name = $var.text;
-                fieldHolder.field.number = Integer.parseInt($NUMINT.text);
-            }
-        } 
-        (field_options[proto, message, fieldHolder.field])? {
-            if(fieldHolder.field != null) {
-                proto.addAnnotationsTo(fieldHolder.field, message.getEnclosingNamespace());
-                message.addField(fieldHolder.field);
-            }
-        }
-        (SEMICOLON! | ignore_block)
-    ;
-    
-field_type [Proto proto, HasFields message, FieldHolder fieldHolder]
-    :   INT32 { fieldHolder.setField(new Field.Int32()); }
-    |   UINT32 { fieldHolder.setField(new Field.UInt32()); }
-    |   SINT32 { fieldHolder.setField(new Field.SInt32()); }
-    |   FIXED32 { fieldHolder.setField(new Field.Fixed32()); }
-    |   SFIXED32 { fieldHolder.setField(new Field.SFixed32()); }
-    |   INT64 { fieldHolder.setField(new Field.Int64()); }
-    |   UINT64 { fieldHolder.setField(new Field.UInt64()); }
-    |   SINT64 { fieldHolder.setField(new Field.SInt64()); }
-    |   FIXED64 { fieldHolder.setField(new Field.Fixed64()); }
-    |   SFIXED64 { fieldHolder.setField(new Field.SFixed64()); }
-    |   FLOAT { fieldHolder.setField(new Field.Float()); }
-    |   DOUBLE { fieldHolder.setField(new Field.Double()); }
-    |   BOOL { fieldHolder.setField(new Field.Bool()); }
-    |   STRING { fieldHolder.setField(new Field.String()); }
-    |   BYTES { fieldHolder.setField(new Field.Bytes()); }
-    |   GROUP {
-            String suffix = proto.getFile()==null ? "" : " of " + proto.getFile().getName();
-            warn("'group' not supported @ line " + $GROUP.line + suffix);
-        }
-    |   FULL_ID {
-            String fullType = $FULL_ID.text;
-            int lastDot = fullType.lastIndexOf('.');
-            String packageName = fullType.substring(0, lastDot); 
-            String type = fullType.substring(lastDot+1);
-            fieldHolder.setField(new Field.Reference(packageName, type, message));
-        }
-    |   ID { 
-            String type = $ID.text;
-            fieldHolder.setField(new Field.Reference(null, type, message));
-        }
-    ;
-    
-field_options [Proto proto, HasFields message, Field field]
-    :   LEFTSQUARE field_options_keyval[proto, message, field] 
-        (COMMA field_options_keyval[proto, message, field])* RIGHTSQUARE
-    ;
-    
-field_options_keyval [Proto proto, HasFields message, Field field]
-    :   key=(DEFAULT|ID) ASSIGN (STRING_LITERAL {
-            if("default".equals($key.text)) {
-                if(field.defaultValue!=null || field.modifier == Field.Modifier.REPEATED)
-                    throw new IllegalStateException("a field can only have a single default value");
-                
-                if(field instanceof Field.String)
-                    field.defaultValue = getStringFromStringLiteral($STRING_LITERAL.text);
-                else if(field instanceof Field.Bytes)
-                    field.defaultValue = getBytesFromStringLiteral($STRING_LITERAL.text);
-                else
-                    throw new IllegalStateException("Invalid string default value for the field: " + field.getClass().getSimpleName() + " " + field.name);
-            }
-            
-            field.putExtraOption($key.text, getStringFromStringLiteral($STRING_LITERAL.text));
-        } 
-    |   NUMFLOAT {
-            if("default".equals($key.text)) {
-                if(field.defaultValue!=null || field.modifier == Field.Modifier.REPEATED)
-                    throw new IllegalStateException("a field can only have a single default value");
-                
-                if(field instanceof Field.Float)
-                    field.defaultValue = Float.valueOf($NUMFLOAT.text);
-                else if(field instanceof Field.Double) 
-                    field.defaultValue = Double.valueOf($NUMFLOAT.text);
-                else
-                    throw new IllegalStateException("Invalid float default value for the field: " + field.getClass().getSimpleName() + " " + field.name);
-            }
-            
-            field.putExtraOption($key.text, Float.valueOf($NUMFLOAT.text));
-        } 
-    |   NUMINT {
-            if("default".equals($key.text)) {
-                if(field.defaultValue!=null || field.modifier == Field.Modifier.REPEATED)
-                    throw new IllegalStateException("a field can only have a single default value");
-                
-                if(field instanceof Field.Number) {
-                    if(field.getClass().getSimpleName().endsWith("32"))
-                        field.defaultValue = Integer.valueOf($NUMINT.text);
-                    else if(field.getClass().getSimpleName().endsWith("64"))
-                        field.defaultValue = Long.valueOf($NUMINT.text);
-                    else if(field instanceof Field.Float)
-                        field.defaultValue = Float.valueOf($NUMINT.text);
-                    else if(field instanceof Field.Double) 
-                        field.defaultValue = Double.valueOf($NUMINT.text);
-                    else
-                        throw new IllegalStateException("Invalid numeric default value for the field: " + field.getClass().getSimpleName() + " " + field.name);
-                }
-                else
-                    throw new IllegalStateException("Invalid numeric default value for the field: " + field.getClass().getSimpleName() + " " + field.name);
-            }
-            
-            field.putExtraOption($key.text, Integer.valueOf($NUMINT.text));
-        }
-    |   NUMDOUBLE {
-            if("default".equals($key.text)) {
-                if(field.defaultValue!=null || field.modifier == Field.Modifier.REPEATED)
-                    throw new IllegalStateException("a field can only have a single default value");
-
-                if(field instanceof Field.Float)
-                    field.defaultValue = Float.valueOf($NUMDOUBLE.text);
-                else if(field instanceof Field.Double) 
-                    field.defaultValue = Double.valueOf($NUMDOUBLE.text);
-                else
-                    throw new IllegalStateException("Invalid numeric default value for the field: " + field.getClass().getSimpleName() + " " + field.name);
-            }
-            
-            field.putExtraOption($key.text, Double.valueOf($NUMDOUBLE.text));
-        }
-    |   HEX {
-            if("default".equals($key.text)) {
-                if(field.defaultValue!=null || field.modifier == Field.Modifier.REPEATED)
-                    throw new IllegalStateException("a field can only have a single default value");
-                
-                if(field instanceof Field.Number) {
-                    if(field instanceof Field.Int32)
-                        field.defaultValue = new Integer(TextFormat.parseInt32($HEX.text));
-                    else if(field instanceof Field.UInt32)
-                        field.defaultValue = new Integer(TextFormat.parseUInt32($HEX.text));
-                    else if(field instanceof Field.Int64)
-                        field.defaultValue = new Long(TextFormat.parseInt64($HEX.text));
-                    else if(field instanceof Field.UInt64)
-                        field.defaultValue = new Long(TextFormat.parseUInt64($HEX.text));
-                    else if(field instanceof Field.Float)
-                        field.defaultValue = new Float(Long.decode($HEX.text).floatValue());
-                    else if(field instanceof Field.Double) 
-                        field.defaultValue = new Double(Long.decode($HEX.text).doubleValue());
-                }
-                else if(field instanceof Field.Bytes) {
-                    field.defaultValue = getBytesFromHexString($HEX.text);
-                }
-                else
-                    throw new IllegalStateException("Invalid numeric default value for the field: " + field.getClass().getSimpleName() + " " + field.name);
-                
-            }
-            
-            field.putExtraOption($key.text, $HEX.text);
-        }
-    |   OCTAL {
-            if("default".equals($key.text)) {
-                if(field.defaultValue!=null || field.modifier == Field.Modifier.REPEATED)
-                    throw new IllegalStateException("a field can only have a single default value");
-                
-                if(field instanceof Field.Number) {
-                    if(field instanceof Field.Int32)
-                        field.defaultValue = new Integer(TextFormat.parseInt32($OCTAL.text));
-                    else if(field instanceof Field.UInt32)
-                        field.defaultValue = new Integer(TextFormat.parseUInt32($OCTAL.text));
-                    else if(field instanceof Field.Int64)
-                        field.defaultValue = new Long(TextFormat.parseInt64($OCTAL.text));
-                    else if(field instanceof Field.UInt64)
-                        field.defaultValue = new Long(TextFormat.parseUInt64($OCTAL.text));
-                    else if(field instanceof Field.Float)
-                        field.defaultValue = new Float(Long.decode($OCTAL.text).floatValue());
-                    else if(field instanceof Field.Double) 
-                        field.defaultValue = new Double(Long.decode($OCTAL.text).doubleValue());
-                }
-                else
-                    throw new IllegalStateException("Invalid numeric default value for the field: " + field.getClass().getSimpleName() + " " + field.name);
-            }
-            
-            field.putExtraOption($key.text, $OCTAL.text);
-        }
-    |   TRUE {
-            if("default".equals($key.text)) {
-                if(field.defaultValue!=null || field.modifier == Field.Modifier.REPEATED)
-                    throw new IllegalStateException("a field can only have a single default value");
-                
-                if(field instanceof Field.Bool)
-                    field.defaultValue = Boolean.TRUE;
-                else
-                    throw new IllegalStateException("invalid boolean default value for the non-boolean field: " + field.getClass().getSimpleName() + " " + field.name);
-            }
-            
-            field.putExtraOption($key.text, Boolean.TRUE);
-        }    
-    |   FALSE {
-            if("default".equals($key.text)) {
-                if(field.defaultValue!=null || field.modifier == Field.Modifier.REPEATED)
-                    throw new IllegalStateException("a field can only have a single default value");
-                
-                if(field instanceof Field.Bool)
-                    field.defaultValue = Boolean.FALSE;
-                else
-                    throw new IllegalStateException("invalid boolean default value for the non-boolean field: " + field.getClass().getSimpleName() + " " + field.name);
-            }
-            
-            field.putExtraOption($key.text, Boolean.FALSE);
-        }
-    |   val=ID {
-            boolean refOption = false;
-            if("default".equals($key.text)) {
-                if(field.defaultValue!=null || field.modifier == Field.Modifier.REPEATED)
-                    throw new IllegalStateException("a field can only have a single default value");
-                
-                String refName = $val.text;
-                if(field instanceof Field.Reference)
-                    field.defaultValue = refName;
-                else if(field instanceof Field.Float) {
-                    if("inf".equals(refName)) {
-                        field.defaultValue = Float.POSITIVE_INFINITY;
-                        field.defaultValueConstant = "Float.POSITIVE_INFINITY";
-                    }
-                    else if("nan".equals(refName)) {
-                        field.defaultValue = Float.NaN;
-                        field.defaultValueConstant = "Float.NaN";
-                    }
-                    else
-                        throw new IllegalStateException("Invalid float default value for the field: " + field.getClass().getSimpleName() + " " + field.name);
-                }
-                else if(field instanceof Field.Double) {
-                    if("inf".equals(refName)) {
-                        field.defaultValue = Double.POSITIVE_INFINITY;
-                        field.defaultValueConstant = "Double.POSITIVE_INFINITY";
-                    }
-                    else if("nan".equals(refName)) {
-                        field.defaultValue = Double.NaN;
-                        field.defaultValueConstant = "Double.NaN";
-                    }
-                    else
-                        throw new IllegalStateException("Invalid double default value for the field: " + field.getClass().getSimpleName() + " " + field.name);
-                }   
-                else {
-                    refOption = true;
-                    //throw new IllegalStateException("invalid field value '" + refName + "' for the field: " + field.getClass().getSimpleName() + " " + field.name);
-                }
-            }
-            else {
-                refOption = true;
-            }
-            
-            if(refOption)
-                field.putStandardOption($key.text, $val.text);
-            else
-                field.putExtraOption($key.text, $val.text);
-        }
-    |   FULL_ID {
-            field.putStandardOption($key.text, $FULL_ID.text);
-        }
-    |   EXP {
-            if("default".equals($key.text)) {
-                if(field.defaultValue!=null || field.modifier == Field.Modifier.REPEATED)
-                    throw new IllegalStateException("a field can only have a single default value");
-                
-                if(field instanceof Field.Float)
-                    field.defaultValue = Float.valueOf($EXP.text);
-                else if(field instanceof Field.Double) 
-                    field.defaultValue = Double.valueOf($EXP.text);
-                else
-                    throw new IllegalStateException("Invalid float default value for the field: " + field.getClass().getSimpleName() + " " + field.name);
-            }
-            
-            field.putExtraOption($key.text, $EXP.text);
-        }
-    |   signed_constant[proto, message, field, $key.text] {
-            field.putExtraOption($key.text, $signed_constant.text);
-        }
-        )
-    ;
-    
-signed_constant [Proto proto, HasFields message, Field field, String key]
-    :   MINUS ID {
-            if("default".equals(key)) {
-                if(field.defaultValue!=null || field.modifier == Field.Modifier.REPEATED)
-                    throw new IllegalStateException("a field can only have a single default value");
-                
-                String refName = $ID.text;
-                if(field instanceof Field.Float) {
-                    if("inf".equals(refName)) {
-                        field.defaultValue = Float.NEGATIVE_INFINITY;
-                        field.defaultValueConstant = "Float.NEGATIVE_INFINITY";
-                    }
-                    else
-                        throw new IllegalStateException("Invalid float default value for the field: " + field.getClass().getSimpleName() + " " + field.name);
-                }
-                else if(field instanceof Field.Double) {
-                    if("inf".equals(refName)) {
-                        field.defaultValue = Double.NEGATIVE_INFINITY;
-                        field.defaultValueConstant = "Double.NEGATIVE_INFINITY";
-                    }
-                    else
-                        throw new IllegalStateException("Invalid double default value for the field: " + field.getClass().getSimpleName() + " " + field.name);
-                }   
-                else
-                    throw new IllegalStateException("invalid field value '" + refName + "' for the field: " + field.getClass().getSimpleName() + " " + field.name);
-            }
-        }
-    ;
-    
-enum_block [Proto proto, Message message]
-@init {
-    EnumGroup enumGroup = null;
-}
-    :   ENUM ID { 
-            enumGroup = new EnumGroup($ID.text); 
-            if(message==null)
-                proto.addEnumGroup(enumGroup);
-            else
-                message.addNestedEnumGroup(enumGroup);
-            
-            proto.addAnnotationsTo(enumGroup);
-        } 
-        LEFTCURLY (enum_body[proto, message, enumGroup])* RIGHTCURLY {
-            if(!proto.annotations.isEmpty())
-                throw new IllegalStateException("Misplaced annotations: " + proto.annotations);
-        } (SEMICOLON?)!
-    ;
-    
-enum_body [Proto proto, Message message, EnumGroup enumGroup]
-    :   enum_field[proto, message, enumGroup]
-    |   annotation_entry[proto]
-    |   option_entry[proto, enumGroup]
-    ;
-
-enum_field [Proto proto, Message message, EnumGroup enumGroup]
-    :   ID ASSIGN NUMINT SEMICOLON! {
-            EnumGroup.Value v = new EnumGroup.Value($ID.text, Integer.parseInt($NUMINT.text));
-            enumGroup.add(v);
-            proto.addAnnotationsTo(v);
-        }
-    ;
-    
-service_block [Proto proto]
-@init {
-    Service service = null;
-}
-    :   SERVICE ID { 
-            service = new Service($ID.text, proto); 
-            proto.addAnnotationsTo(service);
-        } LEFTCURLY
-        (service_body[proto, service])+ RIGHTCURLY (SEMICOLON?)! {
-            if(service.rpcMethods.isEmpty())
-                throw new IllegalStateException("Empty Service block: " + service.getName());
-                
-            if(!proto.annotations.isEmpty())
-                throw new IllegalStateException("Misplaced annotations: " + proto.annotations);
-        }
-    ;
-    
-service_body [Proto proto, Service service]
-    :   rpc_block[proto, service]
-    |   annotation_entry[proto]
-    |   option_entry[proto, service]
-    ;
-    
-rpc_block [Proto proto, Service service]
-@init {
-    String argName = null, argPackage = null, retName = null, retPackage = null;
-    Service.RpcMethod rm = null;
-}
-    :   RPC n=ID LEFTPAREN (ap=FULL_ID {  
-            String argFull = $ap.text;
-            int lastDot = argFull.lastIndexOf('.');
-            argPackage = argFull.substring(0, lastDot); 
-            argName = argFull.substring(lastDot+1);
-        } | a=(VOID|ID) { argName = $a.text; }) RIGHTPAREN 
-        RETURNS LEFTPAREN (rp=FULL_ID {  
-            String retFull = $rp.text;
-            int lastDot = retFull.lastIndexOf('.');
-            retPackage = retFull.substring(0, lastDot); 
-            retName = retFull.substring(lastDot+1);
-        } | r=(VOID|ID) { retName = $r.text; }) RIGHTPAREN {
-            rm = service.addRpcMethod($n.text, argName, argPackage, retName, retPackage);
-            proto.addAnnotationsTo(rm);
-        } rpc_body_block[proto, rm]? SEMICOLON!
-    ;
-    
-rpc_body_block [Proto proto, Service.RpcMethod rm]
-    :   LEFTCURLY option_entry[proto, rm]* RIGHTCURLY {
-            if(!proto.annotations.isEmpty())
-                throw new IllegalStateException("Misplaced annotations: " + proto.annotations);
-        }
-    ;
-    
-extend_block [Proto proto, Message parent]
-@init {
-    Extension extension = null;
-}
-    :   EXTEND (
-        FULL_ID {
-            String fullType = $FULL_ID.text;
-            int lastDot = fullType.lastIndexOf('.');
-            String packageName = fullType.substring(0, lastDot); 
-            String type = fullType.substring(lastDot+1);
-            extension = new Extension(proto, parent, packageName, type);
-        } | ID { extension = new Extension(proto, parent, null, $ID.text); } ) {
-            if(parent==null)
-                proto.addExtension(extension);
-            else
-                parent.addNestedExtension(extension);
-                
-            proto.addAnnotationsTo(extension);
-        }
-        LEFTCURLY (extend_body[proto, extension])* RIGHTCURLY {
-            if(!proto.annotations.isEmpty())
-                throw new IllegalStateException("Misplaced annotations: " + proto.annotations);
-                
-        } (SEMICOLON?)!
-    ;
-    
-extend_body [Proto proto, Extension extension]
-    :   message_field[proto, extension]
-    |   annotation_entry[proto]
-    ;
-    
-ignore_block
-    :   LEFTCURLY ignore_block_body* RIGHTCURLY
-    ;
-    
-ignore_block_body
-    :   (LEFTCURLY)=> ignore_block
-    |   ~RIGHTCURLY
-    ;
-    

http://git-wip-us.apache.org/repos/asf/incubator-drill/blob/a593d908/sandbox/prototype/common/src/main/java/com/google/protobuf/WireFormatProxy.java
----------------------------------------------------------------------
diff --git a/sandbox/prototype/common/src/main/java/com/google/protobuf/WireFormatProxy.java b/sandbox/prototype/common/src/main/java/com/google/protobuf/WireFormatProxy.java
deleted file mode 100644
index f560e9f..0000000
--- a/sandbox/prototype/common/src/main/java/com/google/protobuf/WireFormatProxy.java
+++ /dev/null
@@ -1,10 +0,0 @@
-package com.google.protobuf;
-
-public class WireFormatProxy {
-
-  WireFormatProxy(){};
-  
-  public static int getFieldType(int tag){
-    return WireFormat.getTagWireType(tag);
-  }
-}