[ 
https://issues.apache.org/jira/browse/TAJO-1228?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14259135#comment-14259135
 ] 

ASF GitHub Bot commented on TAJO-1228:
--------------------------------------

Github user blrunner commented on the pull request:

    https://github.com/apache/tajo/pull/317#issuecomment-68147410
  
    Hi @hyunsik 
    
    If possible, could you check the patch on testing cluster?
    I failed Q3 query on tpc-h benchmark dataset with the patch as follows:
    
    2014-12-27 01:18:08,273 ERROR org.apache.tajo.catalog.CatalogServer: 
java.lang.NullPointerException
    2014-12-27 01:18:08,273 ERROR 
org.apache.tajo.catalog.AbstractCatalogClient: 
com.google.protobuf.ServiceException: java.lang.NullPointerException
    com.google.protobuf.ServiceException: com.google.protobuf.ServiceException: 
java.lang.NullPointerException
            at 
org.apache.tajo.rpc.ServerCallable.withRetries(ServerCallable.java:105)
            at 
org.apache.tajo.catalog.AbstractCatalogClient.getTableDesc(AbstractCatalogClient.java:243)
            at 
org.apache.tajo.catalog.AbstractCatalogClient.getTableDesc(AbstractCatalogClient.java:262)
            at 
org.apache.tajo.plan.LogicalPlanPreprocessor.visitRelation(LogicalPlanPreprocessor.java:385)
            at 
org.apache.tajo.plan.LogicalPlanPreprocessor.visitRelation(LogicalPlanPreprocessor.java:44)
            at 
org.apache.tajo.plan.algebra.BaseAlgebraVisitor.visit(BaseAlgebraVisitor.java:98)
            at 
org.apache.tajo.plan.algebra.BaseAlgebraVisitor.visitRelationList(BaseAlgebraVisitor.java:418)
            at 
org.apache.tajo.plan.algebra.BaseAlgebraVisitor.visit(BaseAlgebraVisitor.java:95)
            at 
org.apache.tajo.plan.LogicalPlanPreprocessor.visitProjection(LogicalPlanPreprocessor.java:197)
            at 
org.apache.tajo.plan.LogicalPlanPreprocessor.visitProjection(LogicalPlanPreprocessor.java:44)
            at 
org.apache.tajo.plan.algebra.BaseAlgebraVisitor.visit(BaseAlgebraVisitor.java:59)
            at 
org.apache.tajo.plan.LogicalPlanner.createPlan(LogicalPlanner.java:141)
            at 
org.apache.tajo.plan.LogicalPlanner.createPlan(LogicalPlanner.java:131)
            at 
org.apache.tajo.master.GlobalEngine.createLogicalPlan(GlobalEngine.java:232)
            at 
org.apache.tajo.master.GlobalEngine.executeQuery(GlobalEngine.java:161)
            at 
org.apache.tajo.master.TajoMasterClientService$TajoMasterClientProtocolServiceHandler.submitQuery(TajoMasterClientService.java:284)
            at 
org.apache.tajo.ipc.TajoMasterClientProtocol$TajoMasterClientProtocolService$2.callBlockingMethod(TajoMasterClientProtocol.java:543)
            at 
org.apache.tajo.rpc.BlockingRpcServer$ServerHandler.messageReceived(BlockingRpcServer.java:103)



> TajoClient should communicate with only TajoMaster without TajoWorker
> ---------------------------------------------------------------------
>
>                 Key: TAJO-1228
>                 URL: https://issues.apache.org/jira/browse/TAJO-1228
>             Project: Tajo
>          Issue Type: Bug
>          Components: client
>            Reporter: Hyunsik Choi
>            Assignee: Hyunsik Choi
>             Fix For: 0.10
>
>         Attachments: TAJO-1228.patch, TAJO-1228_2.patch, TAJO-1228_3.patch
>
>
> Currently, TajoClient connects with TajoMaster as well as TajoWorker. A query 
> submission is passed from TajoClient to TajoMaster, and than TajoMaster 
> forwards the query to one query master running on a TajoWorker. After than, a 
> client monitors the query progress through the query master.
> In other words, TajoClient contacts both TajoMaster and TajoWorker. It has 
> three disadvantages:
>  * a network firewall should allow connections to TajoWorker nodes.
>  * all components should have complex states and communication logic one 
> another. 
>  * TAJO-1160 is trying to remove hadoop dependency from TajoClient. In 
> TAJO-1160, TajoClient will use only some server which forwards query results 
> to itself instead of reading directly HDFS. TajoMaster would be the best 
> component to forward the query results because TajoClient always connects 
> with TajoMaster. So, if TajoClient communicates with only TajoMaster, all 
> client logic and protocol would be simple.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to