Skip to content
This repository was archived by the owner on Apr 18, 2026. It is now read-only.
This repository was archived by the owner on Apr 18, 2026. It is now read-only.

Feature request: Implement Pack Object cache with a hook #8

@sluongng

Description

@sluongng

When using goblet to serve a repository for a large concurrent CI setup, it might be desirable to make use of https://git-scm.com/docs/git-config#Documentation/git-config.txt-uploadpackpackObjectsHook to wrap around git-pack-objects and cache the output per unique request.

Multiple requests (from CI workers) asking for a same combination of objects would only trigger a single git-pack-objects which will simultaneously write to both process stdout and to an on-disk cache dir. Subsequent requests can be served from the cache dir instead of having to re-trigger git-pack-objects, which will save a lot of CPU time.

Prior art could be found in Gitlab's Gitaly https://gitlab.com/gitlab-org/gitaly/-/blob/master/doc/design_pack_objects_cache.md

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions