Thanks for the reminder David. I think it would definitely help sheriffs and 
our tree if we all followed these backout procedures. Gaia moves extremely 
fast, and we often see conflicts when backing things out. Gaia developers are 
probably the best suited to handle these conflicts.

We can additionally lessen the burden on sheriffs and keep the tree healthy by:

- Pay attention to the tree state after landing patches. This includes Travis 
and TBPL.
- Avoid landing risky patches late in the day, or right before you go home.
- Ensure commits have a reference to the bug where it was reviewied, and that 
bug has the hash of where it landed. I've seen us mess this one up a bit 
recently and it can make backouts quite painful.


Best,
Kevin


----- Original Message -----
From: "David Burns" <dbu...@mozilla.com>
To: mozilla-dev-...@lists.mozilla.org, dev-g...@lists.mozilla.org
Sent: Monday, April 7, 2014 5:07:38 PM
Subject: What a sheriff is...


There appears to be some confusion over what the role of a sheriff is 
especially when it involves FirefoxOS (B2G and Gaia). For a long time the 
Sheriffs, who work in the Automation and Tools Team (A*Team) have been managing 
the trunk trees and inbound trees for Gecko in "real time". 
Their role is to try keep the trees as green as possible and when there are 
intermittent s to star them (just note that this is a known flaky test). They 
also spot trends in test suites like a patch that has increased the likelihood 
of an intermittent and will then backout the offending patch.When they are 
backing out patches they may close the tree so that they don't get "pileups" of 
bad patches. In the Gecko world, tests can take hours to run due to the 
complexity of the product, so pileups can cause a lot of unnecessary work.They 
are also helpful in landing patches if a bug has been marked with 
"checkin-needed" or if there is a request to uplift patches to Aurora or Beta. 
They do this by working extremely closely with the Release Management team 
making sure things land where they should. 

Unfortunately the term sheriff appears to have been overloaded in the FirefoxOS 
world muddying the original meaning of crew within the A*Team. This has meant 
that the sheriffs are getting requests for tasks that do not fall into any of 
the above buckets. 

The main item that is getting confused are requests to do backouts if QA has 
found a regression. This is not in the remit of the sheriffs simply because 
they lack the context of the patch and therefore can't make the correct 
judgement call on backing it out. 

Before asking a sheriff to do a backout please make sure you have approached 
the following people (starting with the person with most context to the person 
with least context): 

1. The engineer that landed the patch 
2. The reviewer of the patch 
3. The module peers for the area that the patch affected 
4. The module owner 
5. Any B2G developer in your timezone 
6. The Sheriffs 

The sheriffs are there to help when things are happening straight away, the 
longer the patch is in the tree the bigger the chance a backout could cause 
more harm , since it's more likely to interact with subsequently landed 
patches. To put it another way, sheriffs usually operate at a repo's head; 
that's where their expertise lies. They don't have the necessary context to 
make decisions about the impacts of backing out "old" patches. 

If anyone has any questions please feel free to email me directly. 

David 




_______________________________________________
dev-gaia mailing list
dev-g...@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-gaia
_______________________________________________
dev-b2g mailing list
dev-b2g@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-b2g

Reply via email to