Page MenuHomePhabricator

Repository information from `arc which` not making it to Phabricator
Closed, ResolvedPublic

Description

After this sequence of events:

  • You create a revision associated with an arcanist project.
  • The arcanist project is associated with a repository.
  • You manually edit the revision to remove the repositoryPHID.
  • Herald rules trigger.

...Herald will too ambitiously re-resolve the arcanist project and come up with a nonempty repositoryPHID. This was the correct rule before, but no longer is. This resolution should be happening in Differential and Herald should just trust Differential.

Event Timeline

epriestley raised the priority of this task from to Normal.
epriestley updated the task description. (Show Details)
epriestley added projects: Herald, Differential.
epriestley added subscribers: epriestley, avive.

@mbishopim3 reports that diffs linked via projects aren't getting the right repositoryPHIDs set. I can't immediately reproduce this, but it falls into the same general ballpark of code needing to move to more modern places in the pipeline (it should all be in diff creation, now).

@mbishopim3, I'm not 100% sure I got your issue -- let me know if you're still seeing it after this.

Unfortunately it doesn't seem to have fixed it, despite our setup and 'arc which' the diffs themselves don't have Repository set.

epriestley renamed this task from Herald is too ambitious when determining repositoryPHID to Repository information from `arc which` not making it to Phabricator.Mar 24 2014, 3:01 PM
epriestley reopened this task as Open.

Okay, can you try this?

  • Create a new revision which exhibits the bug, say Dnnn.
  • In the "Revision Update History" table on the web view, identify the Diff ID (in the "ID" column), say mmm
  • Run these queries:

    SELECT id, repositoryPHID FROM phabricator_differential.differential_revision WHERE id = NNN SELECT id, repositoryPHID FROM phabricator_differential.differential_diff WHERE id = NNN

...and show me the results?