> On Feb. 5, 2014, 7:16 a.m., Jinho Kim wrote:
> > tajo-core/tajo-core-backend/src/main/java/org/apache/tajo/engine/planner/ExprAnnotator.java,
> >  line 399
> > <https://reviews.apache.org/r/17735/diff/1/?file=469962#file469962line399>
> >
> >     catalog.getFunction is remote function.
> >     it tries to fail three times. so is not better

Hi Jinho. I didn't mean this.

    FunctionDesc funcDesc = catalog.getFunction(expr.getSignature(), 
paramTypes);       
    if (funcDesc == null) {
      throw new NoSuchFunctionException(expr.getSignature(), paramTypes);
    }

I mean this.

    if (!catalog.containFunction(expr.getSignature(), paramTypes)) {    
      throw new NoSuchFunctionException(expr.getSignature(), paramTypes);       
    }

    FunctionDesc funcDesc = catalog.getFunction(expr.getSignature(), 
paramTypes);


- Dae Myung


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/17735/#review33682
-----------------------------------------------------------


On Feb. 5, 2014, 6:44 a.m., Jinho Kim wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/17735/
> -----------------------------------------------------------
> 
> (Updated Feb. 5, 2014, 6:44 a.m.)
> 
> 
> Review request for Tajo.
> 
> 
> Bugs: TAJO-586
>     https://issues.apache.org/jira/browse/TAJO-586
> 
> 
> Repository: tajo
> 
> 
> Description
> -------
> 
> containFunction should return boolean value
> 
> {noformat}
> 2014-02-05 15:18:23,088 INFO  catalog.CatalogServer 
> (CatalogServer.java:start(166)) - Catalog Server startup (127.0.0.1:11353)
> 2014-02-05 15:18:23,098 ERROR catalog.AbstractCatalogClient 
> (AbstractCatalogClient.java:containFunction(407)) - 
> org.apache.tajo.catalog.exception.NoSuchFunctionException: function test10() 
> does not exist
> com.google.protobuf.ServiceException: 
> org.apache.tajo.catalog.exception.NoSuchFunctionException: function test10() 
> does not exist
>       at 
> org.apache.tajo.rpc.ServerCallable.withRetries(ServerCallable.java:110)
>       at 
> org.apache.tajo.catalog.AbstractCatalogClient.containFunction(AbstractCatalogClient.java:400)
>       at 
> org.apache.tajo.catalog.TestCatalog.testRegisterAndFindFunc(TestCatalog.java:178)
>       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>       at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>       at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>       at java.lang.reflect.Method.invoke(Method.java:597)
>       at 
> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45)
>       at 
> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
>       at 
> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42)
>       at 
> org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
>       at 
> org.junit.internal.runners.statements.ExpectException.evaluate(ExpectException.java:22)
>       at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263)
>       at 
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:68)
>       at 
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:47)
>       at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231)
>       at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60)
>       at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229)
>       at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50)
>       at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222)
>       at 
> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
>       at 
> org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:30)
>       at org.junit.runners.ParentRunner.run(ParentRunner.java:300)
>       at org.junit.runner.JUnitCore.run(JUnitCore.java:157)
>       at 
> com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:74)
>       at 
> com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:202)
>       at 
> com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:65)
>       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>       at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>       at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>       at java.lang.reflect.Method.invoke(Method.java:597)
>       at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120)
> Caused by: org.apache.tajo.catalog.exception.NoSuchFunctionException: 
> function test10() does not exist
>       at 
> org.apache.tajo.catalog.CatalogServer$CatalogProtocolHandler.findFunction(CatalogServer.java:523)
>       at 
> org.apache.tajo.catalog.CatalogServer$CatalogProtocolHandler.containFunction(CatalogServer.java:497)
>       at 
> org.apache.tajo.catalog.CatalogServer$CatalogProtocolHandler.containFunction(CatalogServer.java:589)
>       at 
> org.apache.tajo.catalog.AbstractCatalogClient$18.call(AbstractCatalogClient.java:403)
>       at 
> org.apache.tajo.catalog.AbstractCatalogClient$18.call(AbstractCatalogClient.java:400)
>       at 
> org.apache.tajo.rpc.ServerCallable.withRetries(ServerCallable.java:96)
> {noformat}
> 
> 
> Diffs
> -----
> 
>   
> tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/CatalogServer.java
>  69e0248b5f1e2d6a9adc5eb0d5052152d09eb1d3 
>   
> tajo-catalog/tajo-catalog-server/src/main/java/org/apache/tajo/catalog/store/AbstractDBStore.java
>  5d6f747e0e6011f037bcc0efd87d6d3687d1c189 
>   
> tajo-catalog/tajo-catalog-server/src/test/java/org/apache/tajo/catalog/TestCatalog.java
>  4dfc97a7007bce4aec374df409f631e66c956e68 
>   
> tajo-core/tajo-core-backend/src/main/java/org/apache/tajo/engine/planner/ExprAnnotator.java
>  f25064f80e9e8580be19a521cdf8a66d9ea383a7 
> 
> Diff: https://reviews.apache.org/r/17735/diff/
> 
> 
> Testing
> -------
> 
> mvn clean install
> 
> 
> Thanks,
> 
> Jinho Kim
> 
>

Reply via email to