Closed Bug 1175398 Opened 9 years ago Closed 6 years ago

comm-central tryserver applies M-C patches in SORTING ORDER of the FILENAME and not in the order in the patch queue

Categories

(Release Engineering :: General, defect)

defect
Not set
normal

Tracking

(Not tracked)

RESOLVED INCOMPLETE

People

(Reporter: ishikawa, Unassigned)

Details

I had a problem of hg failing to apply M-C patches.

I thought my issue was related to
Bug 1154222 comm-central tryserver does not clean mozilla patches if m-c tip has not changed
but upon closer inspection, when I realized my problem persisted even after m-c tip seems to have changed, the issue is as follows.

To quote Joshua Cranmer after I posted the question to moz.dev.builds:
 https://groups.google.com/forum/#!topic/mozilla.dev.builds/pRr8gw0Ued0
(There is a thread with the subject: "Changes to TB tryserver?"

--- begin quote --- ('*' marks are mine)
The tool works by listing the mozilla-* files, sorting them, and then
                                           ********************
applying them in order. There is a bug in that, under certain
circumstances, it could try to apply patches due to working directory
reuse on build slaves. 
--- end quote ---

Well, looking at
"ReleaseEngineering/ThunderbirdTryServer"
https://wiki.mozilla.org/ReleaseEngineering/ThunderbirdTryServer

I found no mention of this particular ordering.
I think, in my case, I could use TryServer without a problem a few years ago
because there was no interdependencies of M-C patches I created and/or
by sheer luck, the patch's application order was the same as that of patch name's alphanumerical sort order! (I have not touched my submission script since then until today.)

In the above wiki, there is a sentence:
Current:
The client.py code will automatically apply your patch when the code is checked out. Any apply failures will cause the builds to be aborted. 

I think this should be reworded to explain the ordering issue.

New:
--- begin quote ---
The client.py code will automatically apply your patch when the code is checked out. 

CAUTION:The " mozilla-*" patches are applied in the order of the file names, and not in the order they are checked in. 
So name the "mozilla-*" files so that patches are applied in the desired order when there are interdependencies.

Any apply failures will cause the builds to be aborted. 
--- end quote

"CAUTION" part can be bold or something to stress it.

I am submitting this bugzilla to make people aware of this subtle issue.

TIA
Summary: comm-central tryserver applies M-C patches in ALPHABETICAL ORDER and not in the order in the patch queue → comm-central tryserver applies M-C patches in SORTING ORDER of the FILENAME and not in the order in the patch queue
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → INCOMPLETE
Component: General Automation → General
You need to log in before you can comment on or make changes to this bug.