Uploaded image for project: 'RESTEasy'
  1. RESTEasy
  2. RESTEASY-1958

Reconnect delay override using last received 'retry' field value should not be a one time override.


    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Critical Critical
    • 3.7.0.Final, 4.1.0.Final
    • 3.6.0.Final, 4.0.0.Beta4, 3.6.2.Final
    • jaxrs

      According to my undertsanding of
      javax.ws.rs.sse.SseEventSource documentation, override of reconnect delay using last received 'retry' field value should not be a one time override. Contrary to override of reconnect delay using
      503 RETRY AFTER header wich is a one time override.

      By default, when a connection the the SSE endpoint is lost, the event source will wait 500 ms before attempting to reconnect to the SSE endpoint. 
      The SSE endpoint can however control the client-side retry delay by including a special retry field value in the any send event. JAX-RS
      SseEventSource tracks any received SSE event retry field values set by the endpoint and adjusts the reconnect delay accordingly, 
      using the last received retry field value as the reconnect delay. 
      SSE event source will automatically schedule a new reconnect attempt and use the received {@value javax.ws.rs.core.HttpHeaders#RETRY_AFTER} HTTP header
      value as a one-time override of the reconnect delay

            rhn-engineering-ema Jim Ma
            nicones Nicolas NESMON (Inactive)
            0 Vote for this issue
            6 Start watching this issue