Closed Bug 1609207 Opened 4 years ago Closed 4 years ago

moz-phab reorg fails with AssertionError

Categories

(Conduit :: moz-phab, defect, P2)

defect

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: mgaudet, Assigned: zalun)

References

Details

(Keywords: conduit-triaged)

Attachments

(1 file)

I recently added a patch in the middle of stack, and thought I would try to use re-org to fix the phabricator revisions. It failed however:

$ moz-phab reorg 2ea8755ea66b f7846f1febfd --trace
Reorganisation based on 4 commits:
Traceback (most recent call last):
  File "/home/matthew/.local/lib/python3.6/site-packages/mozphab/mozphab.py", line 5317, in main
    args.func(repo, args)
  File "/home/matthew/.local/lib/python3.6/site-packages/mozphab/mozphab.py", line 4869, in reorganise
    phabstack = conduit.get_stack(localstack_ids)
  File "/home/matthew/.local/lib/python3.6/site-packages/mozphab/mozphab.py", line 952, in get_stack
    assert edge["sourcePHID"] not in stack
AssertionError

wip output: @ is the newly added commit; I rebased the old top-of-stck commit f7846f1febfd on top of @

o  571870:f7846f1febfd mgaudet Bug 1602114 - Use ParseInfo::sourceObject instead of the newly created script's sourceObject r?tcampbell
@  571869:20e33c7669e9 mgaudet Bug 1602114 - Remove sourceObjectOut param from CompileGlobalScript r?tcampbell
o  571845:2182d917291c mgaudet Bug 1602114 - Root ScriptSourceObject inside of ParseInfo r?tcampbell
o  571842:2ea8755ea66b mgaudet Bug 1602114 - Don't pass parameterListEnd to CreateScriptSourceObject r?tcampbell
| o  571841:ca23daf19391 robert D59827 Bug 1608183 - Moved js::ScopeCreationData to js::frontend::ScopeCreationData namespace r?mgaudet
|/

This is the phabricator revision: https://phabricator.services.mozilla.com/D59911

$ moz-phab version
MozPhab (0.1.72)
Assignee: nobody → pzalewa
Keywords: conduit-triaged
Priority: -- → P2

Reproduced, I'm working on the issue.

An error should be raised, as the stack in Phabricator is not linear. The error should be different though.
After submitting the A' > C > B' we've automatically linked revision A as a parent of C in Phabricator.

To fix this issue fully we'll need to check if we're not making a non-linear tree in Phabricator while submitting.

Workaround

Please submit new commits as a single revision.

Steps to reproduce:

Note: A is a commit without a revision, A' is a commit with a revision in Phabricator

echo A > X; hg add; hg commit -m A
echo B > X; hg commit -m B
moz-phab submit -y -b 1
# A' > B'
hg up 3
echo C > Y; hg add; hg commit -m C
# A' --> B'
#    \-> C
hg rebase -s 5 -d 6
# A' > C > B'
moz-phab submit -y -b 1 
# A' > C' > B'
# C has a review, but stacks are different
hg reorg -y 3
See Also: → 1609909
Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: