We don't see an exception. The received data simply doesn't match the data
sent.
On October 9, 2015 8:39:38 AM peter royal <peter.royal(a)pobox.com> wrote:
On 2015-10-09 09:05, Greg Shrack wrote:
> I'm seeing an inconsistent problem where some messages are corrupted. We're
> sending serialized objects over websockets, and are seeing some corrupted
> messages with larger messages and sometimes when sending more quickly.
> We've testing with a number of versions including undertow 1.1.8.Final, but
> was seeing the same issue with newer versions as well. Wireshark appears to
> show the corrupted data on the client side
Is it this stack trace?
ava.io.IOException:
io.undertow.websockets.core.WebSocketFrameCorruptedException: UT002010:
Received continuation data frame outside fragmented message
at
io.undertow.websockets.core.WebSocketChannel.parseFrame(WebSocketChannel.java:184)
~[undertow-core-1.2.8.Final.jar:1.2.8.Final]
at
io.undertow.server.protocol.framed.AbstractFramedChannel.receive(AbstractFramedChannel.java:340)
~[undertow-core-1.2.8.Final.jar:1.2.8.Final]
at
io.undertow.websockets.core.AbstractReceiveListener.handleEvent(AbstractReceiveListener.java:38)
[undertow-core-1.2.8.Final.jar:1.2.8.Final]
at
io.undertow.websockets.core.AbstractReceiveListener.handleEvent(AbstractReceiveListener.java:33)
[undertow-core-1.2.8.Final.jar:1.2.8.Final]
at
org.xnio.ChannelListeners.invokeChannelListener(ChannelListeners.java:92)
[xnio-api-3.3.1.Final.jar:3.3.1.Final]
at
io.undertow.server.protocol.framed.AbstractFramedChannel$FrameReadListener.handleEvent(AbstractFramedChannel.java:775)
[undertow-core-1.2.8.Final.jar:1.2.8.Final]
at
io.undertow.server.protocol.framed.AbstractFramedChannel$FrameReadListener.handleEvent(AbstractFramedChannel.java:763)
[undertow-core-1.2.8.Final.jar:1.2.8.Final]
at
org.xnio.ChannelListeners.invokeChannelListener(ChannelListeners.java:92)
[xnio-api-3.3.1.Final.jar:3.3.1.Final]
at
org.xnio.conduits.ReadReadyHandler$ChannelListenerHandler.readReady(ReadReadyHandler.java:66)
[xnio-api-3.3.1.Final.jar:3.3.1.Final]
at org.xnio.nio.NioSocketConduit.handleReady(NioSocketConduit.java:88)
[xnio-nio-3.3.1.Final.jar:3.3.1.Final]
at org.xnio.nio.WorkerThread.run(WorkerThread.java:539)
[xnio-nio-3.3.1.Final.jar:3.3.1.Final]
Caused by: io.undertow.websockets.core.WebSocketFrameCorruptedException:
UT002010: Received continuation data frame outside fragmented message
at
io.undertow.websockets.core.protocol.version07.WebSocket07Channel$WebSocketFrameHeader.validateDataFrame(WebSocket07Channel.java:418)
~[undertow-core-1.2.8.Final.jar:1.2.8.Final]
at
io.undertow.websockets.core.protocol.version07.WebSocket07Channel$WebSocketFrameHeader.handle(WebSocket07Channel.java:267)
~[undertow-core-1.2.8.Final.jar:1.2.8.Final]
at
io.undertow.websockets.core.WebSocketChannel.parseFrame(WebSocketChannel.java:174)
~[undertow-core-1.2.8.Final.jar:1.2.8.Final]
... 10 common frames omitted
I intermittently get the above with 1.2. I helped refactor the websocket
implementation in 1.3 and it should (hopefully) not exhibit that. I
haven't pushed it into my production applications yet though.
Have you tested one of the 1.3 candidates?
-pete
--
(peter.royal|osi)(a)pobox.com -
http://fotap.org/~osi [1]
Links:
------
[1]
http://fotap.org/~osi