Type:
Bug Report
Resolution:
Fixed
Priority:
L3 - Default
Affects Version/s:
None
Environment (Required on creation):
Application server environments with multiple deployments and parallel deployment threads, e.g. WildFly distribution with multiple process application deployments
Description (Required on creation; please attach any relevant screenshots, stacktraces, log files, etc. to the ticket):
Application deployment fails irregularly for any of the deployments with a ConcurrentModificationException
2021-12-21 08:35:18,114 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-4) MSC000001: Failed to start service jboss.deployment.unit."PROD_DEPLOYMENT-war-1.125.67.war" .POST_MODULE: org.jboss.msc.service.StartException in service jboss.deployment.unit."PROD_DEPLOYMENT-war-1.125.67.war" .POST_MODULE: WFLYSRV0153: Failed to process phase POST_MODULE of deployment "PROD_DEPLOYMENT-war-1.125.67.war"
at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:183) [wildfly-server-10.1.23.Final-redhat-00001-jbeap-22415.jar:10.1.23.Final-redhat-00001-jbeap-22415]
at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1739) [jboss-msc-1.4.11.Final-redhat-00001.jar:1.4.11.Final-redhat-00001]
at org.jboss.msc.service.ServiceControllerImpl$StartTask.execute(ServiceControllerImpl.java:1701) [jboss-msc-1.4.11.Final-redhat-00001.jar:1.4.11.Final-redhat-00001]
at org.jboss.msc.service.ServiceControllerImpl$ControllerTask.run(ServiceControllerImpl.java:1559) [jboss-msc-1.4.11.Final-redhat-00001.jar:1.4.11.Final-redhat-00001]
at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35) [jboss-threads-2.3.3.Final-redhat-00001.jar:2.3.3.Final-redhat-00001]
at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:1982) [jboss-threads-2.3.3.Final-redhat-00001.jar:2.3.3.Final-redhat-00001]
at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1486) [jboss-threads-2.3.3.Final-redhat-00001.jar:2.3.3.Final-redhat-00001]
at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1363) [jboss-threads-2.3.3.Final-redhat-00001.jar:2.3.3.Final-redhat-00001]
at java.lang.Thread .run(Thread .java:748) [rt.jar:1.8.0_301]
Caused by: org.camunda.bpm.engine.ProcessEngineException: ENGINE-09003 Could not parse 'vfs:/content/PROD_DEPLOYMENT-war-1.125.67.war/WEB-INF/classes/META-INF/processes.xml' . null
at org.camunda.bpm.engine.impl.util.EngineUtilLogger.parsingFailureException(EngineUtilLogger.java:50)
at org.camunda.bpm.engine.impl.util.xml.Parse.execute(Parse.java:164)
at org.camunda.bpm.container.impl.metadata.DeploymentMetadataParse.execute(DeploymentMetadataParse.java:50)
at org.camunda.bpm.application.impl.metadata.ProcessesXmlParse.execute(ProcessesXmlParse.java:60)
at org.camunda.bpm.container.impl.jboss.deployment.processor.ProcessesXmlProcessor.parseProcessesXml(ProcessesXmlProcessor.java:176)
at org.camunda.bpm.container.impl.jboss.deployment.processor.ProcessesXmlProcessor.deploy(ProcessesXmlProcessor.java:85)
at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:176) [wildfly-server-10.1.23.Final-redhat-00001-jbeap-22415.jar:10.1.23.Final-redhat-00001-jbeap-22415]
... 8 more
Caused by: java.util.ConcurrentModificationException
at java.util.HashMap$HashIterator.nextNode(HashMap.java:1445) [rt.jar:1.8.0_301]
at java.util.HashMap$EntryIterator.next(HashMap.java:1479) [rt.jar:1.8.0_301]
at java.util.HashMap$EntryIterator.next(HashMap.java:1477) [rt.jar:1.8.0_301]
at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.setFeatures(SAXParserImpl.java:247) [rt.jar:1.8.0_301]
at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.<init>(SAXParserImpl.java:182) [rt.jar:1.8.0_301]
at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.<init>(SAXParserImpl.java:123) [rt.jar:1.8.0_301]
at com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl.newSAXParserImpl(SAXParserFactoryImpl.java:96) [rt.jar:1.8.0_301]
at com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl.setFeature(SAXParserFactoryImpl.java:134) [rt.jar:1.8.0_301]
at __redirected.__SAXParserFactory.setFeature(__SAXParserFactory.java:96) [jboss-modules.jar:1.11.0.Final-redhat-00001]
at org.camunda.bpm.engine.impl.util.xml.Parse.execute(Parse.java:140)
... 13 more
Steps to reproduce (Required on creation):
This is not easy to reproduce as this is based on a concurrent access pattern to a class instance that is not thread-safe. The general scheme here is:
Create multiple process application deployments with a processes.xml each
Place those deployments into the application server, e.g., a WildFly instance
Start the application server
Observed Behavior (Required on creation):
Occasionally, one or more deployments fail due to a ConcurrentModificationException .
Expected behavior (Required on creation):
All deployments are started successfully.
Root Cause (Required on prioritization):
Upon startup of a process application deployment, the processes.xml file is parsed by the engine
Parsing this file is done by a SAXParser that is initialized with certain parser features - see https://github.com/camunda/camunda-bpm-platform/blob/0b6a8f89243c69dd46fd8d5ccb5451f031b305ca/engine/src/main/java/org/camunda/bpm/engine/impl/util/xml/Parse.java#L141-L146
The deployments are started by concurrent threads in the application server, accessing the linked code concurrently as well
The SAXParserFactory we use is NOT THREAD-SAFE, we reuse the same factory instance created once in the Parser for all threads - created over here and fetched over here
Setting features on the same factory instance concurrently can lead to modifying the underlying shared parser features HashMap in one thread while iterating over it in another one, leading to the exception over at java.util.HashMap.HashIterator#nextNode (can be found at HashMap.java line 1445 in JDK8_301).
Solution Ideas (Optional):
There are at least two ways of preventing this:
Avoid concurrent access to the code in question, e.g., by synchronizing the initialization code block of the parser factory between threads using Java synchronization
Avoid using the same parser factory instance in multiple threads, e.g., by keeping a parser factory instance per thread using ThreadLocal
Hints (optional):
The issue occurs in all supported JDKs, as far as I can tell
This is the controller panel for Smart Panels app
There are no comments yet on this issue.
{"searchers":{"groups":[{"searchers":[{"name":"Project","id":"project","key":"issue.field.project","isShown":true,"lastViewed":1743826431855},{"name":"Summary","id":"summary","key":"issue.field.summary","isShown":true},{"name":"Type","id":"issuetype","key":"issue.field.issuetype","isShown":true,"lastViewed":1743826431857},{"name":"Status","id":"status","key":"issue.field.status","isShown":true,"lastViewed":1743826431868},{"name":"Priority","id":"priority","key":"issue.field.priority","isShown":true},{"name":"Resolution","id":"resolution","key":"issue.field.resolution","isShown":true},{"name":"Creator","id":"creator","key":"issue.field.creator","isShown":true},{"name":"Affects Version","id":"version","key":"issue.field.affectsversions","isShown":true},{"name":"Fix Version","id":"fixfor","key":"issue.field.fixversions","isShown":true,"lastViewed":1743826431874},{"name":"Component","id":"component","key":"issue.field.components","isShown":true},{"name":"% Limits","id":"workratio","key":"issue.field.workratio","isShown":true},{"name":"Link types","id":"issue_link_type","key":"issue.field.issuelinks","isShown":true},{"name":"Environment","id":"environment","key":"issue.field.environment","isShown":true},{"name":"Description","id":"description","key":"issue.field.description","isShown":true},{"name":"Comment","id":"comment","key":"issue.field.comment","isShown":true},{"name":"Label","id":"labels","key":"issue.field.labels","isShown":true},{"name":"Query","id":"text","key":"text","isShown":true},{"name":"Approvals","id":"customfield_12210","key":"com.atlassian.servicedesk.approvals-plugin:sd-approvals","isShown":true},{"name":"Association Count","id":"customfield_13911","key":"com.atlassian.jira.plugin.system.customfieldtypes:float","isShown":true},{"name":"Associations","id":"customfield_13910","key":"com.atlassian.jira.plugin.system.customfieldtypes:textarea","isShown":true},{"name":"BPM Version","id":"customfield_12911","key":"com.atlassian.jira.plugin.system.customfieldtypes:select","isShown":true},{"name":"Customer Request Type","id":"customfield_11010","key":"com.atlassian.servicedesk:vp-origin","isShown":true},{"name":"Development","id":"customfield_12310","key":"com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary","isShown":true},{"name":"Effort","id":"customfield_12810","key":"com.atlassian.jira.plugin.system.customfieldtypes:select","isShown":false},{"name":"Email Distribution List","id":"customfield_12915","key":"com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes","isShown":true},{"name":"Environment","id":"customfield_10411","key":"com.atlassian.jira.plugin.system.customfieldtypes:textarea","isShown":false},{"name":"Environment","id":"customfield_11210","key":"com.atlassian.jira.plugin.system.customfieldtypes:textarea","isShown":false},{"name":"Epic","id":"customfield_11810","key":"com.atlassian.jira.plugin.system.customfieldtypes:labels","isShown":true},{"name":"Epic","id":"customfield_10031","key":"com.atlassian.jira.plugin.system.customfieldtypes:labels","isShown":false},{"name":"Epic Colour","id":"customfield_10813","key":"com.pyxis.greenhopper.jira:gh-epic-color","isShown":false},{"name":"Epic Link","id":"customfield_10810","key":"com.pyxis.greenhopper.jira:gh-epic-link","isShown":true},{"name":"Epic Name","id":"customfield_10811","key":"com.pyxis.greenhopper.jira:gh-epic-label","isShown":true},{"name":"Epic Status","id":"customfield_10812","key":"com.pyxis.greenhopper.jira:gh-epic-status","isShown":false},{"name":"Epic/Theme","id":"customfield_10091","key":"com.atlassian.jira.plugin.system.customfieldtypes:labels","isShown":true},{"name":"Flagged","id":"customfield_10090","key":"com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes","isShown":true},{"name":"Global Rank","id":"customfield_10110","key":"com.pyxis.greenhopper.jira:gh-global-rank","isShown":true},{"name":"Groups","id":"customfield_14510","key":"com.atlassian.servicedesk:sd-request-groups","isShown":true},{"name":"Help Request Type","id":"customfield_12713","key":"com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons","isShown":true},{"name":"High Level Steps","id":"customfield_12616","key":"com.atlassian.jira.plugin.system.customfieldtypes:textarea","isShown":true},{"name":"LDAP Groups Picker","id":"customfield_12914","key":"com.onresolve.jira.groovy.groovyrunner:multiple-ldap-picker-cf","isShown":false},{"name":"Linked major incidents","id":"customfield_13010","key":"com.atlassian.servicedesk.incident-management-plugin:sd-incidents-link","isShown":false},{"name":"Number of Licenses Needed","id":"customfield_12116","key":"com.atlassian.jira.plugin.system.customfieldtypes:float","isShown":true},{"name":"Optimize PM Priority","id":"customfield_12811","key":"com.pyxis.greenhopper.jira:gh-lexo-rank","isShown":true},{"name":"Organizations","id":"customfield_12211","key":"com.atlassian.servicedesk:sd-customer-organizations","isShown":true},{"name":"Original story points","id":"customfield_13413","key":"com.atlassian.jpo:jpo-custom-field-original-story-points","isShown":true},{"name":"PM Priority","id":"customfield_12010","key":"com.atlassian.jira.plugin.system.customfieldtypes:float","isShown":false},{"name":"Parent Link","id":"customfield_13410","key":"com.atlassian.jpo:jpo-custom-field-parent","isShown":false},{"name":"Preconditions - Dats","id":"customfield_12615","key":"com.atlassian.jira.plugin.system.customfieldtypes:textarea","isShown":true},{"name":"Preconditions - Users","id":"customfield_12614","key":"com.atlassian.jira.plugin.system.customfieldtypes:textarea","isShown":true},{"name":"Progress","id":"customfield_13110","key":"com.atlassian.jira.plugin.system.customfieldtypes:textfield","isShown":true},{"name":"Project","id":"customfield_11910","key":"com.atlassian.jira.plugin.system.customfieldtypes:labels","isShown":true},{"name":"Purpose of the IT-Tool","id":"customfield_12114","key":"com.atlassian.jira.plugin.system.customfieldtypes:textfield","isShown":true},{"name":"Questions","id":"customfield_12910","key":"com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes","isShown":true},{"name":"Rank","id":"customfield_11410","key":"com.pyxis.greenhopper.jira:gh-lexo-rank","isShown":true},{"name":"Rank","id":"customfield_11411","key":"com.pyxis.greenhopper.jira:gh-lexo-rank","isShown":true},{"name":"Rank (Obsolete)","id":"customfield_10041","key":"com.atlassian.jira.plugin.system.customfieldtypes:float","isShown":false},{"name":"Rank (Obsolete)","id":"customfield_10092","key":"com.atlassian.jira.plugin.system.customfieldtypes:float","isShown":false},{"name":"Rank (Obsolete)","id":"customfield_10414","key":"com.pyxis.greenhopper.jira:gh-global-rank","isShown":true},{"name":"Rank (Obsolete)","id":"customfield_10415","key":"com.pyxis.greenhopper.jira:gh-global-rank","isShown":true},{"name":"Release Version History","id":"customfield_10210","key":"com.pyxis.greenhopper.jira:greenhopper-releasedmultiversionhistory","isShown":true},{"name":"Request participants","id":"customfield_11412","key":"com.atlassian.servicedesk:sd-request-participants","isShown":true},{"name":"SP Effort","id":"customfield_13310","key":"com.atlassian.jira.plugin.system.customfieldtypes:select","isShown":true},{"name":"Satisfaction","id":"customfield_12212","key":"com.atlassian.servicedesk:sd-request-feedback","isShown":true},{"name":"Sprint","id":"customfield_10710","key":"com.pyxis.greenhopper.jira:gh-sprint","isShown":true},{"name":"Steps","id":"customfield_12618","key":"com.atlassian.jira.plugin.system.customfieldtypes:textarea","isShown":true},{"name":"Story Points","id":"customfield_11710","key":"com.atlassian.jira.plugin.system.customfieldtypes:float","isShown":false},{"name":"Target Quality","id":"customfield_13510","key":"com.atlassian.jira.plugin.system.customfieldtypes:select","isShown":false},{"name":"Team","id":"customfield_13414","key":"com.atlassian.teams:rm-teams-custom-field-team","isShown":true},{"name":"Test Goals","id":"customfield_12613","key":"com.atlassian.jira.plugin.system.customfieldtypes:textarea","isShown":true},{"name":"Time to Resolution","id":"customfield_11124","key":"com.atlassian.servicedesk:sd-sla-field","isShown":true},{"name":"Time to Response","id":"customfield_11121","key":"com.atlassian.servicedesk:sd-sla-field","isShown":true},{"name":"Time to Response - Ericsson","id":"customfield_11122","key":"com.atlassian.servicedesk:sd-sla-field","isShown":true},{"name":"Time to Response - Test","id":"customfield_11123","key":"com.atlassian.servicedesk:sd-sla-field","isShown":true},{"name":"Time to resolution","id":"customfield_11110","key":"com.atlassian.servicedesk:sd-sla-field","isShown":true},{"name":"Time to temporary Solution","id":"customfield_11510","key":"com.atlassian.servicedesk:sd-sla-field","isShown":true},{"name":"Tips","id":"customfield_12617","key":"com.atlassian.jira.plugin.system.customfieldtypes:textarea","isShown":true},{"name":"Title Keywords","id":"customfield_10070","key":"com.atlassian.jira.plugin.system.customfieldtypes:textfield","isShown":true},{"name":"Tool Price per Year","id":"customfield_12612","key":"com.atlassian.jira.plugin.system.customfieldtypes:textfield","isShown":true},{"name":"URL of DPA","id":"customfield_12610","key":"com.atlassian.jira.plugin.system.customfieldtypes:url","isShown":true},{"name":"URL of Terms and Conditions","id":"customfield_12611","key":"com.atlassian.jira.plugin.system.customfieldtypes:url","isShown":true},{"name":"URL of the Tool","id":"customfield_12112","key":"com.atlassian.jira.plugin.system.customfieldtypes:url","isShown":true},{"name":"Which Data will be Processed?","id":"customfield_12117","key":"com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes","isShown":true},{"name":"issueFunction","id":"customfield_11311","key":"com.onresolve.jira.groovy.groovyrunner:jqlFunctionsCustomFieldType","isShown":true}],"type":"DETAILS","title":"Details"},{"searchers":[{"name":"Created Date","id":"created","key":"issue.field.created","isShown":true},{"name":"Updated Date","id":"updated","key":"issue.field.updated","isShown":true},{"name":"Resolution Date","id":"resolutiondate","key":"issue.field.resolution.date","isShown":true},{"name":"Due Date","id":"duedate","key":"issue.field.duedate","isShown":true},{"name":"Postponed Until","id":"customfield_12712","key":"com.atlassian.jira.plugin.system.customfieldtypes:datetime","isShown":true},{"name":"Satisfaction date","id":"customfield_12213","key":"com.atlassian.servicedesk:sd-request-feedback-date","isShown":true},{"name":"Target end","id":"customfield_13412","key":"com.atlassian.jpo:jpo-custom-field-baseline-end","isShown":true},{"name":"Target start","id":"customfield_13411","key":"com.atlassian.jpo:jpo-custom-field-baseline-start","isShown":true}],"type":"DATES","title":"Dates"},{"searchers":[{"name":"Assignee","id":"assignee","key":"issue.field.assignee","isShown":true,"lastViewed":1743826431872},{"name":"Reporter","id":"reporter","key":"issue.field.reporter","isShown":true},{"name":"Authorized support contacts","id":"customfield_10410","key":"com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker","isShown":false},{"name":"DRI","id":"customfield_13210","key":"com.atlassian.jira.plugin.system.customfieldtypes:userpicker","isShown":true},{"name":"Manager","id":"customfield_12620","key":"com.atlassian.jira.plugin.system.customfieldtypes:userpicker","isShown":true},{"name":"Reviewer","id":"customfield_12121","key":"com.atlassian.jira.plugin.system.customfieldtypes:userpicker","isShown":true},{"name":"Reviewer - Ext","id":"customfield_12619","key":"com.atlassian.jira.plugin.system.customfieldtypes:userpicker","isShown":true},{"name":"Tester","id":"customfield_13311","key":"com.atlassian.jira.plugin.system.customfieldtypes:userpicker","isShown":true}],"type":"PEOPLE","title":"People"}]},"values":{"issuetype":{"name":"Type","editHtml":"\n\n\n\n <div class=\"field-group aui-field-issuetype\" >\n <label for=\"searcher-type\">Type</label> <select class=\"select js-default-checkboxmultiselect\"\n id=\"searcher-type\"\n multiple=\"multiple\"\n name=\"type\"\n data-max-inline-results-displayed=\"100\"\n data-placeholder-text=\"Find Issue Types...\">\n <optgroup>\n \n <option class=\" \"\n id=\"type_-2\"\n title=\"All Standard Issue Types\"\n value=\"-2\">All Standard Issue Types</option>\n \n <option class=\" \"\n id=\"type_-3\"\n title=\"All Sub-Task Issue Types\"\n value=\"-3\">All Sub-Task Issue Types</option>\n </optgroup>\n\n <optgroup label=\"Standard Issue Types\">\n \n <option class=\" imagebacked 13832 \"\n data-icon=\"/secure/viewavatar?size=xsmall&avatarId=12443&avatarType=issuetype\"\n data-fallback-icon=\"/images/icons/issuetypes/blank.png\"\n id=\"type_1\"\n title=\"Bug Report\"\n value=\"1\">Bug Report</option>\n \n <option class=\" imagebacked 13832 \"\n data-icon=\"/secure/viewavatar?size=xsmall&avatarId=12454&avatarType=issuetype\"\n data-fallback-icon=\"/images/icons/issuetypes/blank.png\"\n id=\"type_7\"\n title=\"Epic\"\n value=\"7\">Epic</option>\n \n <option class=\" imagebacked 13832 \"\n data-icon=\"/secure/viewavatar?size=xsmall&avatarId=12451&avatarType=issuetype\"\n data-fallback-icon=\"/images/icons/issuetypes/blank.png\"\n id=\"type_2\"\n title=\"Feature Request\"\n value=\"2\">Feature Request</option>\n \n <option class=\" imagebacked 13832 \"\n data-icon=\"/secure/viewavatar?size=xsmall&avatarId=12458&avatarType=issuetype\"\n data-fallback-icon=\"/images/icons/issuetypes/blank.png\"\n id=\"type_3\"\n title=\"Task\"\n value=\"3\">Task</option>\n </optgroup>\n\n <optgroup label=\"Sub-Task Issue Types\">\n \n <option class=\" imagebacked 13832 \"\n data-icon=\"/secure/viewavatar?size=xsmall&avatarId=12456&avatarType=issuetype\"\n data-fallback-icon=\"/images/icons/issuetypes/blank.png\"\n id=\"type_6\"\n title=\"Sub-task\"\n value=\"6\">Sub-task</option>\n </optgroup>\n </select>\n </div>\n ","validSearcher":true,"isShown":true},"project":{"name":"Project","viewHtml":" <div class=\"searcherValue\">\n \n <label class=\"fieldLabel\" for=\"fieldpid\">Project:</label><span id=\"fieldpid\" class=\"fieldValue\">\n \n <a data-pid=\"10230\" data-issue-type-ids=\"\" href=\"/browse/CAM\" title=\"Browse camunda BPM project\">camunda BPM</a> </span></div>\n","editHtml":" \n <div class=\"field-group aui-field-project\" >\n <label for=\"searcher-pid\">Project</label> <select class=\"js-project-checkboxmultiselect\"\n data-placeholder-text=\"Find Projects...\"\n id=\"searcher-pid\"\n multiple=\"multiple\"\n name=\"pid\">\n <optgroup label=\"Recent Projects\">\n </optgroup>\n <optgroup label=\"All Projects\" >\n <option data-icon=\"/secure/projectavatar?pid=10230&size=small\"\n selected=\"selected\" title=\"camunda BPM\"\n value=\"10230\">\n camunda BPM (CAM)\n </option>\n \n <option data-icon=\"/secure/projectavatar?pid=10730&size=small\"\n title=\"Camunda Optimize\"\n value=\"10730\">\n Camunda Optimize (OPT)\n </option>\n </optgroup>\n </select>\n </div>\n \n\n","jql":"project = CAM","validSearcher":true,"isShown":true},"fixfor":{"name":"Fix Version","viewHtml":" <div class=\"searcherValue\">\n \n <label class=\"fieldLabel\" for=\"fieldfixfor\">Fix Version:</label><span id=\"fieldfixfor\" class=\"fieldValue\">\n \n 7.11.21 </span></div>\n","editHtml":"\n <div class=\"field-group aui-field-projectconstant\" >\n <label for=\"searcher-fixfor\">Fix Version</label> <select class=\"select js-default-checkboxmultiselectversion\"\n id=\"searcher-fixfor\"\n multiple=\"multiple\"\n name=\"fixfor\"\n data-max-inline-results-displayed=\"100\"\n >\n <optgroup label=\"\">\n <option value=\"-1\" title=\"No Version\">No Version</option>\n <option value=\"-2\" title=\"Unreleased Versions\">Unreleased Versions</option>\n <option value=\"-3\" title=\"Released Versions\">Released Versions</option>\n </optgroup>\n <optgroup label=\"Unreleased Versions\">\n <option value=\"id:7.0.6\" title=\"7.0.6\">7.0.6</option>\n <option value=\"id:7.1.10\" title=\"7.1.10\">7.1.10</option>\n <option value=\"id:7.1.11\" title=\"7.1.11\">7.1.11</option>\n <option value=\"id:7.10.20\" title=\"7.10.20\">7.10.20</option>\n <option value=\"id:7.10.x\" title=\"7.10.x\">7.10.x</option>\n <option value=\"id:7.11.x\" title=\"7.11.x\">7.11.x</option>\n <option value=\"id:7.12.22\" title=\"7.12.22\">7.12.22</option>\n <option value=\"id:7.12.x\" title=\"7.12.x\">7.12.x</option>\n <option value=\"id:7.13.19\" title=\"7.13.19\">7.13.19</option>\n <option value=\"id:7.13.x\" title=\"7.13.x\">7.13.x</option>\n <option value=\"id:7.14.x\" title=\"7.14.x\">7.14.x</option>\n <option value=\"id:7.15.x\" title=\"7.15.x\">7.15.x</option>\n <option value=\"id:7.16.x\" title=\"7.16.x\">7.16.x</option>\n <option value=\"id:7.17.x\" title=\"7.17.x\">7.17.x</option>\n <option value=\"id:7.18.x\" title=\"7.18.x\">7.18.x</option>\n <option value=\"id:7.19.0\" title=\"7.19.0\">7.19.0</option>\n <option value=\"id:7.2.11\" title=\"7.2.11\">7.2.11</option>\n <option value=\"id:7.2.x\" title=\"7.2.x\">7.2.x</option>\n <option value=\"id:7.21.0\" title=\"7.21.0\">7.21.0</option>\n <option value=\"id:7.23.0\" title=\"7.23.0\">7.23.0</option>\n <option value=\"id:7.3.8\" title=\"7.3.8\">7.3.8</option>\n <option value=\"id:7.3.x\" title=\"7.3.x\">7.3.x</option>\n <option value=\"id:7.4.12\" title=\"7.4.12\">7.4.12</option>\n <option value=\"id:7.4.x\" title=\"7.4.x\">7.4.x</option>\n <option value=\"id:7.5.10\" title=\"7.5.10\">7.5.10</option>\n <option value=\"id:7.5.x\" title=\"7.5.x\">7.5.x</option>\n <option value=\"id:7.6.14\" title=\"7.6.14\">7.6.14</option>\n <option value=\"id:7.6.x\" title=\"7.6.x\">7.6.x</option>\n <option value=\"id:7.7.11\" title=\"7.7.11\">7.7.11</option>\n <option value=\"id:7.7.x\" title=\"7.7.x\">7.7.x</option>\n <option value=\"id:7.8.15\" title=\"7.8.15\">7.8.15</option>\n <option value=\"id:7.8.x\" title=\"7.8.x\">7.8.x</option>\n <option value=\"id:7.9.21\" title=\"7.9.21\">7.9.21</option>\n <option value=\"id:7.9.x\" title=\"7.9.x\">7.9.x</option>\n <option value=\"id:external-task-client-java-1.4.2\" title=\"external-task-client-java-1.4.2\">external-task-client-java-1.4.2</option>\n <option value=\"id:external-task-client-js 2.2.1\" title=\"external-task-client-js 2.2.1\">external-task-client-js 2.2.1</option>\n <option value=\"id:external-task-client-js 2.2.x\" title=\"external-task-client-js 2.2.x\">external-task-client-js 2.2.x</option>\n <option value=\"id:external-task-client-js 2.3.0\" title=\"external-task-client-js 2.3.0\">external-task-client-js 2.3.0</option>\n <option value=\"id:modeler 3.1.0\" title=\"modeler 3.1.0\">modeler 3.1.0</option>\n <option value=\"id:rpa-bridge-1.1.x\" title=\"rpa-bridge-1.1.x\">rpa-bridge-1.1.x</option>\n <option value=\"id:rpa-bridge-1.2.0\" title=\"rpa-bridge-1.2.0\">rpa-bridge-1.2.0</option>\n <option value=\"id:spring-boot 3.0.x\" title=\"spring-boot 3.0.x\">spring-boot 3.0.x</option>\n <option value=\"id:spring-boot 3.3.x\" title=\"spring-boot 3.3.x\">spring-boot 3.3.x</option>\n <option value=\"id:spring-boot 3.4.x\" title=\"spring-boot 3.4.x\">spring-boot 3.4.x</option>\n <option value=\"id:template-engines 2.2.0\" title=\"template-engines 2.2.0\">template-engines 2.2.0</option>\n </optgroup>\n <optgroup data-footer-text=\"417 more options. Continue typing to refine further.\" label=\"Released Versions\">\n <option value=\"id:6.2.4\" title=\"6.2.4\">6.2.4</option>\n <option value=\"id:7.0.0\" title=\"7.0.0\">7.0.0</option>\n <option value=\"id:7.0.0-alpha1\" title=\"7.0.0-alpha1\">7.0.0-alpha1</option>\n <option value=\"id:7.0.0-alpha2\" title=\"7.0.0-alpha2\">7.0.0-alpha2</option>\n <option value=\"id:7.0.0-alpha3\" title=\"7.0.0-alpha3\">7.0.0-alpha3</option>\n <option value=\"id:7.0.0-alpha4\" title=\"7.0.0-alpha4\">7.0.0-alpha4</option>\n <option value=\"id:7.0.0-alpha5\" title=\"7.0.0-alpha5\">7.0.0-alpha5</option>\n <option value=\"id:7.0.0-alpha6\" title=\"7.0.0-alpha6\">7.0.0-alpha6</option>\n <option value=\"id:7.0.0-alpha7\" title=\"7.0.0-alpha7\">7.0.0-alpha7</option>\n <option value=\"id:7.0.0-alpha8\" title=\"7.0.0-alpha8\">7.0.0-alpha8</option>\n <option value=\"id:7.0.0-alpha9\" title=\"7.0.0-alpha9\">7.0.0-alpha9</option>\n <option value=\"id:7.0.0-rc\" title=\"7.0.0-rc\">7.0.0-rc</option>\n <option value=\"id:7.0.1\" title=\"7.0.1\">7.0.1</option>\n <option value=\"id:7.0.2\" title=\"7.0.2\">7.0.2</option>\n <option value=\"id:7.0.3\" title=\"7.0.3\">7.0.3</option>\n <option value=\"id:7.0.4\" title=\"7.0.4\">7.0.4</option>\n <option value=\"id:7.0.5\" title=\"7.0.5\">7.0.5</option>\n <option value=\"id:7.1.0\" title=\"7.1.0\">7.1.0</option>\n <option value=\"id:7.1.0-alpha1\" title=\"7.1.0-alpha1\">7.1.0-alpha1</option>\n <option value=\"id:7.1.0-alpha2\" title=\"7.1.0-alpha2\">7.1.0-alpha2</option>\n <option value=\"id:7.1.0-alpha3\" title=\"7.1.0-alpha3\">7.1.0-alpha3</option>\n <option value=\"id:7.1.0-alpha4\" title=\"7.1.0-alpha4\">7.1.0-alpha4</option>\n <option value=\"id:7.1.1\" title=\"7.1.1\">7.1.1</option>\n <option value=\"id:7.1.2\" title=\"7.1.2\">7.1.2</option>\n <option value=\"id:7.1.3\" title=\"7.1.3\">7.1.3</option>\n <option value=\"id:7.1.4\" title=\"7.1.4\">7.1.4</option>\n <option value=\"id:7.1.5\" title=\"7.1.5\">7.1.5</option>\n <option value=\"id:7.1.6\" title=\"7.1.6\">7.1.6</option>\n <option value=\"id:7.1.7\" title=\"7.1.7\">7.1.7</option>\n <option value=\"id:7.1.8\" title=\"7.1.8\">7.1.8</option>\n <option value=\"id:7.1.9\" title=\"7.1.9\">7.1.9</option>\n <option value=\"id:7.10.0\" title=\"7.10.0\">7.10.0</option>\n <option value=\"id:7.10.0-alpha1\" title=\"7.10.0-alpha1\">7.10.0-alpha1</option>\n <option value=\"id:7.10.0-alpha2\" title=\"7.10.0-alpha2\">7.10.0-alpha2</option>\n <option value=\"id:7.10.0-alpha3\" title=\"7.10.0-alpha3\">7.10.0-alpha3</option>\n <option value=\"id:7.10.0-alpha4\" title=\"7.10.0-alpha4\">7.10.0-alpha4</option>\n <option value=\"id:7.10.0-alpha5\" title=\"7.10.0-alpha5\">7.10.0-alpha5</option>\n <option value=\"id:7.10.0-alpha6\" title=\"7.10.0-alpha6\">7.10.0-alpha6</option>\n <option value=\"id:7.10.1\" title=\"7.10.1\">7.10.1</option>\n <option value=\"id:7.10.10\" title=\"7.10.10\">7.10.10</option>\n <option value=\"id:7.10.11\" title=\"7.10.11\">7.10.11</option>\n <option value=\"id:7.10.12\" title=\"7.10.12\">7.10.12</option>\n <option value=\"id:7.10.13\" title=\"7.10.13\">7.10.13</option>\n <option value=\"id:7.10.14\" title=\"7.10.14\">7.10.14</option>\n <option value=\"id:7.10.15\" title=\"7.10.15\">7.10.15</option>\n <option value=\"id:7.10.16\" title=\"7.10.16\">7.10.16</option>\n <option value=\"id:7.10.17\" title=\"7.10.17\">7.10.17</option>\n <option value=\"id:7.10.18\" title=\"7.10.18\">7.10.18</option>\n <option value=\"id:7.10.19\" title=\"7.10.19\">7.10.19</option>\n <option value=\"id:7.10.2\" title=\"7.10.2\">7.10.2</option>\n <option value=\"id:7.10.3\" title=\"7.10.3\">7.10.3</option>\n <option value=\"id:7.10.4\" title=\"7.10.4\">7.10.4</option>\n </optgroup>\n </select>\n </div>\n \n","jql":"fixVersion = 7.11.21","validSearcher":true,"isShown":true},"assignee":{"name":"Assignee","editHtml":"\n \n <div class=\"field-group aui-field-userlist\" >\n <label for=\"searcher-assigneeSelect\">Assignee</label> <fieldset rel=\"assignee\" class=\"hidden user-group-searcher-params\">\n </fieldset>\n <select class=\"js-usergroup-checkboxmultiselect\" multiple=\"multiple\" id=\"assignee\" name=\"assignee\" data-placeholder-text=\"Enter username or group\">\n <optgroup>\n <option class=\"headerOption\" data-icon=\"https://jira.camunda.com/secure/useravatar?size=xsmall&avatarId=10163\" value=\"empty\" title=\"Unassigned\">Unassigned</option>\n </optgroup>\n <optgroup>\n </optgroup>\n </select>\n <input type=\"hidden\" name=\"check_prev_assignee\" value=\"true\">\n </div>\n \n","validSearcher":true,"isShown":true},"status":{"name":"Status","editHtml":"\n <div class=\"field-group aui-field-constants\" >\n <label for=\"searcher-status\">Status</label> <select class=\"select js-default-checkboxmultiselectstatuslozenge\"\n data-placeholder-text=\"Find Statuses...\"\n id=\"searcher-status\"\n multiple=\"multiple\"\n name=\"status\"\n data-max-inline-results-displayed=\"100\"\n data-footer-text=\"-92 more options. Continue typing to refine further.\" data-status-lozenge=\"true\">\n <optgroup >\n <option class=\"imagebacked\" data-icon=\"/images/icons/statuses/open.png\" value=\"1\" title=\"Open\" data-simple-status=\"{"id":"1","name":"Open","description":"The issue is open and ready for the assignee to start work on it.","iconUrl":"/images/icons/statuses/open.png","statusCategory":{"id":2,"key":"new","colorName":"default"}}\">Open</option>\n <option class=\"imagebacked\" data-icon=\"/images/icons/statuses/inprogress.png\" value=\"3\" title=\"In Progress\" data-simple-status=\"{"id":"3","name":"In Progress","description":"This issue is being actively worked on at the moment by the assignee.","iconUrl":"/images/icons/statuses/inprogress.png","statusCategory":{"id":4,"key":"indeterminate","colorName":"inprogress"}}\">In Progress</option>\n <option class=\"imagebacked\" data-icon=\"/images/icons/statuses/reopened.png\" value=\"4\" title=\"Reopened\" data-simple-status=\"{"id":"4","name":"Reopened","description":"This issue was once resolved, but the resolution was deemed incorrect. From here issues are either marked assigned or resolved.","iconUrl":"/images/icons/statuses/reopened.png","statusCategory":{"id":2,"key":"new","colorName":"default"}}\">Reopened</option>\n <option class=\"imagebacked\" data-icon=\"/images/icons/statuses/resolved.png\" value=\"5\" title=\"Resolved\" data-simple-status=\"{"id":"5","name":"Resolved","description":"A resolution has been taken, and it is awaiting verification by reporter. From here issues are either reopened, or are closed.","iconUrl":"/images/icons/statuses/resolved.png","statusCategory":{"id":3,"key":"done","colorName":"success"}}\">Resolved</option>\n <option class=\"imagebacked\" data-icon=\"/images/icons/statuses/closed.png\" value=\"6\" title=\"Closed\" data-simple-status=\"{"id":"6","name":"Closed","description":"The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.","iconUrl":"/images/icons/statuses/closed.png","statusCategory":{"id":3,"key":"done","colorName":"success"}}\">Closed</option>\n <option class=\"imagebacked\" data-icon=\"/images/icons/statuses/invisible.png\" value=\"10004\" title=\"In Test\" data-simple-status=\"{"id":"10004","name":"In Test","description":"","iconUrl":"/images/icons/statuses/invisible.png","statusCategory":{"id":4,"key":"indeterminate","colorName":"inprogress"}}\">In Test</option>\n <option class=\"imagebacked\" data-icon=\"/images/icons/statuses/generic.png\" value=\"10005\" title=\"Ready\" data-simple-status=\"{"id":"10005","name":"Ready","description":"","iconUrl":"/images/icons/statuses/generic.png","statusCategory":{"id":2,"key":"new","colorName":"default"}}\">Ready</option>\n <option class=\"imagebacked\" data-icon=\"/images/icons/statuses/generic.png\" value=\"11414\" title=\"Documentation Review\" data-simple-status=\"{"id":"11414","name":"Documentation Review","description":"","iconUrl":"/images/icons/statuses/generic.png","statusCategory":{"id":2,"key":"new","colorName":"default"}}\">Documentation Review</option>\n </optgroup>\n</select>\n </div>\n \n","validSearcher":true,"isShown":true}}}
[{"id":-1,"name":"My open issues","jql":"assignee = currentUser() AND resolution = Unresolved order by updated DESC","isSystem":true,"sharePermissions":[],"requiresLogin":true},{"id":-2,"name":"Reported by me","jql":"reporter = currentUser() order by created DESC","isSystem":true,"sharePermissions":[],"requiresLogin":true},{"id":-4,"name":"All issues","jql":"order by created DESC","isSystem":true,"sharePermissions":[],"requiresLogin":false},{"id":-5,"name":"Open issues","jql":"resolution = Unresolved order by priority DESC,updated DESC","isSystem":true,"sharePermissions":[],"requiresLogin":false},{"id":-9,"name":"Done issues","jql":"statusCategory = Done order by updated DESC","isSystem":true,"sharePermissions":[],"requiresLogin":false},{"id":-3,"name":"Viewed recently","jql":"issuekey in issueHistory() order by lastViewed DESC","isSystem":true,"sharePermissions":[],"requiresLogin":false},{"id":-6,"name":"Created recently","jql":"created >= -1w order by created DESC","isSystem":true,"sharePermissions":[],"requiresLogin":false},{"id":-7,"name":"Resolved recently","jql":"resolutiondate >= -1w order by updated DESC","isSystem":true,"sharePermissions":[],"requiresLogin":false},{"id":-8,"name":"Updated recently","jql":"updated >= -1w order by updated DESC","isSystem":true,"sharePermissions":[],"requiresLogin":false}]
0.3
0