4 Replies Latest reply: Mar 6, 2012 3:36 PM by PHCharbonneau RSS

    WebLogic hangs for a few seconds on every request

      I've got a very strange situation in my developement weblogic environment recently. Without any wilful config change server suddenly started to hang for seven seconds on each request. This hang happens before the request is dispatched to my web application. By using a profiler and stoping the server with debuger randomly during that period I found out that absolute majority of it's time it spends at this point:

      ZipFile.getEntry(long, String, boolean) line: not available [native method]     
      ZipFile.getEntry(String) line: 149     
      ZipClassFinder.getSource(String) line: 33     
      JarClassFinder.getSource(String) line: 58     
      JarClassFinder(AbstractClassFinder).getClassSource(String) line: 31     
      ClasspathClassFinder2(MultiClassFinder).getClassSource(String) line: 58     
      MultiClassFinder.getClassSource(String) line: 58     
      MultiClassFinder.getClassSource(String) line: 58     
      CompositeWebAppFinder.getClassSource(String) line: 88     
      MultiClassFinder.getClassSource(String) line: 58     
      CodeGenClassFinder(MultiClassFinder).getClassSource(String) line: 58     
      CodeGenClassFinder.getClassSource(String) line: 27     
      ChangeAwareClassLoader.upToDate() line: 99     
      FilterWrapper.needToReload() line: 120     
      FilterWrapper.checkForReload() line: 101     
      FilterWrapper.getFilter(boolean) line: 41     
      FilterChainImpl.add(FilterWrapper) line: 35     
      FilterManager.getFilterChain(ServletStubImpl, ServletRequest, ServletResponse, boolean, int) line: 257     
      WebAppServletContext$ServletInvocationAction.doIt(ServletStubImpl, HttpServletRequest, HttpServletResponse) line: 3681     
      WebAppServletContext$ServletInvocationAction.run() line: 3650     
      AuthenticatedSubject.doAs(AbstractSubject, PrivilegedAction) line: 321     
      SecurityManager.runAs(AuthenticatedSubject, AuthenticatedSubject, PrivilegedAction) line: 121     
      WebAppServletContext.securedExecute(HttpServletRequest, HttpServletResponse, boolean) line: 2268     
      WebAppServletContext.execute(ServletRequestImpl, ServletResponseImpl) line: 2174     
      ServletRequestImpl.run() line: 1446     
      ExecuteThread.execute(Runnable) line: 201     
      ExecuteThread.run() line: 173

      and typical data at ZipFile.getEntry(String) line: 149     suggest that it walks through all jar files at C:\develop_ib\weblogic-ib\domains\domain_cs\servers\AdminServer\tmp\_WL_user\mci\naecdr\war\WEB-INF\lib\ and tries to find every class which is loaded.

      Does anyone have any clue why is this happening and how to get rid of it?