Closed Bug 1226463 Opened 9 years ago Closed 9 years ago

[vcs-sync] Pushing too much (sometimes) to integration/gaia* repos

Categories

(Developer Services :: General, task)

task
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: u429623, Assigned: u429623)

References

Details

(Whiteboard: [vcs-sync])

Attachments

(1 file)

During work on bug 1224628 a bug was discovered that could (theoretically) impact gecko/gaia "sync". Some CI automation assumes that 'tip' or 'default' is the correct revision to work with. When there are multiple heads on the default branch, this may not be the case (this was a new finding). On the sad path, the sequence could be (using v2.5 as example): - commit to gaia v2.5 branch on github - picked up by vcs-sync (good) - along with some additional heads (bad) - tip of coversion repo in vcssync is the correct commit (good) - when pushed to hg.m.o, one of the additional heads _may_ become tip (bad) At this point, tip _might_ be something not directly related to the desired v2.5 branch. Automation continues: - b2g_bumper notices the additions to integration/gaia-2_5 - b2g_bumper creates updates gaia.json file with tip reference on b2g44-v2_5 gecko branch - CI system notices change and starts build. NOTE: I do not believe there is a way to determine how often this occurred in practice, or when it started occurring. Fortunately, this case only impacts the integration/gaia* repos, which are unique in being a many git branches -> one hg branch mapping. The proposed workaround is to guarantee that the assumption of the CI machinery is a valid one. I.e. that 'tip' or 'default' will only be the appropriate branch.
Attached patch do_update.patchSplinter Review
Implementation of proposed workaround. This script is used for all conversions in vcs-sync, so the change applies _only_ to the v2.5 circumstance. Tested in production :/ for the following cases: - integration-gaia-2_5 - new behavior shown (good) - integration-gaia-1_2f - old behavior observed (good - multiple bookmark exclusion) - build/slaveapi - old behavior observered (good - not integration-gaia) Carrying forward :gps f+ from irc
Assignee: nobody → hwine
Status: NEW → ASSIGNED
Attachment #8689888 - Flags: feedback+
This change is impacting pushing to hg.m.o for integration/gaia-central (i-g-c). i-g-c meets criteria for the changed behavior, and is trying to push the 'master' bookmark (as it should). However, the 'master' bookmark is not properly advancing in the conversion repo, leaving it far behind the tip: [vcs2vcs@ip-172-31-26-60 integration-gaia-central]$ hg id -r default af1822a3aaf5 tip [vcs2vcs@ip-172-31-26-60 integration-gaia-central]$ hg id -r master bf01d5808391 master [vcs2vcs@ip-172-31-26-60 integration-gaia-central]$ Investigating
Unstuck new push logic for now by moving master bookmark to default: hg bookmark -f -r default master in the conversion directory. Most recent commits pushed successfully to integration/gaia-central. Will monitor to see if it stays updated now.
Blocks: 1226544
Has stayed updated, declaring victory.
Status: ASSIGNED → RESOLVED
Closed: 9 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: