#12002: avoid race conditions when creating directories - scripts
------------------------+---------------------------------------------------
   Reporter:  jdemeyer  |          Owner:  leif          
       Type:  defect    |         Status:  needs_review  
   Priority:  blocker   |      Milestone:  sage-4.8      
  Component:  scripts   |       Keywords:                
Work_issues:            |       Upstream:  N/A           
   Reviewer:            |         Author:  Jeroen Demeyer
     Merged:            |   Dependencies:                
------------------------+---------------------------------------------------

Comment(by jhpalmieri):

 We still have the possibility of a race condition, though:
 {{{
 #!python
   if os.path.isdir(TMP):   # suppose TMP does not exist at this point
       shutil.rmtree(TMP)
   # but suppose by now TMP exists
   os.makedirs(TMP)
 }}}
 Instead maybe this?
 {{{
 #!python
   try:
      os.makedirs(TMP)
   except OSError:
      if os.path.isdir(TMP):
         shutil.rmtree(TMP)
         os.makedirs(TMP)
      else:
         raise
 }}}

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/12002#comment:6>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, 
and MATLAB

-- 
You received this message because you are subscribed to the Google Groups 
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/sage-trac?hl=en.

Reply via email to