Uploaded image for project: 'Tajo'
  1. Tajo
  2. TAJO-1140

Separate TajoClient into fine grained parts.

    Details

    • Type: Improvement
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 0.10.0
    • Component/s: Java Client
    • Labels:
      None

      Description

      TajoClient is a monolithic and concrete class including connection, catalog client, and query client.

      This patch separates TajoClient into three parts: connection, catalog client, query client. In addition, it separates catalog client and query client into interface and implementation. This separations will allow easily different client implementation (e.g., REST or Thrift) even through it requires more works.

        Activity

        Hide
        hudson Hudson added a comment -

        SUCCESS: Integrated in Tajo-master-CODEGEN-build #69 (See https://builds.apache.org/job/Tajo-master-CODEGEN-build/69/)
        TAJO-1140: Separate TajoClient into fine grained parts. (hyunsik: rev f80beaf64d33850ee79e8ae32b33a852f56712f0)

        • tajo-client/src/main/java/org/apache/tajo/client/TajoClient.java
        • tajo-jdbc/src/main/java/org/apache/tajo/jdbc/TajoDriver.java
        • tajo-core/src/test/java/org/apache/tajo/client/TestTajoClient.java
        • tajo-client/src/main/java/org/apache/tajo/client/TajoHAAdmin.java
        • tajo-jdbc/src/main/java/org/apache/tajo/jdbc/TajoPreparedStatement.java
        • tajo-core/src/main/java/org/apache/tajo/webapp/QueryExecutorServlet.java
        • tajo-client/src/main/java/org/apache/tajo/client/InvalidClientSessionException.java
        • tajo-client/src/main/java/org/apache/tajo/client/TajoClientUtil.java
        • tajo-core/src/main/java/org/apache/tajo/benchmark/BenchmarkSet.java
        • tajo-client/src/main/java/org/apache/tajo/client/SessionConnection.java
        • tajo-core/src/main/java/org/apache/tajo/master/GlobalEngine.java
        • tajo-core/src/test/java/org/apache/tajo/worker/TestHistory.java
        • tajo-jdbc/src/main/java/org/apache/tajo/jdbc/JdbcConnection.java
        • tajo-jdbc/src/main/java/org/apache/tajo/jdbc/TajoStatement.java
        • tajo-client/src/main/java/org/apache/tajo/cli/DescTableCommand.java
        • CHANGES
        • tajo-client/src/main/java/org/apache/tajo/jdbc/TajoResultSet.java
        • tajo-jdbc/src/main/java/org/apache/tajo/jdbc/TajoDatabaseMetaData.java
        • tajo-core/src/test/java/org/apache/tajo/jdbc/TestTajoJdbc.java
        • tajo-core/src/test/java/org/apache/tajo/QueryTestCaseBase.java
        • tajo-client/src/main/java/org/apache/tajo/cli/InvalidClientSessionException.java
        • tajo-client/src/main/java/org/apache/tajo/client/CatalogAdminClientImpl.java
        • tajo-client/src/main/java/org/apache/tajo/client/TajoClientImpl.java
        • tajo-core/src/test/java/org/apache/tajo/scheduler/TestFifoScheduler.java
        • tajo-client/src/main/java/org/apache/tajo/client/TajoDump.java
        • tajo-client/src/main/java/org/apache/tajo/cli/TajoCli.java
        • tajo-core/src/test/java/org/apache/tajo/TajoTestingCluster.java
        • tajo-client/src/main/java/org/apache/tajo/client/TajoAdmin.java
        • tajo-client/src/main/java/org/apache/tajo/client/TajoHAClientUtil.java
        • tajo-client/src/main/java/org/apache/tajo/client/QueryClient.java
        • tajo-client/src/main/java/org/apache/tajo/client/TajoGetConf.java
        • tajo-jdbc/src/main/java/org/apache/tajo/jdbc/TajoConnection.java
        • tajo-client/src/main/java/org/apache/tajo/cli/DefaultTajoCliOutputFormatter.java
        • tajo-client/src/main/java/org/apache/tajo/client/QueryClientImpl.java
        • tajo-client/src/main/java/org/apache/tajo/cli/TajoShellCommand.java
        • tajo-core/src/test/java/org/apache/tajo/master/querymaster/TestQueryProgress.java
        • tajo-client/src/main/java/org/apache/tajo/jdbc/FetchResultSet.java
        • tajo-core/src/test/java/org/apache/tajo/master/ha/TestHAServiceHDFSImpl.java
        • tajo-core/src/test/java/org/apache/tajo/LocalTajoTestingUtility.java
        • tajo-client/src/main/java/org/apache/tajo/client/CatalogAdminClient.java
        Show
        hudson Hudson added a comment - SUCCESS: Integrated in Tajo-master-CODEGEN-build #69 (See https://builds.apache.org/job/Tajo-master-CODEGEN-build/69/ ) TAJO-1140 : Separate TajoClient into fine grained parts. (hyunsik: rev f80beaf64d33850ee79e8ae32b33a852f56712f0) tajo-client/src/main/java/org/apache/tajo/client/TajoClient.java tajo-jdbc/src/main/java/org/apache/tajo/jdbc/TajoDriver.java tajo-core/src/test/java/org/apache/tajo/client/TestTajoClient.java tajo-client/src/main/java/org/apache/tajo/client/TajoHAAdmin.java tajo-jdbc/src/main/java/org/apache/tajo/jdbc/TajoPreparedStatement.java tajo-core/src/main/java/org/apache/tajo/webapp/QueryExecutorServlet.java tajo-client/src/main/java/org/apache/tajo/client/InvalidClientSessionException.java tajo-client/src/main/java/org/apache/tajo/client/TajoClientUtil.java tajo-core/src/main/java/org/apache/tajo/benchmark/BenchmarkSet.java tajo-client/src/main/java/org/apache/tajo/client/SessionConnection.java tajo-core/src/main/java/org/apache/tajo/master/GlobalEngine.java tajo-core/src/test/java/org/apache/tajo/worker/TestHistory.java tajo-jdbc/src/main/java/org/apache/tajo/jdbc/JdbcConnection.java tajo-jdbc/src/main/java/org/apache/tajo/jdbc/TajoStatement.java tajo-client/src/main/java/org/apache/tajo/cli/DescTableCommand.java CHANGES tajo-client/src/main/java/org/apache/tajo/jdbc/TajoResultSet.java tajo-jdbc/src/main/java/org/apache/tajo/jdbc/TajoDatabaseMetaData.java tajo-core/src/test/java/org/apache/tajo/jdbc/TestTajoJdbc.java tajo-core/src/test/java/org/apache/tajo/QueryTestCaseBase.java tajo-client/src/main/java/org/apache/tajo/cli/InvalidClientSessionException.java tajo-client/src/main/java/org/apache/tajo/client/CatalogAdminClientImpl.java tajo-client/src/main/java/org/apache/tajo/client/TajoClientImpl.java tajo-core/src/test/java/org/apache/tajo/scheduler/TestFifoScheduler.java tajo-client/src/main/java/org/apache/tajo/client/TajoDump.java tajo-client/src/main/java/org/apache/tajo/cli/TajoCli.java tajo-core/src/test/java/org/apache/tajo/TajoTestingCluster.java tajo-client/src/main/java/org/apache/tajo/client/TajoAdmin.java tajo-client/src/main/java/org/apache/tajo/client/TajoHAClientUtil.java tajo-client/src/main/java/org/apache/tajo/client/QueryClient.java tajo-client/src/main/java/org/apache/tajo/client/TajoGetConf.java tajo-jdbc/src/main/java/org/apache/tajo/jdbc/TajoConnection.java tajo-client/src/main/java/org/apache/tajo/cli/DefaultTajoCliOutputFormatter.java tajo-client/src/main/java/org/apache/tajo/client/QueryClientImpl.java tajo-client/src/main/java/org/apache/tajo/cli/TajoShellCommand.java tajo-core/src/test/java/org/apache/tajo/master/querymaster/TestQueryProgress.java tajo-client/src/main/java/org/apache/tajo/jdbc/FetchResultSet.java tajo-core/src/test/java/org/apache/tajo/master/ha/TestHAServiceHDFSImpl.java tajo-core/src/test/java/org/apache/tajo/LocalTajoTestingUtility.java tajo-client/src/main/java/org/apache/tajo/client/CatalogAdminClient.java
        Hide
        hudson Hudson added a comment -

        SUCCESS: Integrated in Tajo-master-build #427 (See https://builds.apache.org/job/Tajo-master-build/427/)
        TAJO-1140: Separate TajoClient into fine grained parts. (hyunsik: rev f80beaf64d33850ee79e8ae32b33a852f56712f0)

        • tajo-client/src/main/java/org/apache/tajo/cli/DefaultTajoCliOutputFormatter.java
        • tajo-client/src/main/java/org/apache/tajo/client/TajoAdmin.java
        • tajo-jdbc/src/main/java/org/apache/tajo/jdbc/TajoStatement.java
        • tajo-core/src/test/java/org/apache/tajo/worker/TestHistory.java
        • tajo-client/src/main/java/org/apache/tajo/client/TajoGetConf.java
        • tajo-jdbc/src/main/java/org/apache/tajo/jdbc/TajoDatabaseMetaData.java
        • tajo-jdbc/src/main/java/org/apache/tajo/jdbc/TajoDriver.java
        • tajo-client/src/main/java/org/apache/tajo/client/InvalidClientSessionException.java
        • tajo-client/src/main/java/org/apache/tajo/client/TajoHAAdmin.java
        • CHANGES
        • tajo-jdbc/src/main/java/org/apache/tajo/jdbc/TajoPreparedStatement.java
        • tajo-client/src/main/java/org/apache/tajo/client/CatalogAdminClientImpl.java
        • tajo-client/src/main/java/org/apache/tajo/client/TajoClient.java
        • tajo-client/src/main/java/org/apache/tajo/cli/InvalidClientSessionException.java
        • tajo-core/src/test/java/org/apache/tajo/master/ha/TestHAServiceHDFSImpl.java
        • tajo-core/src/test/java/org/apache/tajo/jdbc/TestTajoJdbc.java
        • tajo-core/src/test/java/org/apache/tajo/scheduler/TestFifoScheduler.java
        • tajo-client/src/main/java/org/apache/tajo/client/QueryClientImpl.java
        • tajo-client/src/main/java/org/apache/tajo/jdbc/FetchResultSet.java
        • tajo-client/src/main/java/org/apache/tajo/client/CatalogAdminClient.java
        • tajo-core/src/main/java/org/apache/tajo/benchmark/BenchmarkSet.java
        • tajo-core/src/test/java/org/apache/tajo/master/querymaster/TestQueryProgress.java
        • tajo-client/src/main/java/org/apache/tajo/client/TajoDump.java
        • tajo-client/src/main/java/org/apache/tajo/client/SessionConnection.java
        • tajo-client/src/main/java/org/apache/tajo/client/TajoClientImpl.java
        • tajo-client/src/main/java/org/apache/tajo/client/QueryClient.java
        • tajo-core/src/test/java/org/apache/tajo/QueryTestCaseBase.java
        • tajo-core/src/test/java/org/apache/tajo/TajoTestingCluster.java
        • tajo-core/src/test/java/org/apache/tajo/LocalTajoTestingUtility.java
        • tajo-client/src/main/java/org/apache/tajo/cli/TajoCli.java
        • tajo-core/src/main/java/org/apache/tajo/webapp/QueryExecutorServlet.java
        • tajo-core/src/main/java/org/apache/tajo/master/GlobalEngine.java
        • tajo-client/src/main/java/org/apache/tajo/cli/TajoShellCommand.java
        • tajo-core/src/test/java/org/apache/tajo/client/TestTajoClient.java
        • tajo-client/src/main/java/org/apache/tajo/client/TajoClientUtil.java
        • tajo-client/src/main/java/org/apache/tajo/jdbc/TajoResultSet.java
        • tajo-jdbc/src/main/java/org/apache/tajo/jdbc/JdbcConnection.java
        • tajo-client/src/main/java/org/apache/tajo/client/TajoHAClientUtil.java
        • tajo-jdbc/src/main/java/org/apache/tajo/jdbc/TajoConnection.java
        • tajo-client/src/main/java/org/apache/tajo/cli/DescTableCommand.java
        Show
        hudson Hudson added a comment - SUCCESS: Integrated in Tajo-master-build #427 (See https://builds.apache.org/job/Tajo-master-build/427/ ) TAJO-1140 : Separate TajoClient into fine grained parts. (hyunsik: rev f80beaf64d33850ee79e8ae32b33a852f56712f0) tajo-client/src/main/java/org/apache/tajo/cli/DefaultTajoCliOutputFormatter.java tajo-client/src/main/java/org/apache/tajo/client/TajoAdmin.java tajo-jdbc/src/main/java/org/apache/tajo/jdbc/TajoStatement.java tajo-core/src/test/java/org/apache/tajo/worker/TestHistory.java tajo-client/src/main/java/org/apache/tajo/client/TajoGetConf.java tajo-jdbc/src/main/java/org/apache/tajo/jdbc/TajoDatabaseMetaData.java tajo-jdbc/src/main/java/org/apache/tajo/jdbc/TajoDriver.java tajo-client/src/main/java/org/apache/tajo/client/InvalidClientSessionException.java tajo-client/src/main/java/org/apache/tajo/client/TajoHAAdmin.java CHANGES tajo-jdbc/src/main/java/org/apache/tajo/jdbc/TajoPreparedStatement.java tajo-client/src/main/java/org/apache/tajo/client/CatalogAdminClientImpl.java tajo-client/src/main/java/org/apache/tajo/client/TajoClient.java tajo-client/src/main/java/org/apache/tajo/cli/InvalidClientSessionException.java tajo-core/src/test/java/org/apache/tajo/master/ha/TestHAServiceHDFSImpl.java tajo-core/src/test/java/org/apache/tajo/jdbc/TestTajoJdbc.java tajo-core/src/test/java/org/apache/tajo/scheduler/TestFifoScheduler.java tajo-client/src/main/java/org/apache/tajo/client/QueryClientImpl.java tajo-client/src/main/java/org/apache/tajo/jdbc/FetchResultSet.java tajo-client/src/main/java/org/apache/tajo/client/CatalogAdminClient.java tajo-core/src/main/java/org/apache/tajo/benchmark/BenchmarkSet.java tajo-core/src/test/java/org/apache/tajo/master/querymaster/TestQueryProgress.java tajo-client/src/main/java/org/apache/tajo/client/TajoDump.java tajo-client/src/main/java/org/apache/tajo/client/SessionConnection.java tajo-client/src/main/java/org/apache/tajo/client/TajoClientImpl.java tajo-client/src/main/java/org/apache/tajo/client/QueryClient.java tajo-core/src/test/java/org/apache/tajo/QueryTestCaseBase.java tajo-core/src/test/java/org/apache/tajo/TajoTestingCluster.java tajo-core/src/test/java/org/apache/tajo/LocalTajoTestingUtility.java tajo-client/src/main/java/org/apache/tajo/cli/TajoCli.java tajo-core/src/main/java/org/apache/tajo/webapp/QueryExecutorServlet.java tajo-core/src/main/java/org/apache/tajo/master/GlobalEngine.java tajo-client/src/main/java/org/apache/tajo/cli/TajoShellCommand.java tajo-core/src/test/java/org/apache/tajo/client/TestTajoClient.java tajo-client/src/main/java/org/apache/tajo/client/TajoClientUtil.java tajo-client/src/main/java/org/apache/tajo/jdbc/TajoResultSet.java tajo-jdbc/src/main/java/org/apache/tajo/jdbc/JdbcConnection.java tajo-client/src/main/java/org/apache/tajo/client/TajoHAClientUtil.java tajo-jdbc/src/main/java/org/apache/tajo/jdbc/TajoConnection.java tajo-client/src/main/java/org/apache/tajo/cli/DescTableCommand.java
        Hide
        githubbot ASF GitHub Bot added a comment -

        Github user asfgit closed the pull request at:

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

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

        committed the patch to master branch.

        Show
        hyunsik Hyunsik Choi added a comment - committed the patch to master branch.
        Hide
        githubbot ASF GitHub Bot added a comment -

        Github user jinossy commented on the pull request:

        https://github.com/apache/tajo/pull/213#issuecomment-60702221

        +1 LGTM!
        I've verified 'mvn clean install'

        Show
        githubbot ASF GitHub Bot added a comment - Github user jinossy commented on the pull request: https://github.com/apache/tajo/pull/213#issuecomment-60702221 +1 LGTM! I've verified 'mvn clean install'
        Hide
        githubbot ASF GitHub Bot added a comment -

        GitHub user hyunsik opened a pull request:

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

        TAJO-1140: Separate TajoClient into fine grained parts.

        This is a code clean up and refactoring patch. This patch main does as follows:

        • Separate TajoClient into SessionConnection, QueryClient, and CatalogAdminClient
        • Keep backward compatibility
        • Separate QueryClient into its interface and its implementation
        • Separate CatalogAdminClient into its interface and its implementation
        • Rename TajoConnection to JdbcConnection

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

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

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

        https://github.com/apache/tajo/pull/213.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 #213


        commit fca180a66c7aa118e5ce12dc434206c782b86862
        Author: Hyunsik Choi <hyunsik@apache.org>
        Date: 2014-10-27T07:46:22Z

        TAJO-1140: Separate TajoClient into fine grained parts.


        Show
        githubbot ASF GitHub Bot added a comment - GitHub user hyunsik opened a pull request: https://github.com/apache/tajo/pull/213 TAJO-1140 : Separate TajoClient into fine grained parts. This is a code clean up and refactoring patch. This patch main does as follows: Separate TajoClient into SessionConnection, QueryClient, and CatalogAdminClient Keep backward compatibility Separate QueryClient into its interface and its implementation Separate CatalogAdminClient into its interface and its implementation Rename TajoConnection to JdbcConnection You can merge this pull request into a Git repository by running: $ git pull https://github.com/hyunsik/tajo TAJO-1140 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/tajo/pull/213.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 #213 commit fca180a66c7aa118e5ce12dc434206c782b86862 Author: Hyunsik Choi <hyunsik@apache.org> Date: 2014-10-27T07:46:22Z TAJO-1140 : Separate TajoClient into fine grained parts.

          People

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

            Dates

            • Created:
              Updated:
              Resolved:

              Development