Unfortunately I cannot reproduce it reliably. It's hard with concurrency issues like that.
I was hoping the stack trace might lead to some thoughts about what may be going on. Is there anything I could be doing incorrectly to lead to this exception? If not any other theories based on the stack trace? I could try to introduce a delay somewhere even in the Jetty code to get it to occur but could use some help to narrow it down. Rosen On Wed, Jul 2, 2014 at 3:27 PM, Joakim Erdfelt <[email protected]> wrote: > If you have a reproducible testcase we'd like to see it. > The exception is saying that the there was an extra frame (for a text > message) that arrived after the supposed last frame of that same message. > > -- > Joakim Erdfelt <[email protected]> > webtide.com <http://www.webtide.com/> - intalio.com/jetty > Expert advice, services and support from from the Jetty & CometD experts > eclipse.org/jetty - cometd.org > > > On Wed, Jul 2, 2014 at 11:40 AM, Rossen Stoyanchev < > [email protected]> wrote: > >> hi- >> >> I have a simple unit test in which a Jetty WebSocketClient connects to a >> Jetty server and sends 100 messages in a loop that the server then echoes >> back. When all messages are received in the client, the test is complete. >> This runs okay most of the times except occasionally on our CI server there >> is a client-side failure after 40-50 messages that looks like this: >> >> java.io.IOException: Cannot append to finished buffer >> at >> org.eclipse.jetty.websocket.common.message.SimpleTextMessage.appendFrame(SimpleTextMessage.java:47) >> at >> org.eclipse.jetty.websocket.common.events.AbstractEventDriver.appendMessage(AbstractEventDriver.java:60) >> at >> org.eclipse.jetty.websocket.common.events.JettyAnnotatedEventDriver.onTextFrame(JettyAnnotatedEventDriver.java:201) >> at >> org.eclipse.jetty.websocket.common.events.AbstractEventDriver.incomingFrame(AbstractEventDriver.java:160) >> at >> org.eclipse.jetty.websocket.common.WebSocketSession.incomingFrame(WebSocketSession.java:302) >> at >> org.eclipse.jetty.websocket.common.extensions.ExtensionStack.incomingFrame(ExtensionStack.java:215) >> at >> org.eclipse.jetty.websocket.common.Parser.notifyFrame(Parser.java:220) >> at >> org.eclipse.jetty.websocket.common.Parser.parse(Parser.java:258) >> at >> org.eclipse.jetty.websocket.common.io.AbstractWebSocketConnection.readParse(AbstractWebSocketConnection.java:602) >> at >> org.eclipse.jetty.websocket.common.io.AbstractWebSocketConnection.onFillable(AbstractWebSocketConnection.java:458) >> at >> org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:534) >> at >> org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:607) >> at >> org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:536) >> at java.lang.Thread.run(Thread.java:745) >> >> From what I can see all server messages are processed sequentially >> (always the same Jetty thread) while client side messages are received in >> different threads. It is possible there is an issue with concurrency in the >> client? >> >> Rossen >> >> >> >> _______________________________________________ >> jetty-users mailing list >> [email protected] >> To change your delivery options, retrieve your password, or unsubscribe >> from this list, visit >> https://dev.eclipse.org/mailman/listinfo/jetty-users >> > > > _______________________________________________ > jetty-users mailing list > [email protected] > To change your delivery options, retrieve your password, or unsubscribe > from this list, visit > https://dev.eclipse.org/mailman/listinfo/jetty-users >
_______________________________________________ jetty-users mailing list [email protected] To change your delivery options, retrieve your password, or unsubscribe from this list, visit https://dev.eclipse.org/mailman/listinfo/jetty-users
