> On Nov. 5, 2013, 3:32 a.m., Thejas Nair wrote:
> > service/src/java/org/apache/hive/service/cli/operation/SQLOperation.java, 
> > line 70
> > <https://reviews.apache.org/r/15151/diff/1/?file=375372#file375372line70>
> >
> >     This and some other variables used by async execution needs to be made 
> > volatile, as it can now be accessed from multiple threads. We should also 
> > do that for state in Operation.java . But that can be addressed in another 
> > thread.
> >
> 
> Vaibhav Gumashta wrote:
>     It seems we might not need to make this volatile. From the java docs 
> (http://docs.oracle.com/javase/7/docs/api/java/util/concurrent/Executor.html):
>  Memory consistency effects: Actions in a thread prior to submitting a 
> Runnable object to an Executor happen-before its execution begins, perhaps in 
> another thread. This implies that backgroundHandle will always be set to null 
> before the execution of a new runnable is started in any of the workers which 
> were previously handling some other runnable.
> 
> Thejas Nair wrote:
>     Consider the case of doing a execute followed by a getstatus call from 
> client. The execute statement say gets run by thread x and getstatus gets run 
> by thread y. The executor creates a happens before relation only between 
> statements in thread x and the start of the async thread. The assignment of 
> backgroundHandle value is a step after the Executor.execute call. So it does 
> not establish a happens-before relationship between the assignment of 
> backgroundHandle value in thread x with the lookup for backgroundHandle in 
> thread y.
>

Thinking some more about it, I think it would be safer to establish a 
happens-before relationship at higher level in HiveSessionImpl calls instead.


- Thejas


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


On Nov. 1, 2013, 12:54 a.m., Vaibhav Gumashta wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/15151/
> -----------------------------------------------------------
> 
> (Updated Nov. 1, 2013, 12:54 a.m.)
> 
> 
> Review request for hive, Prasad Mujumdar and Thejas Nair.
> 
> 
> Bugs: HIVE-5230
>     https://issues.apache.org/jira/browse/HIVE-5230
> 
> 
> Repository: hive-git
> 
> 
> Description
> -------
> 
> [HIVE-4617|https://issues.apache.org/jira/browse/HIVE-4617] provides support 
> for async execution in HS2. When a background thread gets an error, currently 
> the client can only poll for the operation state and also the error with its 
> stacktrace is logged. However, it will be useful to provide a richer error 
> response like thrift API does with TStatus (which is constructed while 
> building a Thrift response object). 
> 
> 
> Diffs
> -----
> 
>   service/src/java/org/apache/hive/service/cli/CLIService.java 1a7f338 
>   service/src/java/org/apache/hive/service/cli/CLIServiceClient.java 14ef54f 
>   service/src/java/org/apache/hive/service/cli/EmbeddedCLIServiceClient.java 
> 9dca874 
>   service/src/java/org/apache/hive/service/cli/ICLIService.java f647ce6 
>   service/src/java/org/apache/hive/service/cli/OperationStatus.java 
> PRE-CREATION 
>   service/src/java/org/apache/hive/service/cli/operation/Operation.java 
> 6f4b8dc 
>   
> service/src/java/org/apache/hive/service/cli/operation/OperationManager.java 
> bcdb67f 
>   service/src/java/org/apache/hive/service/cli/operation/SQLOperation.java 
> f6adf92 
>   service/src/java/org/apache/hive/service/cli/thrift/ThriftCLIService.java 
> 9df110e 
>   
> service/src/java/org/apache/hive/service/cli/thrift/ThriftCLIServiceClient.java
>  9bb2a0f 
>   service/src/test/org/apache/hive/service/cli/CLIServiceTest.java d6caed1 
>   
> service/src/test/org/apache/hive/service/cli/thrift/ThriftCLIServiceTest.java 
> ff7166d 
> 
> Diff: https://reviews.apache.org/r/15151/diff/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Vaibhav Gumashta
> 
>

Reply via email to