Should we use hgwatchman and/or remotefilelog hg extensions at mozilla?

NEW
Unassigned

Status

Developer Services
Mercurial: hg.mozilla.org
3 years ago
11 months ago

People

(Reporter: pmoore, Unassigned)

Tracking

Details

(Whiteboard: [kanban:engops:https://mozilla.kanbanize.com/ctrl_board/6/712] )

(Reporter)

Description

3 years ago
After reading https://code.facebook.com/posts/218678814984400/scaling-mercurial-at-facebook/ I'm curious if we should investigate using hgwatchman and/or remotefilelog hg extensions. Maybe we already are!

<extract>

Open Source

Together, the hgwatchman and remotefilelog extensions have improved source control performance for our developers, allowing them to spend more time getting stuff done instead of waiting for their tools. If you have a large deployment of a distributed revision control system, we encourage you to take a look at them. They've made a difference for our developers, and we hope they will prove valuable to yours, too.

</extract>
This technology is evolving -- at the time I first heard about it (early 2014), the claim was it had the most benefit for devs on a fast network. All of their devs are hardwired to the internal network.

For remote workers, the tradeoff is quick first clone, but possible loss of disconnected usage (as backfilling commits requires a connection).

Greg may have more recent information on this, to help us prioritize the work involved.

Comment 2

3 years ago
Local developers should absolutely use hgwatchman. I use it.

Benefits of hgwatchman in automation would need to be measured. It won't hurt. But I'm not sure if we'd see any noticeable gains.

remotefilelog is special. If we deployed it properly (with memcached, etc), Firefox automation should see a huge win. Developers on fast connections would also see a huge win.

However, remotefilelog currently requires SSH connectivity. That makes it a non-starter for a lot of people (I think). Of course, we can patch remotefilelog to work over HTTP or some other TCP protocol...
(Assignee)

Updated

3 years ago
Product: Release Engineering → Developer Services

Updated

3 years ago
Whiteboard: [kanban:engops:https://kanbanize.com/ctrl_board/6/206]

Updated

3 years ago
Whiteboard: [kanban:engops:https://kanbanize.com/ctrl_board/6/206] → [kanban:engops:https://mozilla.kanbanize.com/ctrl_board/6/712] [kanban:engops:https://kanbanize.com/ctrl_board/6/206]
(Assignee)

Updated

3 years ago
Whiteboard: [kanban:engops:https://mozilla.kanbanize.com/ctrl_board/6/712] [kanban:engops:https://kanbanize.com/ctrl_board/6/206] → [kanban:engops:https://mozilla.kanbanize.com/ctrl_board/6/712]
QA Contact: hwine → klibby
You need to log in before you can comment on or make changes to this bug.