Uploaded image for project: 'Identity Provider'
  1. Identity Provider
  2. IDP-596

malformed reload-service request loops infinitely

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 3.0.0
    • Fix Version/s: 3.1.0
    • Component/s: Administration
    • Labels:
      None

      Description

      The administrative endpoint to reload named services (at .../profile/admin/reload-service) requires an id query parameter. If you omit the id parameter, or set its value as empty (i.e., ?id=) then you get a "Service not found." response as expected back via HTTP but in addition the IdP starts looping with the following message appearing in the logs infinitely repeated:

      2015-02-06 11:32:45,427 - ERROR [net.shibboleth.idp.profile:-1] - Uncaught runtime exception
      java.lang.IllegalStateException: STREAM
      	at org.eclipse.jetty.server.Response.getWriter(Response.java:920)
      

      I'm guessing that this is because the error condition is handled by writing a complete response (line 104 of net.shibboleth.idp.profile.impl.ReloadServiceConfiguration), which commits the response and means that any subsequent attempt to do so will receive the IllegalStateException:

      getHttpServletResponse().sendError(HttpServletResponse.SC_NOT_FOUND, "Service not found.");
      

      My SWF-fu is insufficient to guess where that subsequent attempt might be or why the looping is occurring. I find it interesting that this isn't signalled using an event, though.

        Attachments

          Activity

            People

            Assignee:
            cantor.2@osu.edu Scott Cantor
            Reporter:
            ian@iay.org.uk Ian Young
            Watchers:
            2 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved:

                Time Tracking

                Estimated:
                Original Estimate - Not Specified
                Not Specified
                Remaining:
                Remaining Estimate - 0 minutes
                0m
                Logged:
                Time Spent - 15 minutes
                15m