Build1 publisher3 min readPublished
The mirror Datadog put in front of its GitLab backend now takes over 100 million requests a week at a 40 ms median. The number that explains the rebuild is the several seconds of server CPU one monorepo fetch costs.
The Engineer · Build desk

Compiled by The EngineerSomething wrong?How this is made
A median of 40 ms across more than 100 million weekly requests is a statement about the request mix [5][6]. Datadog puts one fetch from a large monorepo at several seconds of server CPU [12]. To finish several seconds of CPU work inside 40 ms of wall clock, you would need on the order of 75 cores on that single request [3]. The median, then, describes the fleet staying responsive while the heavy requests ran underneath it, which is the right thing to measure for a mirror, and the wrong number to plan a monorepo clone budget around.
Twentyfold growth to more than 100 million requests a week puts launch near 5 million a week [1]. The first four months carried more than a billion requests [4], about 58 million a week over roughly 17 weeks, which sits above the 52.5 million midpoint between those two endpoints [2]. The load did not arrive gently at the end.
The three-to-fourfold CPU reduction is reported on the previous backend [7], the Gitaly cluster behind Praefect that CI fetched from directly [8]. That measures work leaving the tier that was failing. What gitretriever spends to serve the same fetch is a separate number, and it is the one that decides whether this is efficiency or relocation.
Datadog's replicated setup copied every write to every replica, so each node added to serve reads added replication work [14]. Reads scale with CI job count; writes scale with replica count [17]. Adding nodes to a system where every write lands on every node is a capacity plan with a sign error. Peaks landed as hundreds of simultaneous fetches on the same handful of nodes, and more nodes sometimes made per-node CPU worse [13].
A CDN or caching proxy has nothing to hold, because the expensive part of a fetch is computation specific to each client's request rather than a static byte range [15]; Git's objects are immutable and content-addressed while references are mutable names stored separately [18]. Cloning on demand from GitHub relocates the herd to an upstream with server-side rate limits [16]. Both obvious escapes fail for the same structural reason: neither changes what actually costs the CPU.
For these numbers to transfer, several things have to be true of your setup. Your authoritative remote has to be separate from the one CI reads, as GitHub and self-hosted GitLab are here [8]. Read volume has to track job count, not headcount [17]. Your repositories have to be dense enough that a single fetch costs seconds of CPU, which for Datadog means monorepos with years of history and hundreds of thousands of files [2][12]. If your Git server is one node, or a replica set that does not fan writes out to every member, the constraint that forced this design is not your constraint.
Senior staff engineer Mike Thompson and staff engineer Daniel Esponda attribute the order-of-magnitude traffic jump to AI coding agents, which they say hit Git harder and more often than Datadog's most active human contributors ever did [9][19]. If that is the driver, Git capacity stops tracking contributor count and starts tracking agent concurrency, and the fetch path is a thing you size deliberately before it turns into multi-hour CI outages [10].
Ranked by verification strength, evidence, and original report placement.
Datadog CI fetches code millions of times a week across thousands of repositories.
Datadog's largest repositories are monorepos with years of history and hundreds of thousands of files.
gitretriever is the Git mirror Datadog built to serve code to CI at its scale.
In its first four months, gitretriever served more than a billion Git requests and hundreds of terabytes of code.
gitretriever today handles more than 100 million Git requests each week.
Despite 20x traffic growth since launch, median latency has remained around 40 ms.
Publishers with included, body-backed reporting in this cluster.
1 article · September 6, 2026
Follow any of these and your For You feed starts watching them — no settings page required.
build
The stability step is a branch, not a pipeline: inside one team's release-candidate discipline1 publisher
build
The weights never moved: what 6,852 Claude Code sessions say about where regressions live1 publisher
build
Opting into native Git in SageMaker Unified Studio turns every save into a staging decision1 publisher
product
Cursor becomes a code host by default, and GitHub's seven outages in 15 days is the opening4 publishers
Evidence-backed comparisons of source perspectives and observed adoption signals. Read the methodology
Which Builder, Operator, and Investor concerns the observed source mix emphasized—not a truth score.
Evidence, demonstrated adoption, hype gap, incentives, and confidence are assessed independently, each on its own current evidence. How these are measured.
One company's dashboards
Datadog is the only witness to every figure here, gitretriever exists nowhere outside Datadog, and no one else can re-run the measurement. What lifts this above a bare vendor claim is that the mechanism is checkable against how the software actually behaves: replicate-every-write in Gitaly Cluster and per-client packfile construction in the Git v2 protocol are documented properties, not assertions. Working against it, the account available to us stops mid-sentence in the section describing how the server builds a response packfile, which is the piece of the design a sceptical reader would most want to see.
Heavy load, single adopter
More than 100 million Git requests a week is production traffic rather than a pilot, and hundreds of terabytes moved in four months is difficult to overstate. It is also confined to one organisation: gitretriever sits on Datadog's own CI path, nothing in this reporting offers it to anyone else, and no second operator is described as running it.
Real result, edges shaved
The promise of 20x the traffic without getting slower rests on one median with no tail figure beside it, which is the friendliest way to report latency under load. Two of the published numbers also refuse to sit together: a fetch costing several seconds of server CPU cannot complete inside 40 ms, so the headline latency and the headline cost describe different requests, in a mix Datadog does not disclose. The underlying engineering result reads as genuine; the framing rounds in its own favour.
Self-vindicating by construction
The story is one in which Datadog's engineers correctly diagnosed the problem and built the right replacement, told solely by Datadog, about a component that took over reads from a vendor product Datadog still runs. Internal plumbing is not for sale, which keeps the commercial pull modest, but Datadog does sell CI visibility, and a post demonstrating this depth of CI expertise is not published without purpose.
Mechanism firmer than magnitude
Treat the causal account and the numbers separately. Copying every write to every replica does make read scale-out self-defeating, and per-request packfile work does resist edge caching; both hold whoever reports them. The magnitudes are softer. Twentyfold growth to more than 100 million weekly requests implies about 5 million a week at launch, yet a billion-plus requests over four months averages roughly 58 million a week, which does not fit that ramp, and no figure in the story has been checked by anyone outside Datadog.