Uploaded image for project: 'Hadoop Common'
  1. Hadoop Common
  2. HADOOP-4530

In fsck, HttpServletResponse sendError fails with IllegalStateException

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 0.18.1
    • 0.20.0
    • None
    • None
    • Reviewed

    Description

      When looking at HADOOP-4526, I tried using sendError at line:53.

      FsckServlet.java
                                      _
           49     } catch (IOException ie) {
           50       StringUtils.stringifyException(ie);
           51       LOG.warn(ie);
           52       String errMsg = "Fsck on path " + pmap.get("path") + " failed.";
           53       response.sendError(HttpServletResponse.SC_GONE, errMsg);
           54       throw ie;
           55     }
      

      However, it always failed with

      2008-10-27 22:39:07,359 WARN /: /fsck?path=%2Fuser:
      java.lang.IllegalStateException: Committed
        at org.mortbay.jetty.servlet.ServletHttpResponse.resetBuffer(ServletHttpResponse.java:212)
        at org.mortbay.jetty.servlet.ServletHttpResponse.sendError(ServletHttpResponse.java:375)
        at org.apache.hadoop.dfs.FsckServlet.doGet(FsckServlet.java:54)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
        at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:427)
        at org.mortbay.jetty.servlet.WebApplicationHandler.dispatch(WebApplicationHandler.java:475)
        at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:567)
        at org.mortbay.http.HttpContext.handle(HttpContext.java:1565)
        at org.mortbay.jetty.servlet.WebApplicationContext.handle(WebApplicationContext.java:635)
        at org.mortbay.http.HttpContext.handle(HttpContext.java:1517)
        at org.mortbay.http.HttpServer.service(HttpServer.java:954)
        at org.mortbay.http.HttpConnection.service(HttpConnection.java:814)
        at org.mortbay.http.HttpConnection.handleNext(HttpConnection.java:981)
        at org.mortbay.http.HttpConnection.handle(HttpConnection.java:831)
        at org.mortbay.http.SocketListener.handleConnection(SocketListener.java:244)
        at org.mortbay.util.ThreadedServer.handle(ThreadedServer.java:357)
        at org.mortbay.util.ThreadPool$PoolThread.run(ThreadPool.java:534)
      

      And client wasn't seeing the error.

      Attachments

        1. fsckError3.patch
          12 kB
          Hairong Kuang
        2. fsckError2.patch
          11 kB
          Hairong Kuang
        3. fsckError1.patch
          9 kB
          Hairong Kuang
        4. fsckError.patch
          4 kB
          Hairong Kuang

        Activity

          People

            hairong Hairong Kuang
            knoguchi Koji Noguchi
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: