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

[email protected] commented on OOZIE-684:
-----------------------------------------------------



bq.  On 2012-02-27 21:12:35, Angelo K. Huang wrote:
bq.  > 
http://svn.apache.org/repos/asf/incubator/oozie/trunk/core/src/main/java/org/apache/oozie/command/XCommand.java,
 line 195
bq.  > <https://reviews.apache.org/r/4035/diff/2/?file=85862#file85862line195>
bq.  >
bq.  >     we should not allow getEntityKey == null to get the lock. Please add 
condition check here too.

sure will add it. I was assuming the null checking should happen generically 
while getting the write lock


bq.  On 2012-02-27 21:12:35, Angelo K. Huang wrote:
bq.  > 
http://svn.apache.org/repos/asf/incubator/oozie/trunk/core/src/main/java/org/apache/oozie/command/XCommand.java,
 line 263
bq.  > <https://reviews.apache.org/r/4035/diff/2/?file=85862#file85862line263>
bq.  >
bq.  >     if lock != null, isLockRequired() must be true.
bq.  >     
bq.  >     So you can remove isLockRequired().

Yep, good catch


bq.  On 2012-02-27 21:12:35, Angelo K. Huang wrote:
bq.  > 
http://svn.apache.org/repos/asf/incubator/oozie/trunk/core/src/main/java/org/apache/oozie/command/XCommand.java,
 line 331
bq.  > <https://reviews.apache.org/r/4035/diff/2/?file=85862#file85862line331>
bq.  >
bq.  >     there is no need for this condition check when you already check 
lock != null.
bq.  >     
bq.  >     lock != null already means:
bq.  >     inInterrupt == false
bq.  >     getEntityKey != null

if the entity key is checked while acquiring lock as you requested, we can 
remove it here
But, we have to check for inInterrupt, otherwise we can be in an endless loop 
while executing interrupts within interrupts 


- Mohamed


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


On 2012-02-24 19:44:14, Mohamed Battisha wrote:
bq.  
bq.  -----------------------------------------------------------
bq.  This is an automatically generated e-mail. To reply, visit:
bq.  https://reviews.apache.org/r/4035/
bq.  -----------------------------------------------------------
bq.  
bq.  (Updated 2012-02-24 19:44:14)
bq.  
bq.  
bq.  Review request for oozie.
bq.  
bq.  
bq.  Summary
bq.  -------
bq.  
bq.  While executing an interrupt driven commands it may be executed from the 
map on one thread and executed from the queue at a different thread 
bq.  This will cause the following exception to be thrown: 
bq.  java.lang.IllegalStateException: CoordChangeXCommand already used. 
bq.  
bq.  - Avoiding throwing exception in case of interrupts and synchronizing the 
changes in [used] 
bq.  - Avoiding executing interrupt in case of commands that doesn't need locks
bq.  - Changing the debug message for execute interrupt to explicitly 
mentioning it is an interrupt command
bq.  
bq.  
bq.  This addresses bug OOZIE-684.
bq.      https://issues.apache.org/jira/browse/OOZIE-684
bq.  
bq.  
bq.  Diffs
bq.  -----
bq.  
bq.    
http://svn.apache.org/repos/asf/incubator/oozie/trunk/core/src/main/java/org/apache/oozie/command/XCommand.java
 1293381 
bq.  
bq.  Diff: https://reviews.apache.org/r/4035/diff
bq.  
bq.  
bq.  Testing
bq.  -------
bq.  
bq.  
bq.  Thanks,
bq.  
bq.  Mohamed
bq.  
bq.


                
> A race condition may happen under stress while executing an interrupt command
> -----------------------------------------------------------------------------
>
>                 Key: OOZIE-684
>                 URL: https://issues.apache.org/jira/browse/OOZIE-684
>             Project: Oozie
>          Issue Type: Bug
>            Reporter: Mohamed Battisha
>              Labels: performance
>   Original Estimate: 168h
>  Remaining Estimate: 168h
>
> While executing an interrupt driven commands it may be executed from the map 
> on one thread and executed from the queue at a different thread
> This will cause the following exception to be thrown:
> java.lang.IllegalStateException: CoordChangeXCommand already used.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to