How to find defects where owner was changed

Document ID : KB000057538
Last Modified Date : 14/02/2018
Show Technical Document Details

Issue

Can I query RevisionHistory to find defects that I used to be the Owner, but were later reassigned to another user?

Resolution

WS API does not lend itself to retrieving historic data. Parsing Revisions to match

"OWNER changed from [me@company.com] to"

is expensive and inefficient.

In Rally SaaS (but currently not in on-premises Rally instances) you may use Lookback API designed to work with historic data.

Here is an example of Lookback API query that returns artifacts where defect Owner was reset from my user to some other user:
?
https://rally1.rallydev.com/analytics/v2.0/service/rally/workspace/12345/artifact/snapshot/query.js?find={"Project":4567,"_TypeHierarchy":"Defect","_PreviousValues.Owner":777}&fields=["ObjectID","_ValidFrom","_ValidTo","FormattedID","Owner","_PreviousValues.Owner"]&compress=true

Replace placeholder ObjectID values with valid ObjectID values before trying it in your environment.

workspace/12345 is a reference to a workspace with ObjectID 12345
"Project":4567 indicates a project with ObjectID 4567
"_PreviousValues.Owner":777 indicates a user with ObjectID 777.

Prior to running this query in my workspace I changed ownership of DE6 from one user account to another, with Object IDs 721165372 and 2241426289 respectively. Here is a fragment of the returned json:
TotalResultCount: 1,
StartIndex: 0,
PageSize: 100,
ETLDate: "2014-11-20T16:48:48.254Z",
CompressedResultCount: 1,
Results: [
{
_ValidFrom: "2014-11-20T16:48:48.254Z",
_ValidTo: "9999-01-01T00:00:00.000Z",
ObjectID: 12397183572,
Owner: 2241426289,
_PreviousValues: {
Owner: 721165372
},
FormattedID: "DE6"
}
]
}

Lookback API is language agnostic. There is currently no built-in support for it in Rally toolkits for .NET, Java, Ruby or Python, but it has a built-in support in javascript AppSDK2.? SnapshotStore? in AppSDK2? can retrieve data from Lookback API.