Details
-
Bug
-
Resolution: Unresolved
-
Low
-
None
-
8.5.3
-
8.05
-
28
-
Severity 3 - Minor
-
3
-
Description
Issue Summary
Issues cannot be deleted if there is/are other linked issue(s) to it.
Steps to Reproduce
- Create issue A
- Create issue B (or more)
- Link issue B (and others) to issue A
- Delete issue A
Expected Results
The issue is deleted successfully
Actual Results
The issue cannot be deleted. It's timed out on UI. When we review the thread dumps, we see N+1 (N is the number of linked issue to issue A) active threads with the stack trace below:
"http-nio-8080-exec-40" #669404 daemon prio=5 os_prio=0 tid=0x00007f674006c000 nid=0x1ceb9 runnable [0x00007f66aaed7000] java.lang.Thread.State: RUNNABLE at sun.nio.ch.FileDispatcherImpl.read0(Native Method) at sun.nio.ch.SocketDispatcher.read(SocketDispatcher.java:39) at sun.nio.ch.IOUtil.readIntoNativeBuffer(IOUtil.java:223) at sun.nio.ch.IOUtil.read(IOUtil.java:197) at sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:380) - locked <0x0000000506b0a188> (a java.lang.Object) at oracle.net.nt.TimeoutSocketChannel.read(TimeoutSocketChannel.java:144) at oracle.net.ns.NIOHeader.readHeaderBuffer(NIOHeader.java:82) at oracle.net.ns.NIOPacket.readFromSocketChannel(NIOPacket.java:139) at oracle.net.ns.NIOPacket.readFromSocketChannel(NIOPacket.java:101) at oracle.net.ns.NIONSDataChannel.readDataFromSocketChannel(NIONSDataChannel.java:80) at oracle.jdbc.driver.T4CMAREngineNIO.prepareForReading(T4CMAREngineNIO.java:98) at oracle.jdbc.driver.T4CMAREngineNIO.unmarshalUB1(T4CMAREngineNIO.java:534) at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:485) at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:252) at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:612) at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:226) at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:59) at oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatement.java:910) at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1119) at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3780) at oracle.jdbc.driver.T4CPreparedStatement.executeInternal(T4CPreparedStatement.java:1343) at oracle.jdbc.driver.OraclePreparedStatement.executeLargeUpdate(OraclePreparedStatement.java:3865) - locked <0x0000000506ad62b8> (a oracle.jdbc.driver.T4CConnection) at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:3845) at oracle.jdbc.driver.OraclePreparedStatementWrapper.executeUpdate(OraclePreparedStatementWrapper.java:1061) at org.apache.commons.dbcp2.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:98) at org.apache.commons.dbcp2.DelegatingPreparedStatement.executeUpdate(DelegatingPreparedStatement.java:98) at com.atlassian.jira.ofbiz.sql.PreparedStatementWrapper.executeUpdate(PreparedStatementWrapper.java:47) at com.atlassian.jira.diagnostic.connection.DiagnosticPreparedStatement.lambda$executeUpdate$7(DiagnosticPreparedStatement.java:69) at com.atlassian.jira.diagnostic.connection.DiagnosticPreparedStatement$$Lambda$1536/973960306.execute(Unknown Source) at com.atlassian.diagnostics.internal.platform.monitor.db.DefaultDatabaseDiagnosticsCollector.recordExecutionTime(DefaultDatabaseDiagnosticsCollector.java:69) at com.atlassian.jira.diagnostic.connection.DatabaseDiagnosticsCollectorDelegate.recordExecutionTime(DatabaseDiagnosticsCollectorDelegate.java:55) at com.atlassian.jira.diagnostic.connection.DiagnosticPreparedStatement.executeUpdate(DiagnosticPreparedStatement.java:69) at org.ofbiz.core.entity.jdbc.SQLProcessor.executeUpdate(SQLProcessor.java:562) at org.ofbiz.core.entity.GenericDAO.deleteByAnd(GenericDAO.java:1281) at org.ofbiz.core.entity.GenericDAO.deleteByAnd(GenericDAO.java:1248) at org.ofbiz.core.entity.GenericHelperDAO.removeByAnd(GenericHelperDAO.java:236) at org.ofbiz.core.entity.GenericDelegator.removeByAnd(GenericDelegator.java:1334) at org.ofbiz.core.entity.GenericDelegator.removeByAnd(GenericDelegator.java:1313) at com.atlassian.jira.ofbiz.DefaultOfBizDelegator.removeByAnd(DefaultOfBizDelegator.java:236) at com.atlassian.jira.ofbiz.WrappingOfBizDelegator.removeByAnd(WrappingOfBizDelegator.java:131) at com.atlassian.jira.issue.link.DefaultIssueLinkManager.removeIssueLinkInternal(DefaultIssueLinkManager.java:176) at com.atlassian.jira.issue.link.DefaultIssueLinkManager.deleteIssueLinksFromIssue(DefaultIssueLinkManager.java:261) at com.atlassian.jira.issue.link.DefaultIssueLinkManager.removeIssueLinksInternal(DefaultIssueLinkManager.java:243) at com.atlassian.jira.issue.link.DefaultIssueLinkManager.removeIssueLinksNoChangeItems(DefaultIssueLinkManager.java:230) at com.atlassian.jira.issue.managers.DefaultIssueDeleteHelper.removeIssueLinks(DefaultIssueDeleteHelper.java:188) at com.atlassian.jira.issue.managers.DefaultIssueDeleteHelper.deleteIssue(DefaultIssueDeleteHelper.java:136) at com.atlassian.jira.issue.managers.DefaultIssueManager.deleteIssue(DefaultIssueManager.java:743) at com.atlassian.jira.issue.managers.RequestCachingIssueManager.deleteIssue(RequestCachingIssueManager.java:247) at com.atlassian.jira.bc.issue.DefaultIssueService.delete(DefaultIssueService.java:424) at com.atlassian.jira.bc.issue.DefaultIssueService.delete(DefaultIssueService.java:400) at com.atlassian.jira.web.action.issue.DeleteIssue.doExecute(DeleteIssue.java:23) at webwork.action.ActionSupport.execute(ActionSupport.java:165) at com.atlassian.jira.action.JiraActionSupport.execute(JiraActionSupport.java:63) at webwork.interceptor.DefaultInterceptorChain.proceed(DefaultInterceptorChain.java:39) at webwork.interceptor.NestedInterceptorChain.proceed(NestedInterceptorChain.java:31) ... ...
There will also be locker sessions in the database with the SQL below:
Delete from userassociation where Sink_Node_ID= :1 and Sink_Node_Entity = :2;
Workaround
Delete the locker sessions in the database so that the threads waiting for these locks can continue to delete the issue.
Attachments
Issue Links
- is related to
-
JRASERVER-74581 Deleting an issue with many sub-tasks is slow and affects cluster performance
- Gathering Impact
- relates to
-
JRASERVER-67483 Database deadlocks when deleting Jira issues using parallel threads.
- Gathering Impact