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

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

Github user jihoonson commented on a diff in the pull request:

    https://github.com/apache/tajo/pull/680#discussion_r36609754
  
    --- Diff: 
tajo-catalog/tajo-catalog-client/src/main/java/org/apache/tajo/catalog/AbstractCatalogClient.java
 ---
    @@ -471,31 +500,35 @@ public boolean addPartitions(String databaseName, 
String tableName, List<Partiti
       @Override
       public final Collection<FunctionDesc> getFunctions() {
         List<FunctionDesc> list = new ArrayList<FunctionDesc>();
    +
         try {
    -      GetFunctionsResponse response;
    -      BlockingInterface stub = getStub();
    -      response = stub.getFunctions(null, NullProto.newBuilder().build());
    -      int size = response.getFunctionDescCount();
    -      for (int i = 0; i < size; i++) {
    +      final BlockingInterface stub = getStub();
    +      final GetFunctionsResponse response = stub.getFunctions(null, 
NullProto.newBuilder().build());
    +
    +      ensureOk(response.getState());
    +      for (int i = 0; i < response.getFunctionDescCount(); i++) {
             try {
               list.add(new FunctionDesc(response.getFunctionDesc(i)));
             } catch (ClassNotFoundException e) {
    -          LOG.error(e, e);
    -          return list;
    +          throw new RuntimeException(e);
             }
           }
           return list;
    +
         } catch (ServiceException e) {
           throw new RuntimeException(e);
         }
       }
     
       @Override
    -  public final boolean createTable(final TableDesc desc) {
    +  public final void createTable(final TableDesc desc) throws 
DuplicateTableException, InsufficientPrivilegeException {
    --- End diff --
    
    ```UndefinedDatabaseException``` should be handled.


> Refine client APIs to throw specific exceptions
> -----------------------------------------------
>
>                 Key: TAJO-1748
>                 URL: https://issues.apache.org/jira/browse/TAJO-1748
>             Project: Tajo
>          Issue Type: Sub-task
>          Components: Catalog, Java Client
>            Reporter: Hyunsik Choi
>            Assignee: Hyunsik Choi
>             Fix For: 0.11.0
>
>
> This patch includes lots of API changes in terms of only exceptions. In 
> overall, this patch changes throwable exceptions for APIs and unit tests to 
> ensure that the APIs throws exact exceptions. 
> In sum, this patch includes the following changes:
> * Rename TajoExceptionInterface to DefaultTajoException.
> * Rename UnImplementedException to NotImplementedException.
> * Replace CatalogException by TajoException
> * Move almost TajoException/TajoRunException in tajo-core into tajo-common
> * Remove CatalogException and CatalogExceptionUtil
> * Add throwable exception to all APIs in TajoClient, QueryClient, 
> CatalogService, and CatalogAdminClient.
> * Refine all client implementations to throw received exception exactly.
> * Add negative unit tests for all APIs of them
> * Refine Client API v2 to handle exceptional cases like query failed, and 
> killed.
> * Add query fail and kill tests for Client v2



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

Reply via email to