Uploaded image for project: 'Undertow'
  1. Undertow
  2. UNDERTOW-332

IdleTimeoutConduit is always timedOut

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Obsolete
    • Icon: Major Major
    • 1.1.0.CR4
    • 1.1.Beta7
    • Core
    • None
    • Hide

      . Create a ServerEndpoint class which sets session timeout value somewhere in the onOpen() override
      . connect a websocket client
      . send/receive data before the timeout value
      . see that the socket is closed at the first timeout interval, even though the socket is not idle

      Show
      . Create a ServerEndpoint class which sets session timeout value somewhere in the onOpen() override . connect a websocket client . send/receive data before the timeout value . see that the socket is closed at the first timeout interval, even though the socket is not idle

      In my websocket endpoint, if I set javax.websocket.Session.setMaxIdleTimeout() to a value greater than 0 (for example 10000), the session always times out at the first interval, even if there is traffic sent or received over the websocket.

      While debugging, I noticed IdleTimeoutConduit is calling handleIdleTimeout() before each read or write. But because the timedOut member is initialized to true, and is never changed, handleIdleTimeout() always returns immediately and doesn't reach the code necessary to update the expireTime. It appears as though the timedOut variable should simply be initialized to false.

              sdouglas1@redhat.com Stuart Douglas (Inactive)
              mparker_polycom Matt Parker (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated:
                Resolved: