Workitem with multiple parents - circular link
Occasionally we see problem with work items that have multiple parents. These work items can't be opened in eclipse, but can in the Web UI.
This problem is resolved after a few days by some background task.
Has anyone else seen this issue?
Is there any log4j setting to highlight when the problem is found and fixed?
Can the background task be initiated or the schedule updated?
When the problem occurs, there is a circular link. A work item has a child link to a work item which includes a parent icon, like below
After a few days the problem is resolved and the icon reverts to its correct type
3 answers
We've already opened PMR's on this issue, but since a background task repairs the issue, it moves quickly into a non-reproducible problem and is soon closed.
The eclipse log shows a generic error, which is not much use.
!ENTRY com.ibm.team.workitem.ide.ui 4 2 2012-06-27 12:15:40.019
!MESSAGE Problems occurred when invoking code from plug-in: "com.ibm.team.workitem.ide.ui".
!STACK 0
com.ibm.team.repository.common.ItemNotFoundException: CRJAZ0215I The following record was not found in the database: com.ibm.team.workitem.common.internal.model.impl.WorkItemHandleImpl@71347134 (stateId: null, itemId: [UUID _mvwfUL7oEeGV_drYWFzuXQ], origin: com.ibm.team.repository.client.internal.TeamRepository@7dde7dde, immutable: <unset>)
at com.ibm.team.repository.client.internal.ItemManager.internalFetchItem(ItemManager.java:1602)
at com.ibm.team.repository.client.internal.ItemManager.access$1(ItemManager.java:1559)
at com.ibm.team.repository.client.internal.ItemManager$AbstractStore.retrieveItem(ItemManager.java:196)
at com.ibm.team.repository.client.internal.ItemManager$CurrentStore.fetchItem(ItemManager.java:321)
at com.ibm.team.repository.client.internal.ItemManager.fetchPartialItem(ItemManager.java:1080)
at com.ibm.team.workitem.client.internal.AuditableClient.resolveAuditable(AuditableClient.java:134)
at com.ibm.team.workitem.client.internal.WorkItemClient.resolveWorkItem(WorkItemClient.java:447)
at com.ibm.team.workitem.client.internal.WorkItemWorkingCopyRegistry.connect(WorkItemWorkingCopyRegistry.java:1226)
at com.ibm.team.workitem.client.internal.WorkItemWorkingCopyRegistry.connect(WorkItemWorkingCopyRegistry.java:564)
at com.ibm.team.workitem.client.internal.WorkItemWorkingCopyManager.connect(WorkItemWorkingCopyManager.java:74)
at com.ibm.team.workitem.ide.ui.internal.editor.WorkItemEditorInput$1.run(WorkItemEditorInput.java:172)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
at com.ibm.team.workitem.ide.ui.internal.editor.WorkItemEditorInput.fetchAll(WorkItemEditorInput.java:155)
at com.ibm.team.workitem.ide.ui.internal.editor.WorkItemEditorInput.getWorkingCopy(WorkItemEditorInput.java:128)
at com.ibm.team.workitem.ide.ui.internal.editor.WorkItemEditorInputFuture$1.runProtected(WorkItemEditorInputFuture.java:86)
at com.ibm.team.foundation.client.util.FoundationJob.run(FoundationJob.java:68)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)
Is there any log4j setting than can be used to output more data when the problem happens again?
The eclipse log shows a generic error, which is not much use.
!ENTRY com.ibm.team.workitem.ide.ui 4 2 2012-06-27 12:15:40.019
!MESSAGE Problems occurred when invoking code from plug-in: "com.ibm.team.workitem.ide.ui".
!STACK 0
com.ibm.team.repository.common.ItemNotFoundException: CRJAZ0215I The following record was not found in the database: com.ibm.team.workitem.common.internal.model.impl.WorkItemHandleImpl@71347134 (stateId: null, itemId: [UUID _mvwfUL7oEeGV_drYWFzuXQ], origin: com.ibm.team.repository.client.internal.TeamRepository@7dde7dde, immutable: <unset>)
at com.ibm.team.repository.client.internal.ItemManager.internalFetchItem(ItemManager.java:1602)
at com.ibm.team.repository.client.internal.ItemManager.access$1(ItemManager.java:1559)
at com.ibm.team.repository.client.internal.ItemManager$AbstractStore.retrieveItem(ItemManager.java:196)
at com.ibm.team.repository.client.internal.ItemManager$CurrentStore.fetchItem(ItemManager.java:321)
at com.ibm.team.repository.client.internal.ItemManager.fetchPartialItem(ItemManager.java:1080)
at com.ibm.team.workitem.client.internal.AuditableClient.resolveAuditable(AuditableClient.java:134)
at com.ibm.team.workitem.client.internal.WorkItemClient.resolveWorkItem(WorkItemClient.java:447)
at com.ibm.team.workitem.client.internal.WorkItemWorkingCopyRegistry.connect(WorkItemWorkingCopyRegistry.java:1226)
at com.ibm.team.workitem.client.internal.WorkItemWorkingCopyRegistry.connect(WorkItemWorkingCopyRegistry.java:564)
at com.ibm.team.workitem.client.internal.WorkItemWorkingCopyManager.connect(WorkItemWorkingCopyManager.java:74)
at com.ibm.team.workitem.ide.ui.internal.editor.WorkItemEditorInput$1.run(WorkItemEditorInput.java:172)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
at com.ibm.team.workitem.ide.ui.internal.editor.WorkItemEditorInput.fetchAll(WorkItemEditorInput.java:155)
at com.ibm.team.workitem.ide.ui.internal.editor.WorkItemEditorInput.getWorkingCopy(WorkItemEditorInput.java:128)
at com.ibm.team.workitem.ide.ui.internal.editor.WorkItemEditorInputFuture$1.runProtected(WorkItemEditorInputFuture.java:86)
at com.ibm.team.foundation.client.util.FoundationJob.run(FoundationJob.java:68)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)
Is there any log4j setting than can be used to output more data when the problem happens again?
Mike,
the above error could as well be a repository inconsistency issue that would show up in the work item editor.
In the stack, you see: WorkItemEditorInput.getWorkingCopy
but the basic failing piece is in the repository:
CRJAZ0215I The following record was not found in the database: com.ibm.team.workitem.common.internal.model.impl.WorkItemHandleImpl@71347134 (stateId: null, itemId: [UUID _mvwfUL7oEeGV_drYWFzuXQ], origin: com.ibm.team.repository.client.internal.TeamRepository@7dde7dde, immutable: <unset>)
at com.ibm.team.repository.client.internal.ItemManager.internalFetchItem(ItemManager.java:1602)
So I would:
1 - run the onlineVerifier tool against both JTS and CCS repos - https://jazz.net/wiki/bin/view/Main/OnlineVerifyTool
expect NO error
2 - if there are errors, attach the logs to your PMR
3 - in your case, there is not much tracing I would add in the log4j - there is a repo Exception - and it's thrown
(the editor is trying to load a reference (as set in the links) to a work item that does not exist in the repo - possibly a work item belonging to an archived PA? A deleted work item?)
Thanks
the above error could as well be a repository inconsistency issue that would show up in the work item editor.
In the stack, you see: WorkItemEditorInput.getWorkingCopy
but the basic failing piece is in the repository:
CRJAZ0215I The following record was not found in the database: com.ibm.team.workitem.common.internal.model.impl.WorkItemHandleImpl@71347134 (stateId: null, itemId: [UUID _mvwfUL7oEeGV_drYWFzuXQ], origin: com.ibm.team.repository.client.internal.TeamRepository@7dde7dde, immutable: <unset>)
at com.ibm.team.repository.client.internal.ItemManager.internalFetchItem(ItemManager.java:1602)
So I would:
1 - run the onlineVerifier tool against both JTS and CCS repos - https://jazz.net/wiki/bin/view/Main/OnlineVerifyTool
expect NO error
2 - if there are errors, attach the logs to your PMR
3 - in your case, there is not much tracing I would add in the log4j - there is a repo Exception - and it's thrown
(the editor is trying to load a reference (as set in the links) to a work item that does not exist in the repo - possibly a work item belonging to an archived PA? A deleted work item?)
Thanks