Closed Bug 484542 Opened 15 years ago Closed 15 years ago

l10n builds fire for every changeset in a push

Categories

(Release Engineering :: General, defect, P3)

x86
All
defect

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: nthomas, Assigned: Pike)

References

Details

(Whiteboard: [l10n])

Attachments

(1 file, 1 obsolete file)

In contrast to en-US builds, if a localizer sends many changesets in push, like the top block here
 http://hg.mozilla.org/l10n-central/sv-SE/pushloghtml?fromchange=f813ef345241&tochange=37031d081111
then l10n builds are fired for each changeset, eg
 http://production-master.build.mozilla.org:8010/builders/WINNT%205.2%20mozilla-central%20l10n/builds/9492
through 9500. A single build on the latest change is enough isn't it ?
I believe it is enough with one build.

Taking this bug but will deal with after done with other bugs I have. Anyone can take if it has higher priority than what I have given to it.
Assignee: nobody → armenzg
Priority: -- → P3
Whiteboard: [l10n]
In my head, this depends on flexible buildrequest merging in 0.7.10, bug 481886.

The alternative way would be to merge the changes, but that sounds hackier.

Using the tipsonly option on the pushlog hook won't work, because that doesn't return the right list of files.
Depends on: 481886
This is the first half for the 0.7.10-based version.

This goes along with a merge function in master.cfg like

def mergeRequests(builder, req1, req2):
    return req1.properties == req2.properties
c['mergeRequests'] = mergeRequests

(Somewhat oversimplified, you need to check the builder name if it's an l10n build, and otherwise fall back to merging of the source stamps in the requests)
Assignee: armenzg → l10n
Status: NEW → ASSIGNED
Attachment #369059 - Flags: review?(ccooper)
Attachment #369059 - Flags: review?(armenzg)
Comment on attachment 369059 [details] [diff] [review]
make the use of NoMergeStamp conditional

Axel, there is something weird about this patch:
>-  def __init__(self, name, inipath, treeStableTimer = None, buildOnEnUS=True):
>+  def __init__(self, name, inipath, treeStableTimer = None, buildOnEnUS=True,
>+               nomerge=True):

It says that you remove a line that already has buildOnEnUs when I don't see that parameter in our repo.
http://hg.mozilla.org/build/buildbotcustom/file/tip/l10n.py#l709

I didn't know if to give r- or r+ due to that since I believe the patch should be against the relEng's repo (I don't see that parameter in your repo either)
The patch is syntactically correct and does what you say it does correctly.

Another thing, could you please give patches with -u8p? From the patch I could not know which class was being modified.
This patch is coming after the one in bug 482968 on my patch queue. I'm kinda hopeful that that's gonna be tip soon :-)

To put this patch into context, 

0 A bug398954.patch
1 A bug482968.patch
2 A defaultdict.patch
3 A bug484542.patch

is what I'm using locally right now. Splendid, huh?

I've converted the repo to use -u8p patches now, want an updated patch?

Sorry, I should cross-check more thoroughly if patches depend on each other.
Attachment #369059 - Flags: review?(armenzg) → review+
Comment on attachment 369059 [details] [diff] [review]
make the use of NoMergeStamp conditional

Don't worry. It happens.

An updated patch should help coop when applying and commiting it for you unless you have commit access to the build repos (I can't remember).

The logic is correct and therefore r+.
Comment on attachment 369059 [details] [diff] [review]
make the use of NoMergeStamp conditional

Please make sure buildOnEnUS is set to False in __init__ prior to check-in, but looks fine otherwise.
Attachment #369059 - Flags: review?(ccooper) → review+
Updated patch including -pu8, and False as default for buildOnEnUS and making sure that the default for nomerge is right.
Attachment #369059 - Attachment is obsolete: true
Attachment #370861 - Flags: review+
Status: ASSIGNED → RESOLVED
Closed: 15 years ago
Resolution: --- → FIXED
In the future, please pay attention to the check-in policies here: https://wiki.mozilla.org/ReleaseEngineering:BuildbotBestPractices

I know it's not the most convenient for you, but it eases the administration of our master instances...
Mind pointing out where I didn't?
bhearsum didn't know about our out-of-band conversation in #L10n. I'm planning to reconfig with this change after the current build backlog clears.
(In reply to comment #11)
> Mind pointing out where I didn't?

Sure. Sorry, I should've done that in the first place.

"Patches should not be checked in until you are ready to update the master with them. This helps to avoid situations where an urgent fix needs to go in, and a random unrelated patch ends up getting enabled at the same time."
Clearly shows that the policy doesn't work. Can you get one that's enabling external contributions?
(In reply to comment #14)
> Clearly shows that the policy doesn't work. Can you get one that's enabling
> external contributions?

Let's take this elsewhere.
production-master has been reconfig-ed with this patch.
Product: mozilla.org → Release Engineering
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: