Tryserver 2.0 – Fine tuning and learning the hard way

I really thought the try server as a branch was ready to roll out when I did it.  Seriously.  It took a couple of months to get it to the point where I felt it was ready for the public.  So I pushed it live last week – detail here.

Immediately a few issues came up that ruined my vision of a smooth transition:

* Emails were going to the changeset author and not the person pushing the change. Turns out I had changed this default behaviour and didn’t know that there was a reason why we used to grab the email address from buildbot sendchange info instead of from hg author.

* Packaged unittests were being merged.  This was quite a big deal for the first full day of being live because people were getting all kinds of strange emails about results that weren’t theirs.  The reason this wasn’t caught in testing was that there is no 1:1 mapping between a build and its packaged unit test results (except when you go look at tbpl). We should get one set up for MozillaTest where our staging results go in order to make sure something like this doesn’t happen again.

* The URL included in an email regarding test results didn’t contain a changeset – only the build and leak test builders were setting the information needed to grab this for the emails.  Thanks to dbaron for catching that quickly and bringing it to my attention.

* The try-mac slaves got delayed on their way to the new tryserver’s slave pool because of some glitches with puppet and so a huge backlog formed for OS X builds and people thought they didn’t even exist.  Because the backlog got so large (80+ full-length builds) I opted to restart the master, wiping those out of the queue in order to get the tryserver back to decent turnaround for all platforms.

I’m still ironing out some issues, tweaking the email results, and I’ve temporarily disabled the web interface as I work on getting it to use hg push so that all the inputs to tryserver arrive in the same way.  I’m also trying to get more slaves to add to the builder pool since the packaged unittest builders are builder hogs. 

Let me know if I’ve missed anything.  It’s my goal this quarter to make tryserver as helpful as possible in keeping mozilla-central green. 

Tryserver 2.0 is Live

This morning the quietly running in the background try-as-branch became the new try server and the try you’ve known for a few years now is about to be turned off.

You will now be getting opt and debug builds, as well as packaged unit tests for all current try platforms (64 bit are on the way). If you would like to read more about how the new try server works you can look to https://wiki.mozilla.org/Build:TryServerAsBranch where how to add a custom mozconfig and where to file bugs on tryserver issues is covered, as well as other info.

Now that this new tryserver is up and running, the remaining try slaves from the current tryserver are quickly being moved over and we will be back to full speed on try builds in the next few days.

Upcoming work on try will see 64 bit builds, sending the unit tests over to talos user desktop platforms for testing (just like mozilla-central has now) and also allowing you to select with more granularity which try builds/platforms you would like your patch to be done on. Also there will be a try branch for 1.9.2-based builds coming soon – tracking bug for that is 563822

If you have questions, come find me (lsblakk) in #build or #developers or you can file bugs on tryserver.

Speaking of bugs, this new try-as-branch will allow RelEng to close the following pretty much right away:

I really appreciate everyone’s patience during this transition, I hope that the new tryserver gets us better results and helps keep trunk building green.

I’m much less interesting now…thanks to Facebook.

Two days ago, my Facebook page threw me a very large popup explaining that now all my interests (music, books, etc) were to become links to Pages and that I could either accept turning all my interests into links to their respective pages or go and customize. I took a second to customize because I’m not necessarily interested in being attached to the Page for all my favourite things. Once I finished this step my profile’s Info section was updated for me and now it looks like I’m only interested in 1 movie, 6 authors, and about 20 bands. This is so far from representing my actual interests. It’s also very different than what I had originally taken time to enter into my profile back when I opened my Facebook account.

So here’s what I’ve gathered so far about what Facebook is doing to me:

* My self-described interests were no longer valid and were removed – looks like you can still add things that don’t have pages, but they’d better not have the same name as an existing page or you’ll link to the wrong thing. I don’t like that I have to go and re-enter my interests.
* If there’s no existing page for something you list as an item a Community Page is created that states

“Our goal is to make this Community Page the best collection of shared knowledge on this topic. If you have a passion for {interest}, sign up and we’ll let you know when we’re ready for your help. You can also get us started by suggesting a relevant Wikipedia article or the Official Site.”

* This new Community Page automatically aggregates any mention of the item – so a book I mention in my profile is cross-posted to the news feed for that page without my knowledge or consent even if that item is not in my interests!

From cnet:

“This is a really significant step for Facebook. For years we’ve been saying that FB is an open platform, but now for the first time, the likes and interests of my Facebook profile link to places that are not Facebook.com…My identity is not just definied by things on Facebook, it’s defined by things all over the Web.”

I don’t think that this is putting your “open platform” where your mouth is. They are doing this with major partners like Amazon. Partners who bought into having “like” buttons on their sites. Facebook is streaming content from user profiles into pages for movies, books, bands, and television shows to promote those items without the user being aware, or interested in doing this kind of free advertising. Until now people signed up to be reviewers on sites like Amazon but now you’re going to be one whether you want to be or not. I don’t read “open” into this thinking. Open doesn’t mean a free-for-all of data being tossed around the web without permission. Open should allow you to customize, and to look behind the curtain to make sure you know where information is going.

Here’s my attempt at an analogy:

I buy a t-shirt for a band I like. It’s got a nice design and that’s why I chose it. I wear this shirt every day. Suddenly one day, I’m talking to a friend and I mention a band I saw the other night and my shirt design changes to that band’s logo. I’m not controlling this change, I may not even notice that it changed but from now on I’m a walking billboard for whatever music I talk about. The bands get attention, the record companies get money, what do I gain from having a shirt that changes all the time and no longer just displays the design I selected it for?

Having just read danah boyd’s SXSW talk yesterday about privacy and publicity I feel very sensitive to this new collapse of worlds that has been thrust upon me. She summarized the Facebook’s news feed update as follows:

Consider the Facebook News Feed fiasco from a few years ago. What Facebook did was aggregate content in ways that made it more visible to users who could already access it. In essence, it made quasi-public data more public. Many users flipped. Why? There’s a big difference from knowing that I just entered an “it’s complicated” relationship by looking at my profile and getting that information in a stream of updates. In effect, Facebook publicized publicly available content, making it more public. Time and time again, this is what technology companies do. Can users adjust? Yes, and they do. But their behavior changes or they find themselves in a lot of trouble in ways that they weren’t expecting.

So it looks like it’s time to adjust again. I’ve certainly learned that changing my relationship status in Facebook gets broadcast to everyone instead of just hanging out in my profile for the curious friends I have to discover. Now I must learn that if I mention a band, book, tv show, or movie I’d better really like it.