Page MenuHomePhabricator

Cannot find transaction info for some events
Closed, ResolvedPublic


Occasionally lines show up in IRC with just a user and no transaction info. This happens because we currently compare timestamps to get transaction info, and hope they're equal. This works for ~70% of cases, but fails, with timestamps being in the past or even in the future. I can easily reproduce this on by spamming comments on a bug and watching which transactions are found and which ones are missing.

On comment "eeek41" had an epoch of 1416804529 from feed.query, but in maniphest.gettasktransactions it reports a dateCreated of 1416804527.

Event Timeline

Legoktm raised the priority of this task from to Needs Triage.
Legoktm updated the task description. (Show Details)
Legoktm added a project: Wikibugs.
Legoktm changed Security from none to None.
Legoktm subscribed.

twentyafterfour deployed a small patch of mine to phab-01 which outputs the transaction phid, giving us exactly what we need (for now at least :P)

--- a/src/applications/maniphest/conduit/ManiphestGetTaskTransactionsConduitAPIMethod.php
+++ b/src/applications/maniphest/conduit/ManiphestGetTaskTransactionsConduitAPIMethod.php
@@ -63,6 +63,7 @@ final class ManiphestGetTaskTransactionsConduitAPIMethod
       $results[$task_id][] = array(
+        'phid' => $transaction->getPHID(),
         'taskID'  => $task_id,
         'transactionType'  => $transaction->getTransactionType(),
         'oldValue'  => $transaction->getOldValue(),

I'll file an upstream bug and see if they'd be willing to accept this patch (or another solution).

This has been fixed upstream in Need to work with @chasemp to get it cherry-picked to production.

Change 178874 had a related patch set uploaded (by Legoktm):
Use transactionPHIDs when getting task transactions


Change 178874 merged by Legoktm:
Use transactionPHIDs when getting task transactions

Legoktm claimed this task.