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


At high level, the implementation seems to be creating a pool per client. For 
example, each Hive session will have it's own pool. Is that how we intended the 
pooling to work ? or should the pool factory be static and all hive or other 
Sentry clients sessions can share the pool ?

The patch itself look fine. A few comments below.


sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/service/thrift/PoolClientInvocationHandler.java
<https://reviews.apache.org/r/30363/#comment127214>

    Are we sure that TargetException can always be converted to 
SentryUserException ? Would it be better to wrapp it in SentryUserException 
instead ?



sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/service/thrift/PoolClientInvocationHandler.java
<https://reviews.apache.org/r/30363/#comment127215>

    In case of exception in the above try block, the original exception will be 
lost. Would it be better to throw the original exception and not the one from 
returnObject() ?


- Prasad Mujumdar


On Feb. 10, 2015, 1:33 a.m., Dapeng Sun wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/30363/
> -----------------------------------------------------------
> 
> (Updated Feb. 10, 2015, 1:33 a.m.)
> 
> 
> Review request for sentry and Lenni Kuff.
> 
> 
> Bugs: SENTRY-296
>     https://issues.apache.org/jira/browse/SENTRY-296
> 
> 
> Repository: sentry
> 
> 
> Description
> -------
> 
> Since the change in **SENTRY-600 Refactor sentry client factory for "high 
> availability" and "connection pool"** is too complicated, I refactor this 
> part, this review request also merge **SENTRY-601 Create connection pool 
> factory**
> 
> I think this patch might minimized the code change
> * Kept the method **public static SentryPolicyServiceClient 
> create(Configuration conf) throws Exception**
> * Add **Generic Type** support to HAClientInvocationHandler and 
> PoolClientInvocationHandler, it will make integration with other client more 
> easily
> * Put **Connection pool instance** into PoolInvocationHandler, it will make 
> Client connection can be pooled.
> 
> 
> Diffs
> -----
> 
>   pom.xml 60a9f4a 
>   sentry-provider/sentry-provider-db/pom.xml 6116cd5 
>   
> sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/service/thrift/HAClientInvocationHandler.java
>  c6e265f 
>   
> sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/service/thrift/PoolClientInvocationHandler.java
>  PRE-CREATION 
>   
> sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/service/thrift/SentryClientInvocationHandler.java
>  PRE-CREATION 
>   
> sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/service/thrift/SentryServiceClientFactory.java
>  574f23c 
>   
> sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/service/thrift/SentryServiceClientPoolFactory.java
>  PRE-CREATION 
>   
> sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/service/thrift/ServiceConstants.java
>  ddc5930 
>   
> sentry-provider/sentry-provider-db/src/test/java/org/apache/sentry/provider/db/service/thrift/TestSentryServerForPoolHAWithoutKerberos.java
>  PRE-CREATION 
>   
> sentry-provider/sentry-provider-db/src/test/java/org/apache/sentry/provider/db/service/thrift/TestSentryServerForPoolWithoutKerberos.java
>  PRE-CREATION 
>   
> sentry-provider/sentry-provider-db/src/test/java/org/apache/sentry/provider/db/service/thrift/TestSentryServiceClientPool.java
>  PRE-CREATION 
>   
> sentry-provider/sentry-provider-db/src/test/java/org/apache/sentry/provider/db/service/thrift/TestSentryServiceForPoolHAWithKerberos.java
>  PRE-CREATION 
>   
> sentry-provider/sentry-provider-db/src/test/java/org/apache/sentry/provider/db/service/thrift/TestSentryServiceForPoolWithKerberos.java
>  PRE-CREATION 
>   
> sentry-provider/sentry-provider-db/src/test/java/org/apache/sentry/service/thrift/SentryServiceIntegrationBase.java
>  ca64ce1 
> 
> Diff: https://reviews.apache.org/r/30363/diff/
> 
> 
> Testing
> -------
> 
> Unit Tests passed
> 
> 
> Thanks,
> 
> Dapeng Sun
> 
>

Reply via email to