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

ConcurrentModificationException happends when the number of concurrent threads is over 50

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Normal Normal
    • None
    • None
    • None
    • None

      Steps to Reproduce

      1. get test application source https://github.com/hawkchen/zssperformance/tree/3.7
      2. modify dependencies in pom.xml, change zssex to zss
      3. package an OSE version WAR
      4. open test plan DependentFormula.jmx with jmeter
      5. set visit zul to dependentFormula.zul
      6. set thread count to 50 (or bigger)
      7. start running
        1. The issue doesn't always happen for each run, please try to run the test plan several times

      Actual Result

      Test report : https://docs.google.com/a/potix.com/spreadsheets/d/1aXKKw6Y81DP_PMr1OqK6qItD_O1AgTk-sfustq6cczY/edit#gid=941648103
      Please see 3.6.1.FL.20150115-Eval, CE, concurrent user 50 and 150.

      Jan 28, 2015 4:30:28 PM org.zkoss.zk.ui.impl.UiEngineImpl handleError
      SEVERE:
      java.util.ConcurrentModificationException
              at java.util.LinkedHashMap$LinkedHashIterator.nextEntry(LinkedHashMap.ja
      va:394)
              at java.util.LinkedHashMap$EntryIterator.next(LinkedHashMap.java:413)
              at java.util.LinkedHashMap$EntryIterator.next(LinkedHashMap.java:412)
              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:105)
              at org.zkoss.zss.model.impl.sys.FormatEngineImpl.format(FormatEngineImpl
      .java:67)
              at org.zkoss.zss.ui.impl.CellFormatHelper.getFontHtmlStyle(CellFormatHel
      per.java:391)
              at org.zkoss.zss.ui.Spreadsheet$ExtraCtrl.getCellAttr(Spreadsheet.java:3
      354)
              at org.zkoss.zss.ui.Spreadsheet$ExtraCtrl.getRangeAttrs(Spreadsheet.java
      :3200)
              at org.zkoss.zss.ui.Spreadsheet.responseUpdateCell(Spreadsheet.java:2834
      )
              at org.zkoss.zss.ui.Spreadsheet.updateCell(Spreadsheet.java:2803)
              at org.zkoss.zss.ui.Spreadsheet.access$4200(Spreadsheet.java:222)
              at org.zkoss.zss.ui.Spreadsheet$InnerModelEventDispatcher.onCellContentC
      hange(Spreadsheet.java:2396)
              at org.zkoss.zss.ui.Spreadsheet$InnerModelEventDispatcher.access$1300(Sp
      readsheet.java:2094)
              at org.zkoss.zss.ui.Spreadsheet$InnerModelEventDispatcher$8.onEvent(Spre
      adsheet.java:2145)
              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:162)
              at org.zkoss.zk.ui.AbstractComponent.onEvent(AbstractComponent.java:2752
      )
              at org.zkoss.zk.ui.AbstractComponent.service(AbstractComponent.java:2723
      )
              at org.zkoss.zk.ui.AbstractComponent.service(AbstractComponent.java:2664
      )
              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)
      

      Expected Result

      no exception

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

              Created:
              Updated: