Skip to content

[Bug]Regression perfomance since 5.2.4  #3212

Closed
@Rafikys12

Description

@Rafikys12

Describe the bug
the code in TaggedCommitVersionStrategy has been change in 5.2.0 with this code

        var tagsOnBranch = currentBranch
            .Commits
            .SelectMany(commit => { return allTags.Where(t => IsValidTag(t.Item1, commit)); })
            .Select(t =>
            {
                if (t.Item1.PeeledTarget() is Commit)
                    return new VersionTaggedCommit(t.Item1.PeeledTarget() as Commit, t.Item2, t.Item1.FriendlyName);

                return null;
            })
            .Where(a => a != null)
            .Take(5)
            .ToList();

in Mainline mode, it avoid to list all tags

In 5.10.0, the code change and it list all tag, it cause gitversion is very slow in our buildchain (almost 40 minutes)

Expected Behavior

gitversion eecute quickly

Actual Behavior

gitversion very slow

Possible Fix

same as 5.2.4

Steps to Reproduce

Context

In our buildchain, we use repo with many version in githubflow each build is tagged so we have more than 3000 tags.
Gitversion start to be very slow since 5.0.0, so we try to upgrade to 5.10.0. after many research, we found something similar here
#2149
it appear that it fixes our problem

Your Environment

  • Version Used:
    windows 10 64 bit

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions