Details

    • Type: Sub-task
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 0.11.0
    • Component/s: Catalog
    • Labels:
      None

      Description

      The main objective is to improve Schema class to support nested struct support. This issues involves in-memory structure and protobuf (de)serialization structure.

      1. TAJO-1329_2.patch
        48 kB
        Hyunsik Choi
      2. TAJO-1329_3.patch
        50 kB
        Hyunsik Choi
      3. TAJO-1329_4.patch
        50 kB
        Hyunsik Choi
      4. TAJO-1329_5.patch
        58 kB
        Hyunsik Choi
      5. TAJO-1329_6.patch
        68 kB
        Hyunsik Choi
      6. TAJO-1329.patch
        46 kB
        Hyunsik Choi

        Activity

        Hide
        githubbot ASF GitHub Bot added a comment -

        GitHub user hyunsik opened a pull request:

        https://github.com/apache/tajo/pull/389

        TAJO-1329: Improve Schema class to support nested struct support.

        You can merge this pull request into a Git repository by running:

        $ git pull https://github.com/hyunsik/tajo TAJO-1329

        Alternatively you can review and apply these changes as the patch at:

        https://github.com/apache/tajo/pull/389.patch

        To close this pull request, make a commit to your master/trunk branch
        with (at least) the following in the commit message:

        This closes #389


        commit ea6aeb38075fb3684ec33dacdf6d7769ef6c7e5f
        Author: Hyunsik Choi <hyunsik@apache.org>
        Date: 2015-02-21T01:56:06Z

        TAJO-1353: CREATE TABLE should support the nested record definition.

        commit e3ad19f461739d5cc20b7d0b0cfac0f7f16ee2e5
        Author: Hyunsik Choi <hyunsik@apache.org>
        Date: 2015-02-21T02:27:06Z

        Changed the type name 'struct' to 'record'.

        commit bb39a913b8ac8230eb97d65858cf93f95ffd68fc
        Author: Hyunsik Choi <hyunsik@apache.org>
        Date: 2015-02-21T07:47:33Z

        Introduced TypeDesc which contains DataType and NestedSchema.

        commit a21c110c6a48f129d9c56c8680db5eea593d9076
        Author: Hyunsik Choi <hyunsik@apache.org>
        Date: 2015-02-22T23:48:15Z

        Introduced nested record to schema almostly.

        commit 1c6b21d5647d5b9e62ff7287df46fe1bd8048661
        Author: Hyunsik Choi <hyunsik@apache.org>
        Date: 2015-02-27T05:15:13Z

        Merge branch 'master' of https://git-wip-us.apache.org/repos/asf/tajo into TAJO-1329

        Conflicts:
        tajo-algebra/src/main/java/org/apache/tajo/algebra/ColumnDefinition.java
        tajo-algebra/src/main/java/org/apache/tajo/algebra/DataTypeExpr.java

        commit 1c8d2585c1a13f16fd20acc5076b9fb1f734c91c
        Author: Hyunsik Choi <hyunsik@apache.org>
        Date: 2015-02-27T12:10:05Z

        TAJO-1329: Improve Schema class to support nested struct support.


        Show
        githubbot ASF GitHub Bot added a comment - GitHub user hyunsik opened a pull request: https://github.com/apache/tajo/pull/389 TAJO-1329 : Improve Schema class to support nested struct support. You can merge this pull request into a Git repository by running: $ git pull https://github.com/hyunsik/tajo TAJO-1329 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/tajo/pull/389.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #389 commit ea6aeb38075fb3684ec33dacdf6d7769ef6c7e5f Author: Hyunsik Choi <hyunsik@apache.org> Date: 2015-02-21T01:56:06Z TAJO-1353 : CREATE TABLE should support the nested record definition. commit e3ad19f461739d5cc20b7d0b0cfac0f7f16ee2e5 Author: Hyunsik Choi <hyunsik@apache.org> Date: 2015-02-21T02:27:06Z Changed the type name 'struct' to 'record'. commit bb39a913b8ac8230eb97d65858cf93f95ffd68fc Author: Hyunsik Choi <hyunsik@apache.org> Date: 2015-02-21T07:47:33Z Introduced TypeDesc which contains DataType and NestedSchema. commit a21c110c6a48f129d9c56c8680db5eea593d9076 Author: Hyunsik Choi <hyunsik@apache.org> Date: 2015-02-22T23:48:15Z Introduced nested record to schema almostly. commit 1c6b21d5647d5b9e62ff7287df46fe1bd8048661 Author: Hyunsik Choi <hyunsik@apache.org> Date: 2015-02-27T05:15:13Z Merge branch 'master' of https://git-wip-us.apache.org/repos/asf/tajo into TAJO-1329 Conflicts: tajo-algebra/src/main/java/org/apache/tajo/algebra/ColumnDefinition.java tajo-algebra/src/main/java/org/apache/tajo/algebra/DataTypeExpr.java commit 1c8d2585c1a13f16fd20acc5076b9fb1f734c91c Author: Hyunsik Choi <hyunsik@apache.org> Date: 2015-02-27T12:10:05Z TAJO-1329 : Improve Schema class to support nested struct support.
        Hide
        tajoqa Tajo QA added a comment -

        -1 overall. Here are the results of testing the latest attachment
        http://issues.apache.org/jira/secure/attachment/12701342/TAJO-1329.patch
        against master revision release-0.9.0-rc0-178-gd769d78.

        +1 @author. The patch does not contain any @author tags.

        +1 tests included. The patch appears to include 4 new or modified test files.

        +1 javac. The applied patch does not increase the total number of javac compiler warnings.

        +1 javadoc. The applied patch does not increase the total number of javadoc warnings.

        +1 checkstyle. The patch generated 0 code style errors.

        -1 findbugs. The patch appears to introduce 215 new Findbugs (version 2.0.3) warnings.

        -1 release audit. The applied patch generated 126 release audit warnings.

        +1 core tests. The patch passed unit tests in tajo-algebra tajo-catalog/tajo-catalog-common tajo-catalog/tajo-catalog-server tajo-common tajo-core tajo-plan.

        Test results: https://builds.apache.org/job/PreCommit-TAJO-Build/588//testReport/
        Release audit warnings: https://builds.apache.org/job/PreCommit-TAJO-Build/588//artifact/incubator-tajo/patchprocess/patchReleaseAuditProblems.txt
        Findbugs warnings: https://builds.apache.org/job/PreCommit-TAJO-Build/588//artifact/incubator-tajo/patchprocess/newPatchFindbugsWarningstajo-core.html
        Findbugs warnings: https://builds.apache.org/job/PreCommit-TAJO-Build/588//artifact/incubator-tajo/patchprocess/newPatchFindbugsWarningstajo-plan.html
        Findbugs warnings: https://builds.apache.org/job/PreCommit-TAJO-Build/588//artifact/incubator-tajo/patchprocess/newPatchFindbugsWarningstajo-common.html
        Console output: https://builds.apache.org/job/PreCommit-TAJO-Build/588//console

        This message is automatically generated.

        Show
        tajoqa Tajo QA added a comment - -1 overall. Here are the results of testing the latest attachment http://issues.apache.org/jira/secure/attachment/12701342/TAJO-1329.patch against master revision release-0.9.0-rc0-178-gd769d78. +1 @author. The patch does not contain any @author tags. +1 tests included. The patch appears to include 4 new or modified test files. +1 javac. The applied patch does not increase the total number of javac compiler warnings. +1 javadoc. The applied patch does not increase the total number of javadoc warnings. +1 checkstyle. The patch generated 0 code style errors. -1 findbugs. The patch appears to introduce 215 new Findbugs (version 2.0.3) warnings. -1 release audit. The applied patch generated 126 release audit warnings. +1 core tests. The patch passed unit tests in tajo-algebra tajo-catalog/tajo-catalog-common tajo-catalog/tajo-catalog-server tajo-common tajo-core tajo-plan. Test results: https://builds.apache.org/job/PreCommit-TAJO-Build/588//testReport/ Release audit warnings: https://builds.apache.org/job/PreCommit-TAJO-Build/588//artifact/incubator-tajo/patchprocess/patchReleaseAuditProblems.txt Findbugs warnings: https://builds.apache.org/job/PreCommit-TAJO-Build/588//artifact/incubator-tajo/patchprocess/newPatchFindbugsWarningstajo-core.html Findbugs warnings: https://builds.apache.org/job/PreCommit-TAJO-Build/588//artifact/incubator-tajo/patchprocess/newPatchFindbugsWarningstajo-plan.html Findbugs warnings: https://builds.apache.org/job/PreCommit-TAJO-Build/588//artifact/incubator-tajo/patchprocess/newPatchFindbugsWarningstajo-common.html Console output: https://builds.apache.org/job/PreCommit-TAJO-Build/588//console This message is automatically generated.
        Hide
        githubbot ASF GitHub Bot added a comment -

        Github user hyunsik commented on the pull request:

        https://github.com/apache/tajo/pull/389#issuecomment-76460574

        I've updated the patch as follows:

        • Change protobuf fields.
        • Add more comments.
        • Clean up some methods.
        Show
        githubbot ASF GitHub Bot added a comment - Github user hyunsik commented on the pull request: https://github.com/apache/tajo/pull/389#issuecomment-76460574 I've updated the patch as follows: Change protobuf fields. Add more comments. Clean up some methods.
        Hide
        tajoqa Tajo QA added a comment -

        -1 overall. Here are the results of testing the latest attachment
        http://issues.apache.org/jira/secure/attachment/12701510/TAJO-1329_2.patch
        against master revision release-0.9.0-rc0-178-gd769d78.

        +1 @author. The patch does not contain any @author tags.

        +1 tests included. The patch appears to include 4 new or modified test files.

        +1 javac. The applied patch does not increase the total number of javac compiler warnings.

        +1 javadoc. The applied patch does not increase the total number of javadoc warnings.

        +1 checkstyle. The patch generated 0 code style errors.

        -1 findbugs. The patch appears to introduce 215 new Findbugs (version 2.0.3) warnings.

        -1 release audit. The applied patch generated 986 release audit warnings.

        +1 core tests. The patch passed unit tests in tajo-algebra tajo-catalog/tajo-catalog-common tajo-catalog/tajo-catalog-server tajo-common tajo-core tajo-plan.

        Test results: https://builds.apache.org/job/PreCommit-TAJO-Build/589//testReport/
        Release audit warnings: https://builds.apache.org/job/PreCommit-TAJO-Build/589//artifact/incubator-tajo/patchprocess/patchReleaseAuditProblems.txt
        Findbugs warnings: https://builds.apache.org/job/PreCommit-TAJO-Build/589//artifact/incubator-tajo/patchprocess/newPatchFindbugsWarningstajo-common.html
        Findbugs warnings: https://builds.apache.org/job/PreCommit-TAJO-Build/589//artifact/incubator-tajo/patchprocess/newPatchFindbugsWarningstajo-core.html
        Findbugs warnings: https://builds.apache.org/job/PreCommit-TAJO-Build/589//artifact/incubator-tajo/patchprocess/newPatchFindbugsWarningstajo-plan.html
        Console output: https://builds.apache.org/job/PreCommit-TAJO-Build/589//console

        This message is automatically generated.

        Show
        tajoqa Tajo QA added a comment - -1 overall. Here are the results of testing the latest attachment http://issues.apache.org/jira/secure/attachment/12701510/TAJO-1329_2.patch against master revision release-0.9.0-rc0-178-gd769d78. +1 @author. The patch does not contain any @author tags. +1 tests included. The patch appears to include 4 new or modified test files. +1 javac. The applied patch does not increase the total number of javac compiler warnings. +1 javadoc. The applied patch does not increase the total number of javadoc warnings. +1 checkstyle. The patch generated 0 code style errors. -1 findbugs. The patch appears to introduce 215 new Findbugs (version 2.0.3) warnings. -1 release audit. The applied patch generated 986 release audit warnings. +1 core tests. The patch passed unit tests in tajo-algebra tajo-catalog/tajo-catalog-common tajo-catalog/tajo-catalog-server tajo-common tajo-core tajo-plan. Test results: https://builds.apache.org/job/PreCommit-TAJO-Build/589//testReport/ Release audit warnings: https://builds.apache.org/job/PreCommit-TAJO-Build/589//artifact/incubator-tajo/patchprocess/patchReleaseAuditProblems.txt Findbugs warnings: https://builds.apache.org/job/PreCommit-TAJO-Build/589//artifact/incubator-tajo/patchprocess/newPatchFindbugsWarningstajo-common.html Findbugs warnings: https://builds.apache.org/job/PreCommit-TAJO-Build/589//artifact/incubator-tajo/patchprocess/newPatchFindbugsWarningstajo-core.html Findbugs warnings: https://builds.apache.org/job/PreCommit-TAJO-Build/589//artifact/incubator-tajo/patchprocess/newPatchFindbugsWarningstajo-plan.html Console output: https://builds.apache.org/job/PreCommit-TAJO-Build/589//console This message is automatically generated.
        Hide
        githubbot ASF GitHub Bot added a comment -

        Github user jihoonson commented on the pull request:

        https://github.com/apache/tajo/pull/389#issuecomment-76596134

        @hyunsik, thanks for your work.
        With this patch, it seems that users can execute ```CREATE TABLE``` statements with nested schemas.
        So, I simply submitted an example query used in a junit test, but found the following error:
        ```
        default> create table nested_table (f1 int, nested_field record (f2 int4, f3 int8), f3 text);
        ERROR: Cannot create table "default.nested_table".
        ```
        The error message is follows:
        ```
        2015-03-01 22:04:22,658 ERROR org.apache.tajo.catalog.CatalogServer: java.sql.BatchUpdateException: The statement was aborted because it would have caused a duplicate key value in a unique or primary key constraint or unique index identified by 'COLUMNS_PK' defined on 'COLUMNS'.
        org.apache.tajo.catalog.exception.CatalogException: java.sql.BatchUpdateException: The statement was aborted because it would have caused a duplicate key value in a unique or primary key constraint or unique index identified by 'COLUMNS_PK' defined on 'COLUMNS'.
        at org.apache.tajo.catalog.store.AbstractDBStore.createTable(AbstractDBStore.java:892)
        at org.apache.tajo.catalog.CatalogServer$CatalogProtocolHandler.createTable(CatalogServer.java:604)
        at org.apache.tajo.catalog.AbstractCatalogClient$23.call(AbstractCatalogClient.java:481)
        at org.apache.tajo.catalog.AbstractCatalogClient$23.call(AbstractCatalogClient.java:478)
        at org.apache.tajo.rpc.ServerCallable.withRetries(ServerCallable.java:94)
        at org.apache.tajo.catalog.AbstractCatalogClient.createTable(AbstractCatalogClient.java:478)
        at org.apache.tajo.master.exec.DDLExecutor.createTable(DDLExecutor.java:248)
        at org.apache.tajo.master.exec.DDLExecutor.createTable(DDLExecutor.java:208)
        at org.apache.tajo.master.exec.DDLExecutor.execute(DDLExecutor.java:88)
        at org.apache.tajo.master.exec.QueryExecutor.execute(QueryExecutor.java:98)
        at org.apache.tajo.master.GlobalEngine.executeQuery(GlobalEngine.java:163)
        at org.apache.tajo.master.TajoMasterClientService$TajoMasterClientProtocolServiceHandler.submitQuery(TajoMasterClientService.java:287)
        at org.apache.tajo.ipc.TajoMasterClientProtocol$TajoMasterClientProtocolService$2.callBlockingMethod(TajoMasterClientProtocol.java:543)
        at org.apache.tajo.rpc.BlockingRpcServer$ServerHandler.messageReceived(BlockingRpcServer.java:103)
        at org.jboss.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.java:70)
        at org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:564)
        at org.jboss.netty.channel.DefaultChannelPipeline$DefaultChannelHandlerContext.sendUpstream(DefaultChannelPipeline.java:791)
        at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:296)
        at org.jboss.netty.handler.codec.oneone.OneToOneDecoder.handleUpstream(OneToOneDecoder.java:70)
        at org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:564)
        at org.jboss.netty.channel.DefaultChannelPipeline$DefaultChannelHandlerContext.sendUpstream(DefaultChannelPipeline.java:791)
        at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:296)
        at org.jboss.netty.handler.codec.frame.FrameDecoder.unfoldAndFireMessageReceived(FrameDecoder.java:462)
        at org.jboss.netty.handler.codec.frame.FrameDecoder.callDecode(FrameDecoder.java:443)
        at org.jboss.netty.handler.codec.frame.FrameDecoder.messageReceived(FrameDecoder.java:303)
        at org.jboss.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.java:70)
        at org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:564)
        at org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:559)
        at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:268)
        at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:255)
        at org.jboss.netty.channel.socket.nio.NioWorker.read(NioWorker.java:88)
        at org.jboss.netty.channel.socket.nio.AbstractNioWorker.process(AbstractNioWorker.java:109)
        at org.jboss.netty.channel.socket.nio.AbstractNioSelector.run(AbstractNioSelector.java:312)
        at org.jboss.netty.channel.socket.nio.AbstractNioWorker.run(AbstractNioWorker.java:90)
        at org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:178)
        at org.jboss.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:108)
        at org.jboss.netty.util.internal.DeadLockProofWorker$1.run(DeadLockProofWorker.java:42)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        at java.lang.Thread.run(Thread.java:745)
        Caused by: java.sql.BatchUpdateException: The statement was aborted because it would have caused a duplicate key value in a unique or primary key constraint or unique index identified by 'COLUMNS_PK' defined on 'COLUMNS'.
        at org.apache.derby.impl.jdbc.EmbedStatement.executeBatch(Unknown Source)
        at org.apache.tajo.catalog.store.AbstractDBStore.createTable(AbstractDBStore.java:828)
        ... 39 more
        Caused by: java.sql.SQLIntegrityConstraintViolationException: The statement was aborted because it would have caused a duplicate key value in a unique or primary key constraint or unique index identified by 'COLUMNS_PK' defined on 'COLUMNS'.
        at org.apache.derby.impl.jdbc.SQLExceptionFactory40.getSQLException(Unknown Source)
        at org.apache.derby.impl.jdbc.Util.generateCsSQLException(Unknown Source)
        at org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException(Unknown Source)
        at org.apache.derby.impl.jdbc.TransactionResourceImpl.handleException(Unknown Source)
        at org.apache.derby.impl.jdbc.EmbedConnection.handleException(Unknown Source)
        at org.apache.derby.impl.jdbc.ConnectionChild.handleException(Unknown Source)
        at org.apache.derby.impl.jdbc.EmbedStatement.executeStatement(Unknown Source)
        at org.apache.derby.impl.jdbc.EmbedPreparedStatement.executeBatchElement(Unknown Source)
        ... 41 more
        Caused by: java.sql.SQLException: The statement was aborted because it would have caused a duplicate key value in a unique or primary key constraint or unique index identified by 'COLUMNS_PK' defined on 'COLUMNS'.
        at org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown Source)
        at org.apache.derby.impl.jdbc.SQLExceptionFactory40.wrapArgsForTransportAcrossDRDA(Unknown Source)
        ... 49 more
        Caused by: ERROR 23505: The statement was aborted because it would have caused a duplicate key value in a unique or primary key constraint or unique index identified by 'COLUMNS_PK' defined on 'COLUMNS'.
        at org.apache.derby.iapi.error.StandardException.newException(Unknown Source)
        at org.apache.derby.impl.sql.execute.IndexChanger.insertAndCheckDups(Unknown Source)
        at org.apache.derby.impl.sql.execute.IndexChanger.doInsert(Unknown Source)
        at org.apache.derby.impl.sql.execute.IndexChanger.insert(Unknown Source)
        at org.apache.derby.impl.sql.execute.IndexSetChanger.insert(Unknown Source)
        at org.apache.derby.impl.sql.execute.RowChangerImpl.insertRow(Unknown Source)
        at org.apache.derby.impl.sql.execute.InsertResultSet.normalInsertCore(Unknown Source)
        at org.apache.derby.impl.sql.execute.InsertResultSet.open(Unknown Source)
        at org.apache.derby.impl.sql.GenericPreparedStatement.executeStmt(Unknown Source)
        at org.apache.derby.impl.sql.GenericPreparedStatement.execute(Unknown Source)
        ... 43 more
        ```

        Show
        githubbot ASF GitHub Bot added a comment - Github user jihoonson commented on the pull request: https://github.com/apache/tajo/pull/389#issuecomment-76596134 @hyunsik, thanks for your work. With this patch, it seems that users can execute ```CREATE TABLE``` statements with nested schemas. So, I simply submitted an example query used in a junit test, but found the following error: ``` default> create table nested_table (f1 int, nested_field record (f2 int4, f3 int8), f3 text); ERROR: Cannot create table "default.nested_table". ``` The error message is follows: ``` 2015-03-01 22:04:22,658 ERROR org.apache.tajo.catalog.CatalogServer: java.sql.BatchUpdateException: The statement was aborted because it would have caused a duplicate key value in a unique or primary key constraint or unique index identified by 'COLUMNS_PK' defined on 'COLUMNS'. org.apache.tajo.catalog.exception.CatalogException: java.sql.BatchUpdateException: The statement was aborted because it would have caused a duplicate key value in a unique or primary key constraint or unique index identified by 'COLUMNS_PK' defined on 'COLUMNS'. at org.apache.tajo.catalog.store.AbstractDBStore.createTable(AbstractDBStore.java:892) at org.apache.tajo.catalog.CatalogServer$CatalogProtocolHandler.createTable(CatalogServer.java:604) at org.apache.tajo.catalog.AbstractCatalogClient$23.call(AbstractCatalogClient.java:481) at org.apache.tajo.catalog.AbstractCatalogClient$23.call(AbstractCatalogClient.java:478) at org.apache.tajo.rpc.ServerCallable.withRetries(ServerCallable.java:94) at org.apache.tajo.catalog.AbstractCatalogClient.createTable(AbstractCatalogClient.java:478) at org.apache.tajo.master.exec.DDLExecutor.createTable(DDLExecutor.java:248) at org.apache.tajo.master.exec.DDLExecutor.createTable(DDLExecutor.java:208) at org.apache.tajo.master.exec.DDLExecutor.execute(DDLExecutor.java:88) at org.apache.tajo.master.exec.QueryExecutor.execute(QueryExecutor.java:98) at org.apache.tajo.master.GlobalEngine.executeQuery(GlobalEngine.java:163) at org.apache.tajo.master.TajoMasterClientService$TajoMasterClientProtocolServiceHandler.submitQuery(TajoMasterClientService.java:287) at org.apache.tajo.ipc.TajoMasterClientProtocol$TajoMasterClientProtocolService$2.callBlockingMethod(TajoMasterClientProtocol.java:543) at org.apache.tajo.rpc.BlockingRpcServer$ServerHandler.messageReceived(BlockingRpcServer.java:103) at org.jboss.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.java:70) at org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:564) at org.jboss.netty.channel.DefaultChannelPipeline$DefaultChannelHandlerContext.sendUpstream(DefaultChannelPipeline.java:791) at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:296) at org.jboss.netty.handler.codec.oneone.OneToOneDecoder.handleUpstream(OneToOneDecoder.java:70) at org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:564) at org.jboss.netty.channel.DefaultChannelPipeline$DefaultChannelHandlerContext.sendUpstream(DefaultChannelPipeline.java:791) at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:296) at org.jboss.netty.handler.codec.frame.FrameDecoder.unfoldAndFireMessageReceived(FrameDecoder.java:462) at org.jboss.netty.handler.codec.frame.FrameDecoder.callDecode(FrameDecoder.java:443) at org.jboss.netty.handler.codec.frame.FrameDecoder.messageReceived(FrameDecoder.java:303) at org.jboss.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.java:70) at org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:564) at org.jboss.netty.channel.DefaultChannelPipeline.sendUpstream(DefaultChannelPipeline.java:559) at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:268) at org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:255) at org.jboss.netty.channel.socket.nio.NioWorker.read(NioWorker.java:88) at org.jboss.netty.channel.socket.nio.AbstractNioWorker.process(AbstractNioWorker.java:109) at org.jboss.netty.channel.socket.nio.AbstractNioSelector.run(AbstractNioSelector.java:312) at org.jboss.netty.channel.socket.nio.AbstractNioWorker.run(AbstractNioWorker.java:90) at org.jboss.netty.channel.socket.nio.NioWorker.run(NioWorker.java:178) at org.jboss.netty.util.ThreadRenamingRunnable.run(ThreadRenamingRunnable.java:108) at org.jboss.netty.util.internal.DeadLockProofWorker$1.run(DeadLockProofWorker.java:42) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745) Caused by: java.sql.BatchUpdateException: The statement was aborted because it would have caused a duplicate key value in a unique or primary key constraint or unique index identified by 'COLUMNS_PK' defined on 'COLUMNS'. at org.apache.derby.impl.jdbc.EmbedStatement.executeBatch(Unknown Source) at org.apache.tajo.catalog.store.AbstractDBStore.createTable(AbstractDBStore.java:828) ... 39 more Caused by: java.sql.SQLIntegrityConstraintViolationException: The statement was aborted because it would have caused a duplicate key value in a unique or primary key constraint or unique index identified by 'COLUMNS_PK' defined on 'COLUMNS'. at org.apache.derby.impl.jdbc.SQLExceptionFactory40.getSQLException(Unknown Source) at org.apache.derby.impl.jdbc.Util.generateCsSQLException(Unknown Source) at org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException(Unknown Source) at org.apache.derby.impl.jdbc.TransactionResourceImpl.handleException(Unknown Source) at org.apache.derby.impl.jdbc.EmbedConnection.handleException(Unknown Source) at org.apache.derby.impl.jdbc.ConnectionChild.handleException(Unknown Source) at org.apache.derby.impl.jdbc.EmbedStatement.executeStatement(Unknown Source) at org.apache.derby.impl.jdbc.EmbedPreparedStatement.executeBatchElement(Unknown Source) ... 41 more Caused by: java.sql.SQLException: The statement was aborted because it would have caused a duplicate key value in a unique or primary key constraint or unique index identified by 'COLUMNS_PK' defined on 'COLUMNS'. at org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown Source) at org.apache.derby.impl.jdbc.SQLExceptionFactory40.wrapArgsForTransportAcrossDRDA(Unknown Source) ... 49 more Caused by: ERROR 23505: The statement was aborted because it would have caused a duplicate key value in a unique or primary key constraint or unique index identified by 'COLUMNS_PK' defined on 'COLUMNS'. at org.apache.derby.iapi.error.StandardException.newException(Unknown Source) at org.apache.derby.impl.sql.execute.IndexChanger.insertAndCheckDups(Unknown Source) at org.apache.derby.impl.sql.execute.IndexChanger.doInsert(Unknown Source) at org.apache.derby.impl.sql.execute.IndexChanger.insert(Unknown Source) at org.apache.derby.impl.sql.execute.IndexSetChanger.insert(Unknown Source) at org.apache.derby.impl.sql.execute.RowChangerImpl.insertRow(Unknown Source) at org.apache.derby.impl.sql.execute.InsertResultSet.normalInsertCore(Unknown Source) at org.apache.derby.impl.sql.execute.InsertResultSet.open(Unknown Source) at org.apache.derby.impl.sql.GenericPreparedStatement.executeStmt(Unknown Source) at org.apache.derby.impl.sql.GenericPreparedStatement.execute(Unknown Source) ... 43 more ```
        Hide
        hyunsik Hyunsik Choi added a comment -

        Since TravisCI is too slow, I attached the patch here too.

        Show
        hyunsik Hyunsik Choi added a comment - Since TravisCI is too slow, I attached the patch here too.
        Hide
        tajoqa Tajo QA added a comment -

        -1 overall. Here are the results of testing the latest attachment
        http://issues.apache.org/jira/secure/attachment/12702981/TAJO-1329_3.patch
        against master revision release-0.9.0-rc0-185-g1617fa9.

        +1 @author. The patch does not contain any @author tags.

        +1 tests included. The patch appears to include 4 new or modified test files.

        +1 javac. The applied patch does not increase the total number of javac compiler warnings.

        +1 javadoc. The applied patch does not increase the total number of javadoc warnings.

        +1 checkstyle. The patch generated 0 code style errors.

        -1 findbugs. The patch appears to cause Findbugs (version 2.0.3) to fail.

        +1 release audit. The applied patch does not increase the total number of release audit warnings.

        +1 core tests. The patch passed unit tests in tajo-algebra tajo-catalog/tajo-catalog-common tajo-catalog/tajo-catalog-server tajo-common tajo-core tajo-plan.

        Test results: https://builds.apache.org/job/PreCommit-TAJO-Build/596//testReport/
        Findbugs results: https://builds.apache.org/job/PreCommit-TAJO-Build/596//findbugsResult
        Console output: https://builds.apache.org/job/PreCommit-TAJO-Build/596//console

        This message is automatically generated.

        Show
        tajoqa Tajo QA added a comment - -1 overall. Here are the results of testing the latest attachment http://issues.apache.org/jira/secure/attachment/12702981/TAJO-1329_3.patch against master revision release-0.9.0-rc0-185-g1617fa9. +1 @author. The patch does not contain any @author tags. +1 tests included. The patch appears to include 4 new or modified test files. +1 javac. The applied patch does not increase the total number of javac compiler warnings. +1 javadoc. The applied patch does not increase the total number of javadoc warnings. +1 checkstyle. The patch generated 0 code style errors. -1 findbugs. The patch appears to cause Findbugs (version 2.0.3) to fail. +1 release audit. The applied patch does not increase the total number of release audit warnings. +1 core tests. The patch passed unit tests in tajo-algebra tajo-catalog/tajo-catalog-common tajo-catalog/tajo-catalog-server tajo-common tajo-core tajo-plan. Test results: https://builds.apache.org/job/PreCommit-TAJO-Build/596//testReport/ Findbugs results: https://builds.apache.org/job/PreCommit-TAJO-Build/596//findbugsResult Console output: https://builds.apache.org/job/PreCommit-TAJO-Build/596//console This message is automatically generated.
        Hide
        githubbot ASF GitHub Bot added a comment -

        Github user jihoonson commented on the pull request:

        https://github.com/apache/tajo/pull/389#issuecomment-77532031

        @hyunsik with the latest patch, the ```create table``` statement works well.
        However, I couldn't see the detailed information of nested columns. Please see the following example.
        ```
        default> create table nested_table (f1 int, nested_field record (f2 int4, f3 int8), f3 text);
        OK
        default> \d
        nested_table
        default> \d nested_table

        table name: default.nested_table
        table path: hdfs://localhost:7020/tajo/warehouse/default/nested_table
        store type: CSV
        number of rows: 0
        volume: 0 B
        Options:
        'text.delimiter'='|'

        schema:
        f1 INT4
        nested_field RECORD
        f3 TEXT
        ```
        The ```nested_field``` column is presented as just one record, and details are veiled. It would be much greater if you improve it.

        Show
        githubbot ASF GitHub Bot added a comment - Github user jihoonson commented on the pull request: https://github.com/apache/tajo/pull/389#issuecomment-77532031 @hyunsik with the latest patch, the ```create table``` statement works well. However, I couldn't see the detailed information of nested columns. Please see the following example. ``` default> create table nested_table (f1 int, nested_field record (f2 int4, f3 int8), f3 text); OK default> \d nested_table default> \d nested_table table name: default.nested_table table path: hdfs://localhost:7020/tajo/warehouse/default/nested_table store type: CSV number of rows: 0 volume: 0 B Options: 'text.delimiter'='|' schema: f1 INT4 nested_field RECORD f3 TEXT ``` The ```nested_field``` column is presented as just one record, and details are veiled. It would be much greater if you improve it.
        Hide
        tajoqa Tajo QA added a comment -

        -1 overall. Here are the results of testing the latest attachment
        http://issues.apache.org/jira/secure/attachment/12703001/TAJO-1329_4.patch
        against master revision release-0.9.0-rc0-187-gf1aeb73.

        +1 @author. The patch does not contain any @author tags.

        +1 tests included. The patch appears to include 4 new or modified test files.

        +1 javac. The applied patch does not increase the total number of javac compiler warnings.

        +1 javadoc. The applied patch does not increase the total number of javadoc warnings.

        +1 checkstyle. The patch generated 0 code style errors.

        -1 findbugs. The patch appears to cause Findbugs (version 2.0.3) to fail.

        +1 release audit. The applied patch does not increase the total number of release audit warnings.

        +1 core tests. The patch passed unit tests in tajo-algebra tajo-catalog/tajo-catalog-common tajo-catalog/tajo-catalog-server tajo-common tajo-core tajo-plan.

        Test results: https://builds.apache.org/job/PreCommit-TAJO-Build/601//testReport/
        Findbugs results: https://builds.apache.org/job/PreCommit-TAJO-Build/601//findbugsResult
        Console output: https://builds.apache.org/job/PreCommit-TAJO-Build/601//console

        This message is automatically generated.

        Show
        tajoqa Tajo QA added a comment - -1 overall. Here are the results of testing the latest attachment http://issues.apache.org/jira/secure/attachment/12703001/TAJO-1329_4.patch against master revision release-0.9.0-rc0-187-gf1aeb73. +1 @author. The patch does not contain any @author tags. +1 tests included. The patch appears to include 4 new or modified test files. +1 javac. The applied patch does not increase the total number of javac compiler warnings. +1 javadoc. The applied patch does not increase the total number of javadoc warnings. +1 checkstyle. The patch generated 0 code style errors. -1 findbugs. The patch appears to cause Findbugs (version 2.0.3) to fail. +1 release audit. The applied patch does not increase the total number of release audit warnings. +1 core tests. The patch passed unit tests in tajo-algebra tajo-catalog/tajo-catalog-common tajo-catalog/tajo-catalog-server tajo-common tajo-core tajo-plan. Test results: https://builds.apache.org/job/PreCommit-TAJO-Build/601//testReport/ Findbugs results: https://builds.apache.org/job/PreCommit-TAJO-Build/601//findbugsResult Console output: https://builds.apache.org/job/PreCommit-TAJO-Build/601//console This message is automatically generated.
        Hide
        tajoqa Tajo QA added a comment -

        -1 overall. Here are the results of testing the latest attachment
        http://issues.apache.org/jira/secure/attachment/12703001/TAJO-1329_4.patch
        against master revision release-0.9.0-rc0-187-gf1aeb73.

        +1 @author. The patch does not contain any @author tags.

        +1 tests included. The patch appears to include 4 new or modified test files.

        +1 javac. The applied patch does not increase the total number of javac compiler warnings.

        +1 javadoc. The applied patch does not increase the total number of javadoc warnings.

        +1 checkstyle. The patch generated 0 code style errors.

        -1 findbugs. The patch appears to introduce 57 new Findbugs (version 2.0.3) warnings.

        +1 release audit. The applied patch does not increase the total number of release audit warnings.

        +1 core tests. The patch passed unit tests in tajo-algebra tajo-catalog/tajo-catalog-common tajo-catalog/tajo-catalog-server tajo-common tajo-core tajo-plan.

        Test results: https://builds.apache.org/job/PreCommit-TAJO-Build/602//testReport/
        Findbugs warnings: https://builds.apache.org/job/PreCommit-TAJO-Build/602//artifact/incubator-tajo/patchprocess/newPatchFindbugsWarningstajo-plan.html
        Findbugs warnings: https://builds.apache.org/job/PreCommit-TAJO-Build/602//artifact/incubator-tajo/patchprocess/newPatchFindbugsWarningstajo-core.html
        Findbugs warnings: https://builds.apache.org/job/PreCommit-TAJO-Build/602//artifact/incubator-tajo/patchprocess/newPatchFindbugsWarningstajo-common.html
        Console output: https://builds.apache.org/job/PreCommit-TAJO-Build/602//console

        This message is automatically generated.

        Show
        tajoqa Tajo QA added a comment - -1 overall. Here are the results of testing the latest attachment http://issues.apache.org/jira/secure/attachment/12703001/TAJO-1329_4.patch against master revision release-0.9.0-rc0-187-gf1aeb73. +1 @author. The patch does not contain any @author tags. +1 tests included. The patch appears to include 4 new or modified test files. +1 javac. The applied patch does not increase the total number of javac compiler warnings. +1 javadoc. The applied patch does not increase the total number of javadoc warnings. +1 checkstyle. The patch generated 0 code style errors. -1 findbugs. The patch appears to introduce 57 new Findbugs (version 2.0.3) warnings. +1 release audit. The applied patch does not increase the total number of release audit warnings. +1 core tests. The patch passed unit tests in tajo-algebra tajo-catalog/tajo-catalog-common tajo-catalog/tajo-catalog-server tajo-common tajo-core tajo-plan. Test results: https://builds.apache.org/job/PreCommit-TAJO-Build/602//testReport/ Findbugs warnings: https://builds.apache.org/job/PreCommit-TAJO-Build/602//artifact/incubator-tajo/patchprocess/newPatchFindbugsWarningstajo-plan.html Findbugs warnings: https://builds.apache.org/job/PreCommit-TAJO-Build/602//artifact/incubator-tajo/patchprocess/newPatchFindbugsWarningstajo-core.html Findbugs warnings: https://builds.apache.org/job/PreCommit-TAJO-Build/602//artifact/incubator-tajo/patchprocess/newPatchFindbugsWarningstajo-common.html Console output: https://builds.apache.org/job/PreCommit-TAJO-Build/602//console This message is automatically generated.
        Hide
        hyunsik Hyunsik Choi added a comment -

        Thank Jihoon for your comment.

        I found two missed things: tajo-dump support and schema description in tsql. I'll fix them soon.

        Show
        hyunsik Hyunsik Choi added a comment - Thank Jihoon for your comment. I found two missed things: tajo-dump support and schema description in tsql. I'll fix them soon.
        Hide
        hyunsik Hyunsik Choi added a comment -

        This patch additionally includes the following changes:

        • Improved tajo-dump to dump nested schema
        • enabled \d command in tsql to show nested schema correctly.
        Show
        hyunsik Hyunsik Choi added a comment - This patch additionally includes the following changes: Improved tajo-dump to dump nested schema enabled \d command in tsql to show nested schema correctly.
        Hide
        githubbot ASF GitHub Bot added a comment -

        Github user hyunsik commented on the pull request:

        https://github.com/apache/tajo/pull/389#issuecomment-78235603

        I rebased it. Also, this patch additionally includes the following changes:

        • Improved tajo-dump to dump nested schema
        • enabled \d command in tsql to show nested schema correctly.
        Show
        githubbot ASF GitHub Bot added a comment - Github user hyunsik commented on the pull request: https://github.com/apache/tajo/pull/389#issuecomment-78235603 I rebased it. Also, this patch additionally includes the following changes: Improved tajo-dump to dump nested schema enabled \d command in tsql to show nested schema correctly.
        Hide
        tajoqa Tajo QA added a comment -

        -1 overall. Here are the results of testing the latest attachment
        http://issues.apache.org/jira/secure/attachment/12703872/TAJO-1329_5.patch
        against master revision release-0.9.0-rc0-196-g513a8c3.

        +1 @author. The patch does not contain any @author tags.

        +1 tests included. The patch appears to include 8 new or modified test files.

        +1 javac. The applied patch does not increase the total number of javac compiler warnings.

        +1 javadoc. The applied patch does not increase the total number of javadoc warnings.

        +1 checkstyle. The patch generated 0 code style errors.

        -1 findbugs. The patch appears to introduce 62 new Findbugs (version 2.0.3) warnings.

        +1 release audit. The applied patch does not increase the total number of release audit warnings.

        +1 core tests. The patch passed unit tests in tajo-algebra tajo-catalog/tajo-catalog-common tajo-catalog/tajo-catalog-server tajo-cli tajo-common tajo-core tajo-plan.

        Test results: https://builds.apache.org/job/PreCommit-TAJO-Build/609//testReport/
        Findbugs warnings: https://builds.apache.org/job/PreCommit-TAJO-Build/609//artifact/incubator-tajo/patchprocess/newPatchFindbugsWarningstajo-plan.html
        Findbugs warnings: https://builds.apache.org/job/PreCommit-TAJO-Build/609//artifact/incubator-tajo/patchprocess/newPatchFindbugsWarningstajo-core.html
        Findbugs warnings: https://builds.apache.org/job/PreCommit-TAJO-Build/609//artifact/incubator-tajo/patchprocess/newPatchFindbugsWarningstajo-cli.html
        Findbugs warnings: https://builds.apache.org/job/PreCommit-TAJO-Build/609//artifact/incubator-tajo/patchprocess/newPatchFindbugsWarningstajo-common.html
        Console output: https://builds.apache.org/job/PreCommit-TAJO-Build/609//console

        This message is automatically generated.

        Show
        tajoqa Tajo QA added a comment - -1 overall. Here are the results of testing the latest attachment http://issues.apache.org/jira/secure/attachment/12703872/TAJO-1329_5.patch against master revision release-0.9.0-rc0-196-g513a8c3. +1 @author. The patch does not contain any @author tags. +1 tests included. The patch appears to include 8 new or modified test files. +1 javac. The applied patch does not increase the total number of javac compiler warnings. +1 javadoc. The applied patch does not increase the total number of javadoc warnings. +1 checkstyle. The patch generated 0 code style errors. -1 findbugs. The patch appears to introduce 62 new Findbugs (version 2.0.3) warnings. +1 release audit. The applied patch does not increase the total number of release audit warnings. +1 core tests. The patch passed unit tests in tajo-algebra tajo-catalog/tajo-catalog-common tajo-catalog/tajo-catalog-server tajo-cli tajo-common tajo-core tajo-plan. Test results: https://builds.apache.org/job/PreCommit-TAJO-Build/609//testReport/ Findbugs warnings: https://builds.apache.org/job/PreCommit-TAJO-Build/609//artifact/incubator-tajo/patchprocess/newPatchFindbugsWarningstajo-plan.html Findbugs warnings: https://builds.apache.org/job/PreCommit-TAJO-Build/609//artifact/incubator-tajo/patchprocess/newPatchFindbugsWarningstajo-core.html Findbugs warnings: https://builds.apache.org/job/PreCommit-TAJO-Build/609//artifact/incubator-tajo/patchprocess/newPatchFindbugsWarningstajo-cli.html Findbugs warnings: https://builds.apache.org/job/PreCommit-TAJO-Build/609//artifact/incubator-tajo/patchprocess/newPatchFindbugsWarningstajo-common.html Console output: https://builds.apache.org/job/PreCommit-TAJO-Build/609//console This message is automatically generated.
        Hide
        hyunsik Hyunsik Choi added a comment -

        I'll submit the updated patch to fix findbug warnings.

        Show
        hyunsik Hyunsik Choi added a comment - I'll submit the updated patch to fix findbug warnings.
        Hide
        hyunsik Hyunsik Choi added a comment -

        Jihoon Son,

        I investigated the findbug warnings. But, there is no newly introduced findbug warnings. They already exist in our source code, and most of them come from plan module. I've just created the issue for them at TAJO-1392 and TAJO-1393. Please keep going your review.

        Show
        hyunsik Hyunsik Choi added a comment - Jihoon Son , I investigated the findbug warnings. But, there is no newly introduced findbug warnings. They already exist in our source code, and most of them come from plan module. I've just created the issue for them at TAJO-1392 and TAJO-1393 . Please keep going your review.
        Hide
        jihoonson Jihoon Son added a comment -

        Thanks.
        I'll review soon.

        Show
        jihoonson Jihoon Son added a comment - Thanks. I'll review soon.
        Hide
        githubbot ASF GitHub Bot added a comment -

        Github user jihoonson commented on the pull request:

        https://github.com/apache/tajo/pull/389#issuecomment-78464388

        @hyunsik sorry to say, but would you please check this error again?
        ```
        default> create table nested_table2 (f1 int, nf1 record (f1 int4, f3 double), nf2 record (f1 int4, nf1 record (f1 int4, f2 text), nf2 record (f1 int4, f2 text), f2 double), f2 text);
        OK
        default> \d
        nested_table
        nested_table2
        default> \d nested_table2
        ERROR: org.apache.tajo.rpc.TajoServiceException: java.lang.NullPointerException
        com.google.protobuf.ServiceException: org.apache.tajo.rpc.TajoServiceException: java.lang.NullPointerException
        at org.apache.tajo.rpc.ServerCallable.withRetries(ServerCallable.java:104)
        at org.apache.tajo.client.CatalogAdminClientImpl.getTableDesc(CatalogAdminClientImpl.java:216)
        at org.apache.tajo.client.TajoClientImpl.getTableDesc(TajoClientImpl.java:217)
        at org.apache.tajo.cli.tsql.commands.DescTableCommand.invoke(DescTableCommand.java:50)
        at org.apache.tajo.cli.tsql.TajoCli.executeMetaCommand(TajoCli.java:471)
        at org.apache.tajo.cli.tsql.TajoCli.executeParsedResults(TajoCli.java:445)
        at org.apache.tajo.cli.tsql.TajoCli.runShell(TajoCli.java:419)
        at org.apache.tajo.cli.tsql.TajoCli.main(TajoCli.java:694)
        Caused by: org.apache.tajo.rpc.TajoServiceException: java.lang.NullPointerException
        at org.apache.tajo.rpc.BlockingRpcClient.makeTajoServiceException(BlockingRpcClient.java:188)
        at org.apache.tajo.rpc.BlockingRpcClient.access$500(BlockingRpcClient.java:42)
        at org.apache.tajo.rpc.BlockingRpcClient$ClientChannelInboundHandler.channelRead(BlockingRpcClient.java:211)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:308)
        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:294)
        at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:308)
        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:294)
        at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:182)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:308)
        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:294)
        at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:846)
        at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:130)
        at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:511)
        at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:468)
        at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:382)
        at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:354)
        at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:116)
        at java.lang.Thread.run(Thread.java:745)
        Caused by: com.google.protobuf.ServiceException: com.google.protobuf.ServiceException: java.lang.NullPointerException
        at org.apache.tajo.master.TajoMasterClientService$TajoMasterClientProtocolServiceHandler.getTableDesc(TajoMasterClientService.java:816)
        at org.apache.tajo.ipc.TajoMasterClientProtocol$TajoMasterClientProtocolService$2.callBlockingMethod(TajoMasterClientProtocol.java:585)
        at org.apache.tajo.rpc.BlockingRpcServer$ServerHandler.channelRead(BlockingRpcServer.java:113)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:308)
        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:294)
        at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:308)
        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:294)
        at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:182)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:308)
        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:294)
        at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:846)
        at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:130)
        at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:511)
        at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:468)
        at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:382)
        at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:354)
        at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:116)
        at java.lang.Thread.run(Thread.java:745)
        Caused by: java.lang.NullPointerException
        at org.apache.tajo.master.TajoMasterClientService$TajoMasterClientProtocolServiceHandler.getTableDesc(TajoMasterClientService.java:805)
        ... 18 more

        ... 17 more
        ```
        The main reason looks duplicated names. Here is the master log.
        ```
        2015-03-12 20:33:05,241 INFO org.apache.tajo.master.exec.DDLExecutor: Table default.nested_table2 is created (0)
        2015-03-12 20:33:08,601 ERROR org.apache.tajo.catalog.Schema: Already exists column nf1
        2015-03-12 20:33:08,601 ERROR org.apache.tajo.catalog.CatalogServer: org.apache.tajo.catalog.exception.AlreadyExistsFieldException: Already Exists Field: nf1
        2015-03-12 20:33:08,602 ERROR org.apache.tajo.catalog.AbstractCatalogClient: com.google.protobuf.ServiceException: org.apache.tajo.catalog.exception.AlreadyExistsFieldException: Already Exists Field: nf1
        com.google.protobuf.ServiceException: com.google.protobuf.ServiceException: org.apache.tajo.catalog.exception.AlreadyExistsFieldException: Already Exists Field: nf1
        at org.apache.tajo.rpc.ServerCallable.withRetries(ServerCallable.java:104)
        at org.apache.tajo.catalog.AbstractCatalogClient.getTableDesc(AbstractCatalogClient.java:280)
        at org.apache.tajo.master.TajoMasterClientService$TajoMasterClientProtocolServiceHandler.getTableDesc(TajoMasterClientService.java:805)
        at org.apache.tajo.ipc.TajoMasterClientProtocol$TajoMasterClientProtocolService$2.callBlockingMethod(TajoMasterClientProtocol.java:585)
        at org.apache.tajo.rpc.BlockingRpcServer$ServerHandler.channelRead(BlockingRpcServer.java:113)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:308)
        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:294)
        at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:308)
        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:294)
        at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:182)
        at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:308)
        at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:294)
        at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:846)
        at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:130)
        at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:511)
        at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:468)
        at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:382)
        at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:354)
        at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:116)
        at java.lang.Thread.run(Thread.java:745)
        Caused by: com.google.protobuf.ServiceException: org.apache.tajo.catalog.exception.AlreadyExistsFieldException: Already Exists Field: nf1
        at org.apache.tajo.catalog.CatalogServer$CatalogProtocolHandler.getTableDesc(CatalogServer.java:537)
        at org.apache.tajo.catalog.AbstractCatalogClient$13.call(AbstractCatalogClient.java:287)
        at org.apache.tajo.catalog.AbstractCatalogClient$13.call(AbstractCatalogClient.java:280)
        at org.apache.tajo.rpc.ServerCallable.withRetries(ServerCallable.java:94)
        ... 20 more
        Caused by: org.apache.tajo.catalog.exception.AlreadyExistsFieldException: Already Exists Field: nf1
        at org.apache.tajo.catalog.Schema.addColumn(Schema.java:315)
        at org.apache.tajo.catalog.Schema.addColumn(Schema.java:344)
        at org.apache.tajo.catalog.Schema.<init>(Schema.java:118)
        at org.apache.tajo.catalog.Schema.deserializeColumn(Schema.java:92)
        at org.apache.tajo.catalog.Schema.<init>(Schema.java:62)
        at org.apache.tajo.catalog.CatalogUtil.getQualfiedSchema(CatalogUtil.java:329)
        at org.apache.tajo.catalog.store.AbstractDBStore.getTable(AbstractDBStore.java:1421)
        at org.apache.tajo.catalog.CatalogServer$CatalogProtocolHandler.getTableDesc(CatalogServer.java:528)
        ... 23 more
        ```

        Show
        githubbot ASF GitHub Bot added a comment - Github user jihoonson commented on the pull request: https://github.com/apache/tajo/pull/389#issuecomment-78464388 @hyunsik sorry to say, but would you please check this error again? ``` default> create table nested_table2 (f1 int, nf1 record (f1 int4, f3 double), nf2 record (f1 int4, nf1 record (f1 int4, f2 text), nf2 record (f1 int4, f2 text), f2 double), f2 text); OK default> \d nested_table nested_table2 default> \d nested_table2 ERROR: org.apache.tajo.rpc.TajoServiceException: java.lang.NullPointerException com.google.protobuf.ServiceException: org.apache.tajo.rpc.TajoServiceException: java.lang.NullPointerException at org.apache.tajo.rpc.ServerCallable.withRetries(ServerCallable.java:104) at org.apache.tajo.client.CatalogAdminClientImpl.getTableDesc(CatalogAdminClientImpl.java:216) at org.apache.tajo.client.TajoClientImpl.getTableDesc(TajoClientImpl.java:217) at org.apache.tajo.cli.tsql.commands.DescTableCommand.invoke(DescTableCommand.java:50) at org.apache.tajo.cli.tsql.TajoCli.executeMetaCommand(TajoCli.java:471) at org.apache.tajo.cli.tsql.TajoCli.executeParsedResults(TajoCli.java:445) at org.apache.tajo.cli.tsql.TajoCli.runShell(TajoCli.java:419) at org.apache.tajo.cli.tsql.TajoCli.main(TajoCli.java:694) Caused by: org.apache.tajo.rpc.TajoServiceException: java.lang.NullPointerException at org.apache.tajo.rpc.BlockingRpcClient.makeTajoServiceException(BlockingRpcClient.java:188) at org.apache.tajo.rpc.BlockingRpcClient.access$500(BlockingRpcClient.java:42) at org.apache.tajo.rpc.BlockingRpcClient$ClientChannelInboundHandler.channelRead(BlockingRpcClient.java:211) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:308) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:294) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:308) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:294) at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:182) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:308) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:294) at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:846) at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:130) at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:511) at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:468) at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:382) at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:354) at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:116) at java.lang.Thread.run(Thread.java:745) Caused by: com.google.protobuf.ServiceException: com.google.protobuf.ServiceException: java.lang.NullPointerException at org.apache.tajo.master.TajoMasterClientService$TajoMasterClientProtocolServiceHandler.getTableDesc(TajoMasterClientService.java:816) at org.apache.tajo.ipc.TajoMasterClientProtocol$TajoMasterClientProtocolService$2.callBlockingMethod(TajoMasterClientProtocol.java:585) at org.apache.tajo.rpc.BlockingRpcServer$ServerHandler.channelRead(BlockingRpcServer.java:113) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:308) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:294) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:308) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:294) at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:182) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:308) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:294) at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:846) at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:130) at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:511) at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:468) at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:382) at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:354) at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:116) at java.lang.Thread.run(Thread.java:745) Caused by: java.lang.NullPointerException at org.apache.tajo.master.TajoMasterClientService$TajoMasterClientProtocolServiceHandler.getTableDesc(TajoMasterClientService.java:805) ... 18 more ... 17 more ``` The main reason looks duplicated names. Here is the master log. ``` 2015-03-12 20:33:05,241 INFO org.apache.tajo.master.exec.DDLExecutor: Table default.nested_table2 is created (0) 2015-03-12 20:33:08,601 ERROR org.apache.tajo.catalog.Schema: Already exists column nf1 2015-03-12 20:33:08,601 ERROR org.apache.tajo.catalog.CatalogServer: org.apache.tajo.catalog.exception.AlreadyExistsFieldException: Already Exists Field: nf1 2015-03-12 20:33:08,602 ERROR org.apache.tajo.catalog.AbstractCatalogClient: com.google.protobuf.ServiceException: org.apache.tajo.catalog.exception.AlreadyExistsFieldException: Already Exists Field: nf1 com.google.protobuf.ServiceException: com.google.protobuf.ServiceException: org.apache.tajo.catalog.exception.AlreadyExistsFieldException: Already Exists Field: nf1 at org.apache.tajo.rpc.ServerCallable.withRetries(ServerCallable.java:104) at org.apache.tajo.catalog.AbstractCatalogClient.getTableDesc(AbstractCatalogClient.java:280) at org.apache.tajo.master.TajoMasterClientService$TajoMasterClientProtocolServiceHandler.getTableDesc(TajoMasterClientService.java:805) at org.apache.tajo.ipc.TajoMasterClientProtocol$TajoMasterClientProtocolService$2.callBlockingMethod(TajoMasterClientProtocol.java:585) at org.apache.tajo.rpc.BlockingRpcServer$ServerHandler.channelRead(BlockingRpcServer.java:113) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:308) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:294) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:308) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:294) at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:182) at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:308) at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:294) at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:846) at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:130) at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:511) at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:468) at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:382) at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:354) at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:116) at java.lang.Thread.run(Thread.java:745) Caused by: com.google.protobuf.ServiceException: org.apache.tajo.catalog.exception.AlreadyExistsFieldException: Already Exists Field: nf1 at org.apache.tajo.catalog.CatalogServer$CatalogProtocolHandler.getTableDesc(CatalogServer.java:537) at org.apache.tajo.catalog.AbstractCatalogClient$13.call(AbstractCatalogClient.java:287) at org.apache.tajo.catalog.AbstractCatalogClient$13.call(AbstractCatalogClient.java:280) at org.apache.tajo.rpc.ServerCallable.withRetries(ServerCallable.java:94) ... 20 more Caused by: org.apache.tajo.catalog.exception.AlreadyExistsFieldException: Already Exists Field: nf1 at org.apache.tajo.catalog.Schema.addColumn(Schema.java:315) at org.apache.tajo.catalog.Schema.addColumn(Schema.java:344) at org.apache.tajo.catalog.Schema.<init>(Schema.java:118) at org.apache.tajo.catalog.Schema.deserializeColumn(Schema.java:92) at org.apache.tajo.catalog.Schema.<init>(Schema.java:62) at org.apache.tajo.catalog.CatalogUtil.getQualfiedSchema(CatalogUtil.java:329) at org.apache.tajo.catalog.store.AbstractDBStore.getTable(AbstractDBStore.java:1421) at org.apache.tajo.catalog.CatalogServer$CatalogProtocolHandler.getTableDesc(CatalogServer.java:528) ... 23 more ```
        Hide
        hyunsik Hyunsik Choi added a comment -

        This patch includes breaking change of catalog store. So, you need to upgrade the catalog store. I also updated catalog store version to prevent such errors.

        Show
        hyunsik Hyunsik Choi added a comment - This patch includes breaking change of catalog store. So, you need to upgrade the catalog store. I also updated catalog store version to prevent such errors.
        Hide
        tajoqa Tajo QA added a comment -

        -1 overall. Here are the results of testing the latest attachment
        http://issues.apache.org/jira/secure/attachment/12704316/TAJO-1329_6.patch
        against master revision release-0.9.0-rc0-199-g6defbda.

        +1 @author. The patch does not contain any @author tags.

        +1 tests included. The patch appears to include 10 new or modified test files.

        +1 javac. The applied patch does not increase the total number of javac compiler warnings.

        +1 javadoc. The applied patch does not increase the total number of javadoc warnings.

        +1 checkstyle. The patch generated 0 code style errors.

        -1 findbugs. The patch appears to introduce 63 new Findbugs (version 2.0.3) warnings.

        +1 release audit. The applied patch does not increase the total number of release audit warnings.

        +1 core tests. The patch passed unit tests in tajo-algebra tajo-catalog/tajo-catalog-common tajo-catalog/tajo-catalog-server tajo-cli tajo-common tajo-core tajo-plan.

        Test results: https://builds.apache.org/job/PreCommit-TAJO-Build/611//testReport/
        Findbugs warnings: https://builds.apache.org/job/PreCommit-TAJO-Build/611//artifact/incubator-tajo/patchprocess/newPatchFindbugsWarningstajo-plan.html
        Findbugs warnings: https://builds.apache.org/job/PreCommit-TAJO-Build/611//artifact/incubator-tajo/patchprocess/newPatchFindbugsWarningstajo-core.html
        Findbugs warnings: https://builds.apache.org/job/PreCommit-TAJO-Build/611//artifact/incubator-tajo/patchprocess/newPatchFindbugsWarningstajo-cli.html
        Findbugs warnings: https://builds.apache.org/job/PreCommit-TAJO-Build/611//artifact/incubator-tajo/patchprocess/newPatchFindbugsWarningstajo-common.html
        Console output: https://builds.apache.org/job/PreCommit-TAJO-Build/611//console

        This message is automatically generated.

        Show
        tajoqa Tajo QA added a comment - -1 overall. Here are the results of testing the latest attachment http://issues.apache.org/jira/secure/attachment/12704316/TAJO-1329_6.patch against master revision release-0.9.0-rc0-199-g6defbda. +1 @author. The patch does not contain any @author tags. +1 tests included. The patch appears to include 10 new or modified test files. +1 javac. The applied patch does not increase the total number of javac compiler warnings. +1 javadoc. The applied patch does not increase the total number of javadoc warnings. +1 checkstyle. The patch generated 0 code style errors. -1 findbugs. The patch appears to introduce 63 new Findbugs (version 2.0.3) warnings. +1 release audit. The applied patch does not increase the total number of release audit warnings. +1 core tests. The patch passed unit tests in tajo-algebra tajo-catalog/tajo-catalog-common tajo-catalog/tajo-catalog-server tajo-cli tajo-common tajo-core tajo-plan. Test results: https://builds.apache.org/job/PreCommit-TAJO-Build/611//testReport/ Findbugs warnings: https://builds.apache.org/job/PreCommit-TAJO-Build/611//artifact/incubator-tajo/patchprocess/newPatchFindbugsWarningstajo-plan.html Findbugs warnings: https://builds.apache.org/job/PreCommit-TAJO-Build/611//artifact/incubator-tajo/patchprocess/newPatchFindbugsWarningstajo-core.html Findbugs warnings: https://builds.apache.org/job/PreCommit-TAJO-Build/611//artifact/incubator-tajo/patchprocess/newPatchFindbugsWarningstajo-cli.html Findbugs warnings: https://builds.apache.org/job/PreCommit-TAJO-Build/611//artifact/incubator-tajo/patchprocess/newPatchFindbugsWarningstajo-common.html Console output: https://builds.apache.org/job/PreCommit-TAJO-Build/611//console This message is automatically generated.
        Hide
        jihoonson Jihoon Son added a comment -

        It seems that you fix the above bug.
        Here is my +1.
        Ship it!

        Show
        jihoonson Jihoon Son added a comment - It seems that you fix the above bug. Here is my +1. Ship it!
        Hide
        hyunsik Hyunsik Choi added a comment -

        Thank you for the review. I'll commit it shortly.

        Show
        hyunsik Hyunsik Choi added a comment - Thank you for the review. I'll commit it shortly.
        Hide
        githubbot ASF GitHub Bot added a comment -

        Github user asfgit closed the pull request at:

        https://github.com/apache/tajo/pull/389

        Show
        githubbot ASF GitHub Bot added a comment - Github user asfgit closed the pull request at: https://github.com/apache/tajo/pull/389
        Hide
        hyunsik Hyunsik Choi added a comment -

        I just committed to master branch.

        Show
        hyunsik Hyunsik Choi added a comment - I just committed to master branch.
        Hide
        hudson Hudson added a comment -

        FAILURE: Integrated in Tajo-master-CODEGEN-build #250 (See https://builds.apache.org/job/Tajo-master-CODEGEN-build/250/)
        TAJO-1329: Improve Schema class to support nested struct support. (hyunsik: rev f48d4bd04ec46b6678773209a3397555eb2ce24d)

        • tajo-catalog/tajo-catalog-server/src/main/resources/schemas/postgresql/postgresql.xml
        • tajo-catalog/tajo-catalog-common/src/test/java/org/apache/tajo/catalog/TestSchema.java
        • tajo-plan/src/main/java/org/apache/tajo/plan/ExprAnnotator.java
        • tajo-algebra/src/main/java/org/apache/tajo/algebra/DataTypeExpr.java
        • tajo-core/src/test/resources/results/TestSelectQuery/testExplainSelect.result
        • tajo-core/src/test/java/org/apache/tajo/cli/tools/TestTajoDump.java
        • tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/DDLBuilder.java
        • tajo-algebra/src/main/java/org/apache/tajo/algebra/ColumnDefinition.java
        • tajo-catalog/tajo-catalog-server/src/test/java/org/apache/tajo/catalog/TestCatalog.java
        • tajo-catalog/tajo-catalog-server/src/main/resources/schemas/mysql/columns.sql
        • tajo-core/pom.xml
        • tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/store/MariaDBStore.java
        • tajo-catalog/tajo-catalog-server/src/main/resources/schemas/mariadb/columns.sql
        • tajo-cli/src/main/java/org/apache/tajo/cli/tsql/commands/DescTableCommand.java
        • tajo-core/src/test/resources/queries/TestCreateTable/testNestedRecord1.sql
        • tajo-core/src/test/java/org/apache/tajo/engine/query/TestCreateTable.java
        • tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/dictionary/ColumnsTableDescriptor.java
        • tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/store/AbstractDBStore.java
        • tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/store/MySQLStore.java
        • tajo-common/src/main/proto/DataTypes.proto
        • tajo-catalog/tajo-catalog-server/src/main/resources/schemas/derby/derby.xml
        • tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/CatalogUtil.java
        • tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/store/PostgreSQLStore.java
        • tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/store/OracleStore.java
        • tajo-core/src/test/java/org/apache/tajo/cli/tsql/TestTajoCli.java
        • tajo-core/src/test/resources/results/TestTajoDump/testDump2.result
        • tajo-plan/src/main/java/org/apache/tajo/plan/TypeDeterminant.java
        • tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/TypeDesc.java
        • CHANGES
        • tajo-catalog/tajo-catalog-server/src/main/resources/schemas/oracle/oracle.xml
        • tajo-core/src/test/resources/results/TestTajoCli/testDescTableForNestedSchema.result
        • tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/SchemaUtil.java
        • tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/Schema.java
        • tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/Column.java
        • tajo-plan/src/main/java/org/apache/tajo/plan/LogicalPlanner.java
        • tajo-core/src/test/resources/queries/TestCreateTable/testNestedRecord2.sql
        Show
        hudson Hudson added a comment - FAILURE: Integrated in Tajo-master-CODEGEN-build #250 (See https://builds.apache.org/job/Tajo-master-CODEGEN-build/250/ ) TAJO-1329 : Improve Schema class to support nested struct support. (hyunsik: rev f48d4bd04ec46b6678773209a3397555eb2ce24d) tajo-catalog/tajo-catalog-server/src/main/resources/schemas/postgresql/postgresql.xml tajo-catalog/tajo-catalog-common/src/test/java/org/apache/tajo/catalog/TestSchema.java tajo-plan/src/main/java/org/apache/tajo/plan/ExprAnnotator.java tajo-algebra/src/main/java/org/apache/tajo/algebra/DataTypeExpr.java tajo-core/src/test/resources/results/TestSelectQuery/testExplainSelect.result tajo-core/src/test/java/org/apache/tajo/cli/tools/TestTajoDump.java tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/DDLBuilder.java tajo-algebra/src/main/java/org/apache/tajo/algebra/ColumnDefinition.java tajo-catalog/tajo-catalog-server/src/test/java/org/apache/tajo/catalog/TestCatalog.java tajo-catalog/tajo-catalog-server/src/main/resources/schemas/mysql/columns.sql tajo-core/pom.xml tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/store/MariaDBStore.java tajo-catalog/tajo-catalog-server/src/main/resources/schemas/mariadb/columns.sql tajo-cli/src/main/java/org/apache/tajo/cli/tsql/commands/DescTableCommand.java tajo-core/src/test/resources/queries/TestCreateTable/testNestedRecord1.sql tajo-core/src/test/java/org/apache/tajo/engine/query/TestCreateTable.java tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/dictionary/ColumnsTableDescriptor.java tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/store/AbstractDBStore.java tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/store/MySQLStore.java tajo-common/src/main/proto/DataTypes.proto tajo-catalog/tajo-catalog-server/src/main/resources/schemas/derby/derby.xml tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/CatalogUtil.java tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/store/PostgreSQLStore.java tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/store/OracleStore.java tajo-core/src/test/java/org/apache/tajo/cli/tsql/TestTajoCli.java tajo-core/src/test/resources/results/TestTajoDump/testDump2.result tajo-plan/src/main/java/org/apache/tajo/plan/TypeDeterminant.java tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/TypeDesc.java CHANGES tajo-catalog/tajo-catalog-server/src/main/resources/schemas/oracle/oracle.xml tajo-core/src/test/resources/results/TestTajoCli/testDescTableForNestedSchema.result tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/SchemaUtil.java tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/Schema.java tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/Column.java tajo-plan/src/main/java/org/apache/tajo/plan/LogicalPlanner.java tajo-core/src/test/resources/queries/TestCreateTable/testNestedRecord2.sql
        Hide
        hudson Hudson added a comment -

        SUCCESS: Integrated in Tajo-master-build #612 (See https://builds.apache.org/job/Tajo-master-build/612/)
        TAJO-1329: Improve Schema class to support nested struct support. (hyunsik: rev f48d4bd04ec46b6678773209a3397555eb2ce24d)

        • tajo-core/src/test/resources/queries/TestCreateTable/testNestedRecord1.sql
        • tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/Schema.java
        • tajo-common/src/main/proto/DataTypes.proto
        • tajo-core/pom.xml
        • tajo-plan/src/main/java/org/apache/tajo/plan/ExprAnnotator.java
        • tajo-core/src/test/java/org/apache/tajo/engine/query/TestCreateTable.java
        • tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/store/PostgreSQLStore.java
        • tajo-core/src/test/resources/results/TestSelectQuery/testExplainSelect.result
        • tajo-core/src/test/resources/queries/TestCreateTable/testNestedRecord2.sql
        • tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/store/OracleStore.java
        • tajo-cli/src/main/java/org/apache/tajo/cli/tsql/commands/DescTableCommand.java
        • tajo-algebra/src/main/java/org/apache/tajo/algebra/ColumnDefinition.java
        • tajo-core/src/test/java/org/apache/tajo/cli/tools/TestTajoDump.java
        • tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/store/MySQLStore.java
        • tajo-catalog/tajo-catalog-server/src/main/resources/schemas/mariadb/columns.sql
        • tajo-algebra/src/main/java/org/apache/tajo/algebra/DataTypeExpr.java
        • tajo-plan/src/main/java/org/apache/tajo/plan/LogicalPlanner.java
        • tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/CatalogUtil.java
        • tajo-catalog/tajo-catalog-server/src/main/resources/schemas/oracle/oracle.xml
        • tajo-core/src/test/java/org/apache/tajo/cli/tsql/TestTajoCli.java
        • CHANGES
        • tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/TypeDesc.java
        • tajo-catalog/tajo-catalog-server/src/main/resources/schemas/derby/derby.xml
        • tajo-catalog/tajo-catalog-server/src/test/java/org/apache/tajo/catalog/TestCatalog.java
        • tajo-core/src/test/resources/results/TestTajoCli/testDescTableForNestedSchema.result
        • tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/dictionary/ColumnsTableDescriptor.java
        • tajo-core/src/test/resources/results/TestTajoDump/testDump2.result
        • tajo-plan/src/main/java/org/apache/tajo/plan/TypeDeterminant.java
        • tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/store/AbstractDBStore.java
        • tajo-catalog/tajo-catalog-common/src/test/java/org/apache/tajo/catalog/TestSchema.java
        • tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/SchemaUtil.java
        • tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/Column.java
        • tajo-catalog/tajo-catalog-server/src/main/resources/schemas/mysql/columns.sql
        • tajo-catalog/tajo-catalog-server/src/main/resources/schemas/postgresql/postgresql.xml
        • tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/DDLBuilder.java
        • tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/store/MariaDBStore.java
        Show
        hudson Hudson added a comment - SUCCESS: Integrated in Tajo-master-build #612 (See https://builds.apache.org/job/Tajo-master-build/612/ ) TAJO-1329 : Improve Schema class to support nested struct support. (hyunsik: rev f48d4bd04ec46b6678773209a3397555eb2ce24d) tajo-core/src/test/resources/queries/TestCreateTable/testNestedRecord1.sql tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/Schema.java tajo-common/src/main/proto/DataTypes.proto tajo-core/pom.xml tajo-plan/src/main/java/org/apache/tajo/plan/ExprAnnotator.java tajo-core/src/test/java/org/apache/tajo/engine/query/TestCreateTable.java tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/store/PostgreSQLStore.java tajo-core/src/test/resources/results/TestSelectQuery/testExplainSelect.result tajo-core/src/test/resources/queries/TestCreateTable/testNestedRecord2.sql tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/store/OracleStore.java tajo-cli/src/main/java/org/apache/tajo/cli/tsql/commands/DescTableCommand.java tajo-algebra/src/main/java/org/apache/tajo/algebra/ColumnDefinition.java tajo-core/src/test/java/org/apache/tajo/cli/tools/TestTajoDump.java tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/store/MySQLStore.java tajo-catalog/tajo-catalog-server/src/main/resources/schemas/mariadb/columns.sql tajo-algebra/src/main/java/org/apache/tajo/algebra/DataTypeExpr.java tajo-plan/src/main/java/org/apache/tajo/plan/LogicalPlanner.java tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/CatalogUtil.java tajo-catalog/tajo-catalog-server/src/main/resources/schemas/oracle/oracle.xml tajo-core/src/test/java/org/apache/tajo/cli/tsql/TestTajoCli.java CHANGES tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/TypeDesc.java tajo-catalog/tajo-catalog-server/src/main/resources/schemas/derby/derby.xml tajo-catalog/tajo-catalog-server/src/test/java/org/apache/tajo/catalog/TestCatalog.java tajo-core/src/test/resources/results/TestTajoCli/testDescTableForNestedSchema.result tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/dictionary/ColumnsTableDescriptor.java tajo-core/src/test/resources/results/TestTajoDump/testDump2.result tajo-plan/src/main/java/org/apache/tajo/plan/TypeDeterminant.java tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/store/AbstractDBStore.java tajo-catalog/tajo-catalog-common/src/test/java/org/apache/tajo/catalog/TestSchema.java tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/SchemaUtil.java tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/Column.java tajo-catalog/tajo-catalog-server/src/main/resources/schemas/mysql/columns.sql tajo-catalog/tajo-catalog-server/src/main/resources/schemas/postgresql/postgresql.xml tajo-catalog/tajo-catalog-common/src/main/java/org/apache/tajo/catalog/DDLBuilder.java tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/store/MariaDBStore.java

          People

          • Assignee:
            hyunsik Hyunsik Choi
            Reporter:
            hyunsik Hyunsik Choi
          • Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development