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

Knut Anders Hatlen commented on DERBY-6503:
-------------------------------------------

Thanks, everyone, for the feedback. I think I'll limit the scope of this bug 
report to only fixing the ClassCastException that hides the underlying 
IOException (which turned out to be a valid error situation, since the user was 
not allowed by the operating system to change file permissions on that drive, 
not even its own files). I've filed DERBY-6521 to track the discussion on 
whether Derby should raise exceptions also on posix file systems, and whether 
exceptions should only be raised if the user had explicitly turned on the 
feature.

> Starting network server on a network drive fails with JDK 7 on Windows
> ----------------------------------------------------------------------
>
>                 Key: DERBY-6503
>                 URL: https://issues.apache.org/jira/browse/DERBY-6503
>             Project: Derby
>          Issue Type: Bug
>          Components: Network Server, Services
>    Affects Versions: 10.10.1.1
>            Reporter: Knut Anders Hatlen
>            Assignee: Knut Anders Hatlen
>
> Starting a network server on a network drive with JDK 7 on Windows fails. The 
> reported exception is a ClassCastException, but the underlying exception is 
> the following:
> java.nio.file.AccessDeniedException: \\host\path\derby.log
>       at 
> sun.nio.fs.WindowsException.translateToIOException(WindowsException.java:83)
>       at 
> sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:97)
>       at 
> sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:102)
>       at 
> sun.nio.fs.WindowsAclFileAttributeView.setAcl(WindowsAclFileAttributeView.java:221)
>       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>       at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>       at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>       at java.lang.reflect.Method.invoke(Method.java:601)
>       at 
> org.apache.derby.iapi.services.io.FileUtil.limitAccessToOwnerViaACLs(FileUtil.java:897)
>       at 
> org.apache.derby.iapi.services.io.FileUtil.limitAccessToOwner(FileUtil.java:747)
>       at 
> org.apache.derby.impl.services.stream.SingleStream.PBmakeFileHPW(SingleStream.java:205)
>       at 
> org.apache.derby.impl.services.stream.SingleStream.run(SingleStream.java:401)
>       at 
> org.apache.derby.impl.services.stream.SingleStream.run(SingleStream.java:72)
>       at java.security.AccessController.doPrivileged(Native Method)
>       at 
> org.apache.derby.impl.services.stream.SingleStream.makeFileHPW(SingleStream.java:394)
>       at 
> org.apache.derby.impl.services.stream.SingleStream.createDefaultStream(SingleStream.java:356)
>       at 
> org.apache.derby.impl.services.stream.SingleStream.makeStream(SingleStream.java:132)
>       at 
> org.apache.derby.impl.services.stream.SingleStream.boot(SingleStream.java:92)
>       at 
> org.apache.derby.impl.services.monitor.BaseMonitor.boot(BaseMonitor.java:1991)
>       at 
> org.apache.derby.impl.services.monitor.TopService.bootModule(TopService.java:334)
>       at 
> org.apache.derby.impl.services.monitor.BaseMonitor.startModule(BaseMonitor.java:541)
>       at 
> org.apache.derby.impl.services.monitor.FileMonitor.startModule(FileMonitor.java:44)
>       at 
> org.apache.derby.iapi.services.monitor.Monitor.startSystemModule(Monitor.java:362)
>       at 
> org.apache.derby.impl.services.monitor.BaseMonitor.runWithState(BaseMonitor.java:343)
>       at 
> org.apache.derby.impl.services.monitor.FileMonitor.<init>(FileMonitor.java:58)
>       at 
> org.apache.derby.iapi.services.monitor.Monitor.startMonitor(Monitor.java:285)
>       at org.apache.derby.iapi.jdbc.JDBCBoot.boot(JDBCBoot.java:67)
>       at org.apache.derby.jdbc.EmbeddedDriver.boot(EmbeddedDriver.java:199)
>       at org.apache.derby.jdbc.EmbeddedDriver.<clinit>(EmbeddedDriver.java:95)
>       at java.lang.Class.forName0(Native Method)
>       at java.lang.Class.forName(Class.java:188)
>       at 
> org.apache.derby.impl.drda.NetworkServerControlImpl.startNetworkServer(NetworkServerControlImpl.java:1032)
>       at 
> org.apache.derby.impl.drda.NetworkServerControlImpl.blockingStart(NetworkServerControlImpl.java:732)
>       at 
> org.apache.derby.impl.drda.NetworkServerControlImpl.executeWork(NetworkServerControlImpl.java:2277)
>       at 
> org.apache.derby.drda.NetworkServerControl.main(NetworkServerControl.java:353)



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to