18:09:09.052 [Test worker] DEBUG ersatz.undertow - starting undertow server ersatz.undertow.Undertow@2ac4ea9d
18:09:09.053 [XNIO-59 I/O-1] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-59 I/O-1', selector sun.nio.ch.EPollSelectorImpl@358b79d
18:09:09.057 [XNIO-59 I/O-3] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-59 I/O-3', selector sun.nio.ch.EPollSelectorImpl@743620e6
18:09:09.063 [XNIO-59 I/O-5] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-59 I/O-5', selector sun.nio.ch.EPollSelectorImpl@5b1b0da0
18:09:09.063 [XNIO-59 I/O-4] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-59 I/O-4', selector sun.nio.ch.EPollSelectorImpl@4b448123
18:09:09.057 [XNIO-59 I/O-2] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-59 I/O-2', selector sun.nio.ch.EPollSelectorImpl@55837ae3
18:09:09.066 [XNIO-59 I/O-6] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-59 I/O-6', selector sun.nio.ch.EPollSelectorImpl@2f725a6d
18:09:09.067 [XNIO-59 I/O-7] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-59 I/O-7', selector sun.nio.ch.EPollSelectorImpl@2989d46d
18:09:09.069 [XNIO-59 I/O-8] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-59 I/O-8', selector sun.nio.ch.EPollSelectorImpl@1ca3192
18:09:09.069 [XNIO-59 Accept] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-59 Accept', selector sun.nio.ch.EPollSelectorImpl@50ea6b83
18:09:09.069 [Test worker] DEBUG ersatz.undertow - Configuring listener with protocol HTTP for interface localhost and port 0
18:09:09.070 [Test worker] DEBUG ersatz.undertow - Configuring listener with protocol HTTPS for interface localhost and port 0
18:09:09.083 [XNIO-59 task-1] DEBUG com.stehno.ersatz.ErsatzServer - Request: { OPTIONS /foo (query=[:], headers={Connection=[Keep-Alive], Accept-Encoding=[gzip], User-Agent=[okhttp/3.5.0], Host=[localhost:36261]}, cookies=[:]): <empty> }
18:09:09.084 [XNIO-59 task-1] DEBUG com.stehno.ersatz.ErsatzServer - Response({Allow=[GET, HEAD, POST]}): <empty>
18:09:09.104 [XNIO-59 task-2] DEBUG com.stehno.ersatz.ErsatzServer - Request: { OPTIONS /foo (query=[:], headers={Connection=[Keep-Alive], Accept-Encoding=[gzip], User-Agent=[okhttp/3.5.0], Host=[localhost:36261]}, cookies=[:]): <empty> }
18:09:09.105 [XNIO-59 task-2] DEBUG com.stehno.ersatz.ErsatzServer - Response({Allow=[GET, HEAD, POST]}): <empty>
18:09:09.107 [Test worker] DEBUG ersatz.undertow - stopping undertow server ersatz.undertow.Undertow@2ac4ea9d
18:09:09.110 [Test worker] DEBUG ersatz.undertow - starting undertow server ersatz.undertow.Undertow@5fc518d7
18:09:09.119 [XNIO-60 I/O-1] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-60 I/O-1', selector sun.nio.ch.EPollSelectorImpl@b809d07
18:09:09.123 [XNIO-60 I/O-2] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-60 I/O-2', selector sun.nio.ch.EPollSelectorImpl@276beea9
18:09:09.123 [XNIO-60 I/O-3] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-60 I/O-3', selector sun.nio.ch.EPollSelectorImpl@d9ba321
18:09:09.124 [XNIO-60 I/O-4] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-60 I/O-4', selector sun.nio.ch.EPollSelectorImpl@426071fa
18:09:09.124 [XNIO-60 I/O-5] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-60 I/O-5', selector sun.nio.ch.EPollSelectorImpl@27f3f334
18:09:09.124 [XNIO-60 I/O-6] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-60 I/O-6', selector sun.nio.ch.EPollSelectorImpl@149e48ba
18:09:09.131 [XNIO-60 I/O-7] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-60 I/O-7', selector sun.nio.ch.EPollSelectorImpl@19970f6
18:09:09.136 [XNIO-60 I/O-8] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-60 I/O-8', selector sun.nio.ch.EPollSelectorImpl@6b150025
18:09:09.136 [Test worker] DEBUG ersatz.undertow - Configuring listener with protocol HTTP for interface localhost and port 0
18:09:09.137 [Test worker] DEBUG ersatz.undertow - Configuring listener with protocol HTTPS for interface localhost and port 0
18:09:09.136 [XNIO-60 Accept] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-60 Accept', selector sun.nio.ch.EPollSelectorImpl@316f4b7e
18:09:09.207 [XNIO-60 task-3] DEBUG com.stehno.ersatz.ErsatzServer - Request: { OPTIONS /foo (query=[:], headers={Connection=[Keep-Alive], Accept-Encoding=[gzip], User-Agent=[okhttp/3.5.0], Host=[localhost:39879]}, cookies=[:]): <empty> }
18:09:09.207 [XNIO-60 task-3] DEBUG com.stehno.ersatz.ErsatzServer - Response({Allow=[GET, HEAD, POST]}): <empty>
18:09:09.217 [XNIO-60 task-4] DEBUG com.stehno.ersatz.ErsatzServer - Request: { OPTIONS /foo (query=[:], headers={Connection=[Keep-Alive], Accept-Encoding=[gzip], User-Agent=[okhttp/3.5.0], Host=[localhost:39879]}, cookies=[:]): <empty> }
18:09:09.218 [XNIO-60 task-4] DEBUG com.stehno.ersatz.ErsatzServer - Response({Allow=[GET, HEAD, POST]}): <empty>
18:09:09.220 [Test worker] DEBUG ersatz.undertow - stopping undertow server ersatz.undertow.Undertow@5fc518d7
18:09:09.223 [Test worker] DEBUG ersatz.undertow - starting undertow server ersatz.undertow.Undertow@5ae12352
18:09:09.231 [XNIO-61 I/O-1] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-61 I/O-1', selector sun.nio.ch.EPollSelectorImpl@2f44db74
18:09:09.235 [XNIO-61 I/O-3] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-61 I/O-3', selector sun.nio.ch.EPollSelectorImpl@438edf54
18:09:09.235 [XNIO-61 I/O-2] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-61 I/O-2', selector sun.nio.ch.EPollSelectorImpl@3878cce6
18:09:09.244 [XNIO-61 I/O-4] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-61 I/O-4', selector sun.nio.ch.EPollSelectorImpl@79fe41b4
18:09:09.245 [XNIO-61 I/O-5] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-61 I/O-5', selector sun.nio.ch.EPollSelectorImpl@b005f1c
18:09:09.245 [XNIO-61 I/O-8] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-61 I/O-8', selector sun.nio.ch.EPollSelectorImpl@4e084627
18:09:09.245 [XNIO-61 I/O-6] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-61 I/O-6', selector sun.nio.ch.EPollSelectorImpl@5cfe9ddc
18:09:09.245 [XNIO-61 I/O-7] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-61 I/O-7', selector sun.nio.ch.EPollSelectorImpl@486f4128
18:09:09.245 [Test worker] DEBUG ersatz.undertow - Configuring listener with protocol HTTP for interface localhost and port 0
18:09:09.245 [XNIO-61 Accept] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-61 Accept', selector sun.nio.ch.EPollSelectorImpl@e1eeffd
18:09:09.246 [Test worker] DEBUG ersatz.undertow - Configuring listener with protocol HTTPS for interface localhost and port 0
18:09:09.252 [XNIO-61 task-1] DEBUG com.stehno.ersatz.ErsatzServer - Request: { OPTIONS /foo (query=[:], headers={Connection=[Keep-Alive], Accept-Encoding=[gzip], User-Agent=[okhttp/3.5.0], Host=[localhost:41719]}, cookies=[:]): <empty> }
18:09:09.252 [XNIO-61 task-1] DEBUG com.stehno.ersatz.ErsatzServer - Response({Allow=[GET, HEAD, POST]}): <empty>
18:09:09.259 [XNIO-61 task-2] DEBUG com.stehno.ersatz.ErsatzServer - Request: { OPTIONS /foo (query=[:], headers={Connection=[Keep-Alive], Accept-Encoding=[gzip], User-Agent=[okhttp/3.5.0], Host=[localhost:41719]}, cookies=[:]): <empty> }
18:09:09.260 [XNIO-61 task-2] DEBUG com.stehno.ersatz.ErsatzServer - Response({Allow=[GET, HEAD, POST]}): <empty>
18:09:09.261 [Test worker] DEBUG ersatz.undertow - stopping undertow server ersatz.undertow.Undertow@5ae12352
18:09:09.265 [Test worker] DEBUG ersatz.undertow - starting undertow server ersatz.undertow.Undertow@7b1ddfa3
18:09:09.267 [XNIO-62 I/O-1] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-62 I/O-1', selector sun.nio.ch.EPollSelectorImpl@55d89143
18:09:09.268 [XNIO-62 I/O-2] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-62 I/O-2', selector sun.nio.ch.EPollSelectorImpl@63ab983f
18:09:09.273 [XNIO-62 I/O-4] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-62 I/O-4', selector sun.nio.ch.EPollSelectorImpl@15bbb768
18:09:09.273 [XNIO-62 I/O-3] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-62 I/O-3', selector sun.nio.ch.EPollSelectorImpl@5077fabf
18:09:09.279 [XNIO-62 I/O-6] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-62 I/O-6', selector sun.nio.ch.EPollSelectorImpl@2a2dbf7a
18:09:09.283 [XNIO-62 I/O-7] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-62 I/O-7', selector sun.nio.ch.EPollSelectorImpl@feca69a
18:09:09.284 [XNIO-62 I/O-8] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-62 I/O-8', selector sun.nio.ch.EPollSelectorImpl@2bb53ce8
18:09:09.273 [XNIO-62 I/O-5] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-62 I/O-5', selector sun.nio.ch.EPollSelectorImpl@7cddbb5f
18:09:09.284 [Test worker] DEBUG ersatz.undertow - Configuring listener with protocol HTTP for interface localhost and port 0
18:09:09.285 [Test worker] DEBUG ersatz.undertow - Configuring listener with protocol HTTPS for interface localhost and port 0
18:09:09.285 [XNIO-62 Accept] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-62 Accept', selector sun.nio.ch.EPollSelectorImpl@763f6cc2
18:09:09.363 [XNIO-62 task-3] DEBUG com.stehno.ersatz.ErsatzServer - Request: { OPTIONS /foo (query=[:], headers={Connection=[Keep-Alive], Accept-Encoding=[gzip], User-Agent=[okhttp/3.5.0], Host=[localhost:37945]}, cookies=[:]): <empty> }
18:09:09.363 [XNIO-62 task-3] DEBUG com.stehno.ersatz.ErsatzServer - Response({Allow=[GET, HEAD, POST]}): <empty>
18:09:09.370 [XNIO-62 task-4] DEBUG com.stehno.ersatz.ErsatzServer - Request: { OPTIONS /foo (query=[:], headers={Connection=[Keep-Alive], Accept-Encoding=[gzip], User-Agent=[okhttp/3.5.0], Host=[localhost:37945]}, cookies=[:]): <empty> }
18:09:09.371 [XNIO-62 task-4] DEBUG com.stehno.ersatz.ErsatzServer - Response({Allow=[GET, HEAD, POST]}): <empty>
18:09:09.372 [Test worker] DEBUG ersatz.undertow - stopping undertow server ersatz.undertow.Undertow@7b1ddfa3
18:09:09.377 [Test worker] DEBUG ersatz.undertow - starting undertow server ersatz.undertow.Undertow@d5912f4
18:09:09.381 [XNIO-63 I/O-1] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-63 I/O-1', selector sun.nio.ch.EPollSelectorImpl@167ef5fa
18:09:09.383 [XNIO-63 I/O-2] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-63 I/O-2', selector sun.nio.ch.EPollSelectorImpl@2908f739
18:09:09.395 [XNIO-63 I/O-3] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-63 I/O-3', selector sun.nio.ch.EPollSelectorImpl@680d093b
18:09:09.398 [XNIO-63 I/O-4] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-63 I/O-4', selector sun.nio.ch.EPollSelectorImpl@76dae400
18:09:09.398 [XNIO-63 I/O-5] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-63 I/O-5', selector sun.nio.ch.EPollSelectorImpl@20ba4434
18:09:09.405 [XNIO-63 I/O-6] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-63 I/O-6', selector sun.nio.ch.EPollSelectorImpl@55b16c99
18:09:09.407 [XNIO-63 I/O-8] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-63 I/O-8', selector sun.nio.ch.EPollSelectorImpl@7aa89fa9
18:09:09.407 [Test worker] DEBUG ersatz.undertow - Configuring listener with protocol HTTP for interface localhost and port 0
18:09:09.407 [XNIO-63 Accept] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-63 Accept', selector sun.nio.ch.EPollSelectorImpl@116f01c8
18:09:09.405 [XNIO-63 I/O-7] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-63 I/O-7', selector sun.nio.ch.EPollSelectorImpl@1fbff840
18:09:09.408 [Test worker] DEBUG ersatz.undertow - Configuring listener with protocol HTTPS for interface localhost and port 0
18:09:09.424 [XNIO-63 task-1] DEBUG com.stehno.ersatz.ErsatzServer - Request: { OPTIONS /foo (query=[:], headers={Connection=[Keep-Alive], Accept-Encoding=[gzip], User-Agent=[okhttp/3.5.0], Host=[localhost:46219]}, cookies=[:]): <empty> }
18:09:09.425 [XNIO-63 task-1] DEBUG com.stehno.ersatz.ErsatzServer - Response({Allow=[GET, HEAD, POST]}): <empty>
18:09:09.435 [XNIO-63 task-2] DEBUG com.stehno.ersatz.ErsatzServer - Request: { OPTIONS /foo (query=[:], headers={Connection=[Keep-Alive], Accept-Encoding=[gzip], User-Agent=[okhttp/3.5.0], Host=[localhost:46219]}, cookies=[:]): <empty> }
18:09:09.436 [XNIO-63 task-2] DEBUG com.stehno.ersatz.ErsatzServer - Response({Allow=[GET, HEAD, POST]}): <empty>
18:09:09.437 [Test worker] DEBUG ersatz.undertow - stopping undertow server ersatz.undertow.Undertow@d5912f4
18:09:09.440 [Test worker] DEBUG ersatz.undertow - starting undertow server ersatz.undertow.Undertow@41f2d056
18:09:09.442 [XNIO-63 task-2] DEBUG ersatz.undertow.request.io - UT005013: An IOException occurred
java.nio.channels.ClosedChannelException: null
at sun.nio.ch.SocketChannelImpl.shutdownOutput(SocketChannelImpl.java:797)
at ersatz.xnio.nio.NioSocketConduit.write(NioSocketConduit.java:170)
at ersatz.undertow.server.protocol.http.HttpResponseConduit.processWrite(HttpResponseConduit.java:242)
at ersatz.undertow.server.protocol.http.HttpResponseConduit.flush(HttpResponseConduit.java:739)
at ersatz.undertow.conduits.AbstractFixedLengthStreamSinkConduit.flush(AbstractFixedLengthStreamSinkConduit.java:229)
at ersatz.xnio.conduits.ConduitStreamSinkChannel.flush(ConduitStreamSinkChannel.java:162)
at ersatz.undertow.channels.DetachableStreamSinkChannel.flush(DetachableStreamSinkChannel.java:119)
at ersatz.xnio.channels.Channels.flushBlocking(Channels.java:63)
at ersatz.undertow.io.UndertowOutputStream.close(UndertowOutputStream.java:344)
at ersatz.undertow.io.BlockingSenderImpl.close(BlockingSenderImpl.java:170)
at ersatz.undertow.io.DefaultIoCallback.onComplete(DefaultIoCallback.java:54)
at ersatz.undertow.io.BlockingSenderImpl.invokeOnComplete(BlockingSenderImpl.java:227)
at ersatz.undertow.io.BlockingSenderImpl.send(BlockingSenderImpl.java:95)
at ersatz.undertow.io.BlockingSenderImpl.send(BlockingSenderImpl.java:117)
at com.stehno.ersatz.ErsatzServer.send(ErsatzServer.groovy:494)
at com.stehno.ersatz.ErsatzServer.access$0(ErsatzServer.groovy)
at com.stehno.ersatz.ErsatzServer$1.handleRequest(ErsatzServer.groovy:370)
at ersatz.undertow.server.handlers.HttpTraceHandler.handleRequest(HttpTraceHandler.java:70)
at ersatz.undertow.server.handlers.encoding.EncodingHandler.handleRequest(EncodingHandler.java:72)
at ersatz.undertow.server.Connectors.executeRootHandler(Connectors.java:332)
at ersatz.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:812)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Suppressed: java.nio.channels.ClosedByInterruptException: null
at java.nio.channels.spi.AbstractInterruptibleChannel.end(AbstractInterruptibleChannel.java:202)
at sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:478)
at ersatz.xnio.nio.NioSocketConduit.write(NioSocketConduit.java:164)
... 22 common frames omitted
18:09:09.448 [XNIO-64 I/O-1] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-64 I/O-1', selector sun.nio.ch.EPollSelectorImpl@3a0897ce
18:09:09.449 [XNIO-64 I/O-2] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-64 I/O-2', selector sun.nio.ch.EPollSelectorImpl@66c7b9c9
18:09:09.451 [XNIO-64 I/O-3] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-64 I/O-3', selector sun.nio.ch.EPollSelectorImpl@1f9752fd
18:09:09.462 [XNIO-64 I/O-4] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-64 I/O-4', selector sun.nio.ch.EPollSelectorImpl@587147bc
18:09:09.462 [XNIO-64 I/O-5] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-64 I/O-5', selector sun.nio.ch.EPollSelectorImpl@224c96a3
18:09:09.462 [XNIO-64 I/O-6] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-64 I/O-6', selector sun.nio.ch.EPollSelectorImpl@2ae20292
18:09:09.463 [XNIO-64 I/O-7] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-64 I/O-7', selector sun.nio.ch.EPollSelectorImpl@17276a40
18:09:09.463 [XNIO-64 I/O-8] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-64 I/O-8', selector sun.nio.ch.EPollSelectorImpl@39dbe91
18:09:09.464 [Test worker] DEBUG ersatz.undertow - Configuring listener with protocol HTTP for interface localhost and port 0
18:09:09.464 [XNIO-64 Accept] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-64 Accept', selector sun.nio.ch.EPollSelectorImpl@29cf1bdb
18:09:09.464 [Test worker] DEBUG ersatz.undertow - Configuring listener with protocol HTTPS for interface localhost and port 0
18:09:09.539 [XNIO-64 task-3] DEBUG com.stehno.ersatz.ErsatzServer - Request: { OPTIONS /foo (query=[:], headers={Connection=[Keep-Alive], Accept-Encoding=[gzip], User-Agent=[okhttp/3.5.0], Host=[localhost:39933]}, cookies=[:]): <empty> }
18:09:09.539 [XNIO-64 task-3] DEBUG com.stehno.ersatz.ErsatzServer - Response({Allow=[GET, HEAD, POST]}): <empty>
18:09:09.543 [XNIO-64 task-4] DEBUG com.stehno.ersatz.ErsatzServer - Request: { OPTIONS /foo (query=[:], headers={Connection=[Keep-Alive], Accept-Encoding=[gzip], User-Agent=[okhttp/3.5.0], Host=[localhost:39933]}, cookies=[:]): <empty> }
18:09:09.544 [XNIO-64 task-4] DEBUG com.stehno.ersatz.ErsatzServer - Response({Allow=[GET, HEAD, POST]}): <empty>
18:09:09.545 [Test worker] DEBUG ersatz.undertow - stopping undertow server ersatz.undertow.Undertow@41f2d056
18:09:09.549 [Test worker] DEBUG ersatz.undertow - starting undertow server ersatz.undertow.Undertow@31767b12
18:09:09.551 [XNIO-65 I/O-1] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-65 I/O-1', selector sun.nio.ch.EPollSelectorImpl@4e9d1e8e
18:09:09.552 [XNIO-65 I/O-2] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-65 I/O-2', selector sun.nio.ch.EPollSelectorImpl@3d5de7c7
18:09:09.552 [XNIO-65 I/O-3] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-65 I/O-3', selector sun.nio.ch.EPollSelectorImpl@45d8e465
18:09:09.559 [XNIO-65 I/O-4] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-65 I/O-4', selector sun.nio.ch.EPollSelectorImpl@187b6366
18:09:09.560 [XNIO-65 I/O-5] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-65 I/O-5', selector sun.nio.ch.EPollSelectorImpl@d2abda9
18:09:09.563 [XNIO-65 I/O-6] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-65 I/O-6', selector sun.nio.ch.EPollSelectorImpl@61ace63a
18:09:09.563 [XNIO-65 I/O-7] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-65 I/O-7', selector sun.nio.ch.EPollSelectorImpl@f7ff398
18:09:09.564 [XNIO-65 I/O-8] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-65 I/O-8', selector sun.nio.ch.EPollSelectorImpl@7516890c
18:09:09.564 [Test worker] DEBUG ersatz.undertow - Configuring listener with protocol HTTP for interface localhost and port 0
18:09:09.564 [XNIO-65 Accept] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-65 Accept', selector sun.nio.ch.EPollSelectorImpl@42c708de
18:09:09.565 [Test worker] DEBUG ersatz.undertow - Configuring listener with protocol HTTPS for interface localhost and port 0
18:09:09.575 [XNIO-65 task-1] DEBUG com.stehno.ersatz.ErsatzServer - Request: { OPTIONS /foo (query=[:], headers={Connection=[Keep-Alive], Accept-Encoding=[gzip], User-Agent=[okhttp/3.5.0], Host=[localhost:44515]}, cookies=[:]): <empty> }
18:09:09.575 [XNIO-65 task-1] DEBUG com.stehno.ersatz.ErsatzServer - Response({Allow=[GET, HEAD, POST]}): <empty>
18:09:09.583 [XNIO-65 task-2] DEBUG com.stehno.ersatz.ErsatzServer - Request: { OPTIONS /foo (query=[:], headers={Connection=[Keep-Alive], Accept-Encoding=[gzip], User-Agent=[okhttp/3.5.0], Host=[localhost:44515]}, cookies=[:]): <empty> }
18:09:09.583 [XNIO-65 task-2] DEBUG com.stehno.ersatz.ErsatzServer - Response({Allow=[GET, HEAD, POST]}): <empty>
18:09:09.585 [Test worker] DEBUG ersatz.undertow - stopping undertow server ersatz.undertow.Undertow@31767b12
18:09:09.590 [Test worker] DEBUG ersatz.undertow - starting undertow server ersatz.undertow.Undertow@3f026a7b
18:09:09.595 [XNIO-66 I/O-1] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-66 I/O-1', selector sun.nio.ch.EPollSelectorImpl@1c87085e
18:09:09.596 [XNIO-66 I/O-2] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-66 I/O-2', selector sun.nio.ch.EPollSelectorImpl@4a7a0d70
18:09:09.599 [XNIO-66 I/O-3] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-66 I/O-3', selector sun.nio.ch.EPollSelectorImpl@b536ee
18:09:09.603 [XNIO-66 I/O-4] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-66 I/O-4', selector sun.nio.ch.EPollSelectorImpl@713b009a
18:09:09.603 [XNIO-66 I/O-5] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-66 I/O-5', selector sun.nio.ch.EPollSelectorImpl@1a6d5f8e
18:09:09.607 [XNIO-66 I/O-6] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-66 I/O-6', selector sun.nio.ch.EPollSelectorImpl@609de782
18:09:09.608 [XNIO-66 I/O-7] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-66 I/O-7', selector sun.nio.ch.EPollSelectorImpl@42247b59
18:09:09.615 [XNIO-66 I/O-8] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-66 I/O-8', selector sun.nio.ch.EPollSelectorImpl@59c04d83
18:09:09.618 [Test worker] DEBUG ersatz.undertow - Configuring listener with protocol HTTP for interface localhost and port 0
18:09:09.618 [XNIO-66 Accept] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-66 Accept', selector sun.nio.ch.EPollSelectorImpl@4e607ef
18:09:09.619 [Test worker] DEBUG ersatz.undertow - Configuring listener with protocol HTTPS for interface localhost and port 0
18:09:09.721 [XNIO-66 task-3] DEBUG com.stehno.ersatz.ErsatzServer - Request: { OPTIONS /foo (query=[:], headers={Connection=[Keep-Alive], Accept-Encoding=[gzip], User-Agent=[okhttp/3.5.0], Host=[localhost:40485]}, cookies=[:]): <empty> }
18:09:09.721 [XNIO-66 task-3] DEBUG com.stehno.ersatz.ErsatzServer - Response({Allow=[GET, HEAD, POST]}): <empty>
18:09:09.727 [XNIO-66 task-4] DEBUG com.stehno.ersatz.ErsatzServer - Request: { OPTIONS /foo (query=[:], headers={Connection=[Keep-Alive], Accept-Encoding=[gzip], User-Agent=[okhttp/3.5.0], Host=[localhost:40485]}, cookies=[:]): <empty> }
18:09:09.727 [XNIO-66 task-4] DEBUG com.stehno.ersatz.ErsatzServer - Response({Allow=[GET, HEAD, POST]}): <empty>
18:09:09.729 [Test worker] DEBUG ersatz.undertow - stopping undertow server ersatz.undertow.Undertow@3f026a7b
18:09:09.732 [XNIO-66 task-4] DEBUG ersatz.undertow.request.io - UT005013: An IOException occurred
java.nio.channels.ClosedChannelException: null
at sun.nio.ch.SocketChannelImpl.shutdownOutput(SocketChannelImpl.java:797)
at ersatz.xnio.nio.NioSocketConduit.write(NioSocketConduit.java:170)
at ersatz.undertow.protocols.ssl.SslConduit.doWrap(SslConduit.java:892)
at ersatz.undertow.protocols.ssl.SslConduit.write(SslConduit.java:371)
at ersatz.undertow.server.protocol.http.HttpResponseConduit.processWrite(HttpResponseConduit.java:242)
at ersatz.undertow.server.protocol.http.HttpResponseConduit.flush(HttpResponseConduit.java:739)
at ersatz.undertow.conduits.AbstractFixedLengthStreamSinkConduit.flush(AbstractFixedLengthStreamSinkConduit.java:229)
at ersatz.xnio.conduits.ConduitStreamSinkChannel.flush(ConduitStreamSinkChannel.java:162)
at ersatz.undertow.channels.DetachableStreamSinkChannel.flush(DetachableStreamSinkChannel.java:119)
at ersatz.xnio.channels.Channels.flushBlocking(Channels.java:63)
at ersatz.undertow.io.UndertowOutputStream.close(UndertowOutputStream.java:344)
at ersatz.undertow.io.BlockingSenderImpl.close(BlockingSenderImpl.java:170)
at ersatz.undertow.io.DefaultIoCallback.onComplete(DefaultIoCallback.java:54)
at ersatz.undertow.io.BlockingSenderImpl.invokeOnComplete(BlockingSenderImpl.java:227)
at ersatz.undertow.io.BlockingSenderImpl.send(BlockingSenderImpl.java:95)
at ersatz.undertow.io.BlockingSenderImpl.send(BlockingSenderImpl.java:117)
at com.stehno.ersatz.ErsatzServer.send(ErsatzServer.groovy:494)
at com.stehno.ersatz.ErsatzServer.access$0(ErsatzServer.groovy)
at com.stehno.ersatz.ErsatzServer$1.handleRequest(ErsatzServer.groovy:370)
at ersatz.undertow.server.handlers.HttpTraceHandler.handleRequest(HttpTraceHandler.java:70)
at ersatz.undertow.server.handlers.encoding.EncodingHandler.handleRequest(EncodingHandler.java:72)
at ersatz.undertow.server.Connectors.executeRootHandler(Connectors.java:332)
at ersatz.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:812)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Suppressed: java.nio.channels.ClosedByInterruptException: null
at java.nio.channels.spi.AbstractInterruptibleChannel.end(AbstractInterruptibleChannel.java:202)
at sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:478)
at ersatz.xnio.nio.NioSocketConduit.write(NioSocketConduit.java:164)
... 24 common frames omitted
18:09:09.733 [Test worker] DEBUG ersatz.undertow - starting undertow server ersatz.undertow.Undertow@6a95615e
18:09:09.741 [XNIO-67 I/O-1] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-67 I/O-1', selector sun.nio.ch.EPollSelectorImpl@1c85c2
18:09:09.744 [XNIO-67 I/O-2] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-67 I/O-2', selector sun.nio.ch.EPollSelectorImpl@2963a484
18:09:09.763 [XNIO-67 I/O-3] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-67 I/O-3', selector sun.nio.ch.EPollSelectorImpl@25edfefd
18:09:09.763 [XNIO-67 I/O-4] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-67 I/O-4', selector sun.nio.ch.EPollSelectorImpl@4344dafa
18:09:09.764 [XNIO-67 I/O-6] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-67 I/O-6', selector sun.nio.ch.EPollSelectorImpl@2cd536ff
18:09:09.775 [XNIO-67 I/O-7] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-67 I/O-7', selector sun.nio.ch.EPollSelectorImpl@20b7b9ad
18:09:09.776 [XNIO-67 I/O-8] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-67 I/O-8', selector sun.nio.ch.EPollSelectorImpl@521c745d
18:09:09.763 [XNIO-67 I/O-5] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-67 I/O-5', selector sun.nio.ch.EPollSelectorImpl@595c1599
18:09:09.779 [Test worker] DEBUG ersatz.undertow - Configuring listener with protocol HTTP for interface localhost and port 0
18:09:09.779 [XNIO-67 Accept] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-67 Accept', selector sun.nio.ch.EPollSelectorImpl@492f8d1f
18:09:09.779 [Test worker] DEBUG ersatz.undertow - Configuring listener with protocol HTTPS for interface localhost and port 0
18:09:09.804 [XNIO-67 task-1] DEBUG com.stehno.ersatz.ErsatzServer - Request: { OPTIONS /foo (query=[:], headers={Connection=[Keep-Alive], Accept-Encoding=[gzip], User-Agent=[okhttp/3.5.0], Host=[localhost:45061]}, cookies=[:]): <empty> }
18:09:09.805 [XNIO-67 task-1] DEBUG com.stehno.ersatz.ErsatzServer - Response({Allow=[GET, HEAD, POST]}): <empty>
18:09:09.819 [XNIO-67 task-2] DEBUG com.stehno.ersatz.ErsatzServer - Request: { OPTIONS /foo (query=[:], headers={Connection=[Keep-Alive], Accept-Encoding=[gzip], User-Agent=[okhttp/3.5.0], Host=[localhost:45061]}, cookies=[:]): <empty> }
18:09:09.820 [XNIO-67 task-2] DEBUG com.stehno.ersatz.ErsatzServer - Response({Allow=[GET, HEAD, POST]}): <empty>
18:09:09.822 [Test worker] DEBUG ersatz.undertow - stopping undertow server ersatz.undertow.Undertow@6a95615e
18:09:09.825 [Test worker] DEBUG ersatz.undertow - starting undertow server ersatz.undertow.Undertow@1ca37891
18:09:09.828 [XNIO-68 I/O-1] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-68 I/O-1', selector sun.nio.ch.EPollSelectorImpl@3532a07a
18:09:09.828 [XNIO-68 I/O-2] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-68 I/O-2', selector sun.nio.ch.EPollSelectorImpl@12455817
18:09:09.831 [XNIO-68 I/O-3] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-68 I/O-3', selector sun.nio.ch.EPollSelectorImpl@43b5236d
18:09:09.841 [XNIO-68 I/O-4] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-68 I/O-4', selector sun.nio.ch.EPollSelectorImpl@316783c6
18:09:09.855 [XNIO-68 I/O-5] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-68 I/O-5', selector sun.nio.ch.EPollSelectorImpl@24ef6d15
18:09:09.859 [XNIO-68 I/O-7] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-68 I/O-7', selector sun.nio.ch.EPollSelectorImpl@380426b0
18:09:09.859 [XNIO-68 I/O-6] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-68 I/O-6', selector sun.nio.ch.EPollSelectorImpl@6e094852
18:09:09.860 [XNIO-68 I/O-8] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-68 I/O-8', selector sun.nio.ch.EPollSelectorImpl@bef58c9
18:09:09.861 [Test worker] DEBUG ersatz.undertow - Configuring listener with protocol HTTP for interface localhost and port 0
18:09:09.862 [Test worker] DEBUG ersatz.undertow - Configuring listener with protocol HTTPS for interface localhost and port 0
18:09:09.864 [XNIO-68 Accept] DEBUG ersatz.xnio.nio - Started channel thread 'XNIO-68 Accept', selector sun.nio.ch.EPollSelectorImpl@5c4cfd89
18:09:09.963 [XNIO-68 task-3] DEBUG com.stehno.ersatz.ErsatzServer - Request: { OPTIONS /foo (query=[:], headers={Connection=[Keep-Alive], Accept-Encoding=[gzip], User-Agent=[okhttp/3.5.0], Host=[localhost:40209]}, cookies=[:]): <empty> }
18:09:09.963 [XNIO-68 task-3] DEBUG com.stehno.ersatz.ErsatzServer - Response({Allow=[GET, HEAD, POST]}): <empty>
18:09:09.978 [XNIO-68 task-4] DEBUG com.stehno.ersatz.ErsatzServer - Request: { OPTIONS /foo (query=[:], headers={Connection=[Keep-Alive], Accept-Encoding=[gzip], User-Agent=[okhttp/3.5.0], Host=[localhost:40209]}, cookies=[:]): <empty> }
18:09:09.979 [XNIO-68 task-4] DEBUG com.stehno.ersatz.ErsatzServer - Response({Allow=[GET, HEAD, POST]}): <empty>
18:09:09.981 [Test worker] DEBUG ersatz.undertow - stopping undertow server ersatz.undertow.Undertow@1ca37891