ZipFileSystem: Unable to get effective rights from ACL: Overlapped I/O operation is in progress.

Austin Lee austin7lee at hotmail.com
Sun Jul 22 07:32:06 PDT 2012


I just re-confirmed that accessing the network share resolves the issue immediately. Knowing the fact that it is related to the domain controller also allowed me to easily reproduce the problem where I a) Logged onto my domain controller. b) Right after loading my jar, make windows go into sleep mode. c) Restart my application and observed the overlapped IO issue.
I hope this information helps and if there is any other information you need to reproduce the issue I would be glad to help.

Austin Lee


Date: Sun, 22 Jul 2012 01:59:35 +0100
From: Alan.Bateman at oracle.com
To: austin7lee at hotmail.com
CC: nio-discuss at openjdk.java.net
Subject: Re: ZipFileSystem: Unable to get effective rights from ACL: Overlapped I/O operation is in progress.


  
    
  
  
    On 21/07/2012 23:46, Austin Lee wrote:
    
      
      
        
          
            Hello,
              I've been using the ZipFileSystem and ran into this
              random issue on my laptop.
            

            
            java.io.IOException: Unable to get effective rights
              from ACL: Overlapped I/O operation is in progress.
                    at
              sun.nio.fs.WindowsFileSystemProvider.getEffectiveAccess(WindowsFileSystemProvider.java:344)
              ~[na:1.7.0_03]
            
              at
              sun.nio.fs.WindowsFileSystemProvider.checkAccess(WindowsFileSystemProvider.java:397)
              ~[na:1.7.0_03]
            
              at
              com.sun.nio.zipfs.ZipFileSystem.<init>(ZipFileSystem.java:124)
              ~[zipfs.jar:1.7.0_03]
            
              at
              com.sun.nio.zipfs.ZipFileSystemProvider.newFileSystem(ZipFileSystemProvider.java:139)
              ~[zipfs.jar:1.7.0_03]
            

            
            For me this issue is hard to reproduce since it seems like
            it needs to have a series of specific events to occur.  I've
            narrowed it down to these scenarios  on my Win7 machine laptop (SSD
              harddrive).
            

            
            The issue seems to only occur with when making the
              laptop go to sleep (ie pushing the sleep button or closing
              the laptop) either during a read or write through the
              zipfilesystem.
            Killing the process and restarting the process does not
              make the issue go ways. Rerunning the my program will make
              this exception occur repeatedly.
            Restarting the laptop will fix the issue until next
              occurance.
            I attempted to call win api CancelIOEx with a file
              handle with overlapped attribute enable in the same
              process space via JNI but that does seem to have an
              effect.
            If the issue appears, leaving the laptop alone for long
              period of time w/o restart makes the problem go away.
            The issue is not tied to any one particular jar file,
              rather its any jar file I attempt to open will cause the
              exception to appear.
            

            
            I'm wondering if there are any workaround for this
              issue either through java or windows api?  It seems there
              may be some issue with the ACL of the current user. I'm
              not a win api expert but any suggestions where I can
              detect and recover from this issue would be great.
            

            
            
              Austin Lee
              
            
          
        
      
    
    Someone else this up on the list a few days ago too and we would
    like to get to the bottom of this issue. The ZIP provider is
    checking that it has read access to the zip or JAR file and this
    requires determines the effective access to the file. Determining
    the effective access several calls into Windows to read the ACL and
    get the effective access and we seem to have a problem there. We
    haven't been able to duplicate it and maybe you can tell us a bit
    more about the environment to help us. The main thing to know is
    whether this machine is in a domain or not? One possibility is that
    when you put the machine to sleep it shuts down the network and that
    disrupts the connection to the domain controller. You also mention
    that the problem disappears if you leave the machine alone, I would
    be interested to know if attempt to access a share on the network
    then will the issue "correct itself" quicker (which would be an
    indication that it's re-connecting to the domain server).

    

    -Alan
 		 	   		  
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.openjdk.java.net/pipermail/nio-discuss/attachments/20120722/bbbeb564/attachment.html 


More information about the nio-discuss mailing list