Skip to content

diff: Introduce `DiffBlobs` RPC

Justin Tobler requested to merge jt/diff-blobs-rpc into master

Currently the CommitDiff RPC is used to generate diffs between two points in a repository. This RPC lacks fine-grained control over exactly what diffs are being computed between a set of commits. As a result, if there are many diffs that need to be computed, the RPC may timeout. To remediate this, the caller should instead specify exactly which diffs to generate thus enabling potential pagination.

This change introduces the DiffBlobs RPC which provides callers with the ability to specify batches of blob pairs to the server to compute diffs for. Callers are required to already know the pre-image and post-image blob IDs for each diff that is to be generated. To attain this information, the FindChangedPaths RPC is used.

Related: #5812 (closed)

Edited by Justin Tobler

Merge request reports