• Luke Duncalfe's avatar
    Enrich commits with full data in CommitCollection · 38bf176c
    Luke Duncalfe authored
    Allow incomplete commit records to load their full data from gitaly.
    
    Commits can be based on a Hash of data retrieved from PostgreSQL, and
    this data can be intentionally incomplete in order to save space.
    
    A new method #gitaly? has been added to Gitlab::Git::Commit, which
    returns true if the underlying data source of the Commit is a
    Gitaly::GitCommit.
    
    CommitCollection now has a method #enrich which replaces non-gitaly
    commits in place with commits from gitaly.
    
    CommitCollection#without_merge_commits has been updated to call this
    method, as in order to determine a merge commit we need to have parent
    data.
    
    Fixes https://gitlab.com/gitlab-org/gitlab-ce/issues/58805
    38bf176c
commit_collection_spec.rb 5.21 KB