-
Bug
-
Resolution: Won't Do
-
Major
-
None
-
8.1.0.Final
-
None
I'm getting this output when I deploy a simple web project to WildFly 8.1:
12:28:59,160 INFO [org.jboss.as.server.deployment.scanner] (DeploymentScanner-threads - 1) JBAS015003: Found dynproj.war in deployment directory. To trigger deployment create a file called dynproj.war.dodeploy 12:28:59,211 INFO [org.jboss.as.server.deployment] (MSC service thread 1-2) JBAS015876: Starting deployment of "dynproj.war" (runtime-name: "dynproj.war") 12:29:00,402 ERROR [io.undertow] (MSC service thread 1-1) UT005024: Could not register resource change listener for caching resource manager, automatic invalidation of cached resource will not work: java.lang.RuntimeException: java.io.IOException: Incorrect function. at org.xnio.nio.WatchServiceFileSystemWatcher.watchPath(WatchServiceFileSystemWatcher.java:179) at io.undertow.server.handlers.resource.FileResourceManager.registerResourceChangeListener(FileResourceManager.java:115) [undertow-core-1.0.15.Final.jar:1.0.15.Final] at org.wildfly.extension.undertow.deployment.ServletResourceManager.registerResourceChangeListener(ServletResourceManager.java:80) at io.undertow.server.handlers.resource.CachingResourceManager.<init>(CachingResourceManager.java:64) [undertow-core-1.0.15.Final.jar:1.0.15.Final] at org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService.createServletConfig(UndertowDeploymentInfoService.java:505) at org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService.start(UndertowDeploymentInfoService.java:245) at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1948) at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1881) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_51] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_51] at java.lang.Thread.run(Thread.java:744) [rt.jar:1.7.0_51] Caused by: java.io.IOException: Incorrect function. at sun.nio.fs.WindowsWatchService$Poller.implRegister(WindowsWatchService.java:405) [rt.jar:1.7.0_51] at sun.nio.fs.AbstractPoller.processRequests(AbstractPoller.java:260) [rt.jar:1.7.0_51] at sun.nio.fs.WindowsWatchService$Poller.run(WindowsWatchService.java:531) [rt.jar:1.7.0_51] ... 1 more 12:29:00,680 INFO [org.wildfly.extension.undertow] (MSC service thread 1-1) JBAS017534: Registered web context: /dynproj 12:29:00,750 INFO [org.jboss.as.server] (DeploymentScanner-threads - 2) JBAS018559: Deployed "dynproj.war" (runtime-name : "dynproj.war") 12:29:26,096 INFO [org.wildfly.extension.undertow] (MSC service thread 1-2) JBAS017535: Unregistered web context: /dynproj 12:29:26,157 INFO [org.hibernate.validator.internal.util.Version] (MSC service thread 1-1) HV000001: Hibernate Validator 5.1.0.Final 12:29:26,308 INFO [org.jboss.as.server.deployment] (MSC service thread 1-2) JBAS015877: Stopped deployment dynproj.war (runtime-name: dynproj.war) in 231ms 12:29:26,378 INFO [org.jboss.as.server] (DeploymentScanner-threads - 1) JBAS018558: Undeployed "dynproj.war" (runtime-name: "dynproj.war") 12:30:06,475 INFO [org.jboss.as.server.deployment.scanner] (DeploymentScanner-threads - 2) JBAS015003: Found dynproj.war in deployment directory. To trigger deployment create a file called dynproj.war.dodeploy 12:30:06,496 INFO [org.jboss.as.server.deployment] (MSC service thread 1-2) JBAS015876: Starting deployment of "dynproj.war" (runtime-name: "dynproj.war") 12:30:06,697 ERROR [io.undertow] (MSC service thread 1-2) UT005024: Could not register resource change listener for caching resource manager, automatic invalidation of cached resource will not work: java.lang.RuntimeException: java.io.IOException: Incorrect function. at org.xnio.nio.WatchServiceFileSystemWatcher.watchPath(WatchServiceFileSystemWatcher.java:179) at io.undertow.server.handlers.resource.FileResourceManager.registerResourceChangeListener(FileResourceManager.java:115) [undertow-core-1.0.15.Final.jar:1.0.15.Final] at org.wildfly.extension.undertow.deployment.ServletResourceManager.registerResourceChangeListener(ServletResourceManager.java:80) at io.undertow.server.handlers.resource.CachingResourceManager.<init>(CachingResourceManager.java:64) [undertow-core-1.0.15.Final.jar:1.0.15.Final] at org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService.createServletConfig(UndertowDeploymentInfoService.java:505) at org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService.start(UndertowDeploymentInfoService.java:245) at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1948) at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1881) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_51] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_51] at java.lang.Thread.run(Thread.java:744) [rt.jar:1.7.0_51] Caused by: java.io.IOException: Incorrect function. at sun.nio.fs.WindowsWatchService$Poller.implRegister(WindowsWatchService.java:405) [rt.jar:1.7.0_51] at sun.nio.fs.AbstractPoller.processRequests(AbstractPoller.java:260) [rt.jar:1.7.0_51] at sun.nio.fs.WindowsWatchService$Poller.run(WindowsWatchService.java:531) [rt.jar:1.7.0_51] ... 1 more 12:30:06,727 INFO [org.wildfly.extension.undertow] (MSC service thread 1-2) JBAS017534: Registered web context: /dynproj 12:30:06,767 INFO [org.jboss.as.server] (DeploymentScanner-threads - 1) JBAS018559: Deployed "dynproj.war" (runtime-name : "dynproj.war")
My setup is this:
OS X is my host OS, I'm running Windows 7 in virtualbox and have a shared folder from the host OS mounted in Windows. On this share, I have WildFly 8.1. I ran Eclipse Luna SR1 with JBoss Tools 4.2.1.CR1 installed, but it seems that this issue is not related to Eclipse. The main problem seems to be the remote FS. Dominik found this:
https://docs.oracle.com/javase/7/docs/api/java/nio/file/WatchService.html
If a watched file is not located on a local storage device then it is implementation specific if changes to the file can be detected. In particular, it is not required that changes to files carried out on remote systems be detected.
This happened with Oracle JRE 1.8.0_25 and JDK 1.7.0_51, I haven't tried others.
So in fact this behavior may be kind of expected. But maybe instead of throwing errors, the server might want to have a more graceful behavior?
Also, feel free to let me know if you need more details or if you want me to try different versions of WF or other server, but chances are this will happen in other versions as well.