Uploaded image for project: 'ZK Spreadsheet'
  1. ZK Spreadsheet
  2. ZSS-700

ConcurrentModificationException happened when testing with intensive formula test case

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Normal Normal
    • 3.6.0
    • 3.5.0 RC
    • ZSS Component
    • None

      Steps to reproduce

      1. run the project https://github.com/hawkchen/zssperformance on Tomcat 7
      2. use Jmeter 2.10 to open test plan IntensiveFormula.jmx (the file is under [PROJECT-BASE]\TestPlan)(original test plan https://docs.google.com/a/potix.com/document/d/1pK-mi4hO14mKkmlf1qZLwi-wp3uU04wcMVzHk6MuS5I/edit#heading=h.x9e2wlg0mqa7)
      3. set number of thread to 50 and run

      Expected

      The tomcat 7 console shows no error.

      What I actually see

      The tomcat 7 console shows many ConcurrentModificationException.

      SEVERE:
      java.util.ConcurrentModificationException
      at java.util.LinkedHashMap$LinkedHashIterator.nextEntry(LinkedHashMap.ja
      va:373)
      at java.util.LinkedHashMap$EntryIterator.next(LinkedHashMap.java:392)
      at java.util.LinkedHashMap$EntryIterator.next(LinkedHashMap.java:391)
      at org.zkoss.util.CacheMap.expunge(CacheMap.java:228)
      at org.zkoss.util.CacheMap.doExpunge(CacheMap.java:208)
      at org.zkoss.util.CacheMap.tryExpunge(CacheMap.java:202)
      at org.zkoss.util.CacheMap.get(CacheMap.java:391)
      at org.zkoss.poi.ss.format.CellNumberFormatter.getFormatter(CellNumberFo
      rmatter.java:112)
      at org.zkoss.poi.ss.format.CellFormat$1.apply(CellFormat.java:119)
      at org.zkoss.zss.model.impl.sys.FormatEngineImpl.format0(FormatEngineImp
      l.java:94)
      at org.zkoss.zss.model.impl.sys.FormatEngineImpl.format(FormatEngineImpl
      .java:62)
      at org.zkoss.zss.ui.impl.CellFormatHelper.getInnerHtmlStyle(CellFormatHe
      lper.java:323)
      at org.zkoss.zss.ui.Spreadsheet$ExtraCtrl.getCellAttr(Spreadsheet.java:3
      290)
      at org.zkoss.zss.ui.Spreadsheet$ExtraCtrl.getRangeAttrs(Spreadsheet.java
      :3144)
      at org.zkoss.zss.ui.Spreadsheet.responseUpdateCell(Spreadsheet.java:2778
      )
      at org.zkoss.zss.ui.Spreadsheet.updateCell(Spreadsheet.java:2747)
      at org.zkoss.zss.ui.Spreadsheet.access$4000(Spreadsheet.java:213)
      at org.zkoss.zss.ui.Spreadsheet$InnerModelEventDispatcher.onCellContentC
      hange(Spreadsheet.java:2346)
      at org.zkoss.zss.ui.Spreadsheet$InnerModelEventDispatcher.access$1200(Sp
      readsheet.java:2058)
      at org.zkoss.zss.ui.Spreadsheet$InnerModelEventDispatcher$7.onEvent(Spre
      adsheet.java:2102)
      at org.zkoss.zss.ui.ModelEventDispatcher.onEvent(ModelEventDispatcher.ja
      va:49)
      at org.zkoss.zss.model.impl.EventQueueListenerAdaptor$WrappedListener.on
      Event(EventQueueListenerAdaptor.java:105)
      at org.zkoss.zk.ui.event.impl.DesktopEventQueue$QueueListener.onEvent(De
      sktopEventQueue.java:152)
      at org.zkoss.zk.ui.AbstractComponent.onEvent(AbstractComponent.java:2746
      )
      at org.zkoss.zk.ui.AbstractComponent.service(AbstractComponent.java:2717
      )
      at org.zkoss.zk.ui.AbstractComponent.service(AbstractComponent.java:2658
      )
      at org.zkoss.zk.ui.impl.EventProcessor.process(EventProcessor.java:136)
      at org.zkoss.zk.ui.impl.UiEngineImpl.processEvent(UiEngineImpl.java:1765
      )
      at org.zkoss.zk.ui.impl.UiEngineImpl.process(UiEngineImpl.java:1550)
      at org.zkoss.zk.ui.impl.UiEngineImpl.execUpdate(UiEngineImpl.java:1260)
      at org.zkoss.zk.au.http.DHtmlUpdateServlet.process(DHtmlUpdateServlet.ja
      va:603)
      at org.zkoss.zk.au.http.DHtmlUpdateServlet.doGet(DHtmlUpdateServlet.java
      :485)
      at org.zkoss.zk.au.http.DHtmlUpdateServlet.doPost(DHtmlUpdateServlet.jav
      a:494)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:646)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
      icationFilterChain.java:303)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
      ilterChain.java:208)
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
      alve.java:220)
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
      alve.java:122)
      at org.apache.catalina.authenticator.AuthenticatorBase.invoke(Authentica
      torBase.java:501)
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
      ava:171)
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
      ava:102)
      at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:
      950)
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
      ve.java:116)
      at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.jav
      a:408)
      at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp
      11Processor.java:1040)
      at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(
      AbstractProtocol.java:607)
      at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.doRun(AprEndpo
      int.java:2442)
      at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoin
      t.java:2431)
      at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExec
      utor.java:886)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor
      .java:908)
      at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskTh
      read.java:61)
      at java.lang.Thread.run(Thread.java:662)

            henrichen henrichen
            hawk hawk
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved: