New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Decrease Out Of Memory chances by scanning 250 commits at a time #270
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It would be better to scan number of files at a time instead of commits.
log.Fatal(err) | ||
} | ||
result := strings.Split(string(out), "\n")[0] | ||
count, _ := strconv.ParseUint(result, 10, 64) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why ignore the error ?
Read -> Scan -> Read -> Scan |
Hi, I think that is an interesting approach! And thank you for working on this performance issue 😄 I am having trouble to finish scans of any "larger" repo on my machine. Repos that are not even considered outrageous by https://github.com/github/git-sizer . The reasons for it might be more than just memory. As I just recently started looking into the talisman code my thoughts/questions might be naive so forgive me 😄
I am playing around with pprof, tracing and git-sizer to better understand the code and where its current bottlenecks are. If I have a clearer picture of this I can post some results. Please point me to your analysis if you already have some results from pprof or similar. Happy to discuss this further :) |
@teleivo This copying full git repo contents to memory is what i thought was causing these issues. |
@dcRUSTy : I've just completed a long pending release. Please close this PR or make it ready for merge, this feature is sought after. |
Previously all additions from all commits were read at time and then scanned which may cause OOM when a repo is huge. Now at a time additions of 250 commits will be read then scanned and so on.
Thoughts - What should be the ideal number of commits to scan at a time?