Uploaded image for project: 'NetarchiveSuite'
  1. NetarchiveSuite
  2. NAS-2

Possible to store invalid set of crawlertraps to domain causing the domain to be unreadable

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • Major
    • I44
    • None
    • None
    • None

    Description

      One of our curators has recently managed to store invalid set of crawlertraps for the domain starpaint.dk.

      After that when trying to access the domain starpaint.dk, the following fatal error is shown on screen:

      "The regular expression '.*starpaint\dk\' is invalid. Please correct the expression."
      

      The bug details:

      dk.netarkivet.common.exceptions.ArgumentNotValid: The regular expression '.*starpaint\dk\' is invalid. Please correct
      the expression.
      	at dk.netarkivet.harvester.datamodel.Domain.setCrawlerTraps(Domain.java:891)
      	at dk.netarkivet.harvester.datamodel.DomainDBDAO.read(DomainDBDAO.java:988)
      	at org.apache.jsp.Definitions_002dedit_002ddomain_jsp._jspService(org.apache.jsp.Definitions_002dedit_002ddomain_jsp:14
      0)
      	at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:93)
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
      	at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:373)
      	at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:470)
      	at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:364)
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
      	at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487)
      	at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:362)
      	at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
      	at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
      	at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:722)
      	at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:404)
      	at org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:285)
      	at org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:126)
      	at org.apache.jsp.Definitions_002dfind_002ddomains_jsp._jspService(org.apache.jsp.Definitions_002dfind_002ddomains_jsp:
      205)
      	at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:93)
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
      	at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:373)
      	at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:470)
      	at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:364)
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
      	at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487)
      	at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:362)
      	at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
      	at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
      	at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:722)
      	at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:404)
      	at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
      	at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)
      	at org.mortbay.jetty.Server.handle(Server.java:324)
      	at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505)
      	at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:842)
      	at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:648)
      	at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
      	at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380)
      	at org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:228)
      	at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:450)
      

      However it is currently only possible to remedy the situation by connecting to the database using the commandline program
      'ij'. However, this is only possibly, when our system is offline, as the use of embedded derby prevents us from accessing
      the database with 'ij' when the system is running.

      Attachments

        Activity

          People

            svc Søren Vejrup Carlsen (Inactive)
            mss Mikis Seth Sørensen (Inactive)
            Mikis Seth Sørensen Mikis Seth Sørensen (Inactive)
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: