Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitaly.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2018-06-13Version 0.105.1v0.105.10-105-branchJacob Vosmaer
2018-06-13Bumping gitlab-gollum-rugged-adapter to version 0.4.4.1 and ↵Francisco Javier López
gitlab-gollum-lib to 4.2.7.4
2018-06-04Version 0.105.0v0.105.0Jacob Vosmaer
2018-06-02Merge branch 'sh-bump-ruby-2.4.4' into 'master'Kim Carlbäcker
Bump .ruby-version from 2.3.7 to 2.4.4 See merge request gitlab-org/gitaly!750
2018-06-01Bump .ruby-version from 2.3.7 to 2.4.4Stan Hu
2018-06-01Add RestoreCustomHooks RPCKim Carlbäcker
2018-06-01Add RestoreCustomHooks RPCAhmad Hassan
2018-06-01Merge branch 'fix-commit-committer-fields' into 'master'Kim Carlbäcker
Fix committer bug in go-git adapter See merge request gitlab-org/gitaly!748
2018-06-01Fix committer bug in go-git adapterJacob Vosmaer (GitLab)
2018-05-31Merge branch 'remove-golint-download-workaround' into 'master'Kim Carlbäcker
Remove golint download workaround See merge request gitlab-org/gitaly!746
2018-05-31Remove golint download workaroundJacob Vosmaer
2018-05-31Merge branch '1175-rewrite-repositoryservice-fsck-in-go' into 'master'Jacob Vosmaer (GitLab)
Rewrite Repository::Fsck in Go Closes #1175 See merge request gitlab-org/gitaly!738
2018-05-31Rewrite Repository::Fsck in GoAsh McKenzie
2018-05-30Version 0.104.0v0.104.0Jacob Vosmaer
2018-05-30Merge branch 'gitaly-proto-0.101.0' into 'master'Kim Carlbäcker
Use gitaly-proto 0.101.0 See merge request gitlab-org/gitaly!745
2018-05-30Use gitaly-proto 0.101.0Jacob Vosmaer (GitLab)
2018-05-30Merge branch 'zj-go-git-find-commit' into 'master'Jacob Vosmaer (GitLab)
Use Go-Git for the FindCommit RPC See merge request gitlab-org/gitaly!691
2018-05-30Merge branch '1141-rewrite-commit-diff' into 'master'Jacob Vosmaer (GitLab)
Fix similarity bug in Diff::CommitDiff Closes #1141 See merge request gitlab-org/gitaly!727
2018-05-30Merge branch 'sh-upgrade-to-ruby-2.4' into 'master'Jacob Vosmaer (GitLab)
Upgrade to Ruby 2.4.4 See merge request gitlab-org/gitaly!725
2018-05-30Merge branch 'sh-bump-rugged' into 'master'Jacob Vosmaer (GitLab)
Use rugged 0.27.1 for security fixes See merge request gitlab-org/gitaly!744
2018-05-30Merge branch 'grpc-error-dont-match-text-2' into 'master'Kim Carlbäcker
Tests: only match error strings we create See merge request gitlab-org/gitaly!743
2018-05-30Tests: only match error strings we createJacob Vosmaer (GitLab)
2018-05-30Fix rename similarity in Diff::CommitDiffKim "BKC" Carlbäcker
2018-05-30Upgrade to Ruby 2.4.4Stan Hu
2018-05-30Use rugged 0.27.1 for security fixesStan Hu
libgit2 is not vulnerable to CVE-2018-11233, but it's useful to update it to have the submodule validation fixes. See https://github.com/libgit2/libgit2/releases/tag/v0.27.1.
2018-05-29Merge branch 'beginners-guide' into 'master'Kim Carlbäcker
Transform ruby guide into beginner's guide See merge request gitlab-org/gitaly!739
2018-05-29Transform ruby guide into beginner's guideJacob Vosmaer (GitLab)
2018-05-29Merge branch 'git-2.17.0' into 'master'Jacob Vosmaer (GitLab)
Run tests against git 2.17 See merge request gitlab-org/gitaly!737
2018-05-29Merge branch 'cleanup-ignore-eexist' into 'master'Kim Carlbäcker
Ignore ENOENT when cleaning up lock files See merge request gitlab-org/gitaly!740
2018-05-29Ignore ENOENT when cleaning up lock filesJacob Vosmaer (GitLab)
2018-05-28Use Go-Git for the FindCommit RPCZeger-Jan van de Weg
FindCommit is called very often, to an extend that it's a problem to have all these requests go through Gitaly at the moment. This made the Gitaly team invest a lot of time in clientside N + 1 problems. Eventhough this was fruitful, the optimalisations weren't enough to bring the number of RPC/s down to a level where the RPC could be called 100% of the time. The current way of obtaining the commit information is by shelling out to the git binary, using `git log -z` with extensive use of format options. Shelling out comes at a runtime cost, and by using a native Golang implementation of git this cost could be avoided. The parent commit introduced src-d/go-git as a dependency. The intent is to swap out the git implemenation without the need for any proto, or client-side changes, and also be fully compatible with the shelling out. Things to check, before these commits can be merged to master include: 1. Shelling out includes `GIT_OBJECT_DIRECTORY` and `GIT_ALTERNATE_OBJECT_DIRECTORY`, and sets the values in the execution environment. To what extend FindCommit requires these values, and how to set these values when using go-git are unanswered questions at the moment. 2. The full test suite of GitLab-CE and GitLab-EE should be able to pass with mininal changes to those codebases. The main reason to swap out implemenations is performance, so gitaly-bench was updated to be able benchmark the FindCommit RPC in: https://gitlab.com/gitlab-org/gitaly-bench/merge_requests/5 Both Gitaly's were started with the same configuration, apart from the port. The shell out implemenation was listening on :9999, the go-git implementation on :19999. Output is truncated, but the commands are not for reproducibilty. ``` $ go version go version go1.10.1 darwin/amd64 $ go run gitaly-bench.go -iterations 100 -repo gitlab-org/gitlab-test.git -host tcp://localhost:9999 find-commit Stats: Average: 0.000000 Total requests: 1000 Elapsed Time (sec): 17.3454 Average QPS: 57.65 Errors: 0 Percent errors: 0.00 $ go run gitaly-bench.go -iterations 100 -repo gitlab-org/gitlab-test.git -host tcp://localhost:19999 find-commit Stats: Average: 0.000000 Total requests: 1000 Elapsed Time (sec): 0.9546 Average QPS: 1047.55 Errors: 0 Percent errors: 0.00 $ go run gitaly-bench.go -iterations 100 -repo gitlab-org/gitlab-test.git -host tcp://localhost:9999 find-commit -revision "4a24d82dbca5c11c61556f3b35ca472b7463187e" Stats: Average: 0.000000 Total requests: 1000 Elapsed Time (sec): 17.7700 Average QPS: 56.27 Errors: 0 Percent errors: 0.00 $ go run gitaly-bench.go -iterations 100 -repo gitlab-org/gitlab-test.git -host tcp://localhost:19999 find-commit -revision "4a24d82dbca5c11c61556f3b35ca472b7463187e" Stats: Average: 0.000000 Total requests: 1000 Elapsed Time (sec): 1.3640 Average QPS: 733.12 Errors: 0 Percent errors: 0.00 $ go run gitaly-bench.go -iterations 100 -repo gitlab-org/gitlab-test.git -host tcp://localhost:9999 find-commit -revision "HEAD~25" Stats: Average: 0.000000 Total requests: 1000 Elapsed Time (sec): 17.5492 Average QPS: 56.98 Errors: 0 Percent errors: 0.00 $ go run gitaly-bench.go -iterations 100 -repo gitlab-org/gitlab-test.git -host tcp://localhost:19999 find-commit -revision "HEAD~25" Stats: Average: 0.000000 Total requests: 1000 Elapsed Time (sec): 3.2684 Average QPS: 305.96 Errors: 0 Percent errors: 0.00 $ go run gitaly-bench.go -iterations 100 -repo gitlab-org/gitlab-test.git -host tcp://localhost:9999 find-commit -revision "feature_conflict" Stats: Average: 0.000000 Total requests: 1000 Elapsed Time (sec): 18.8795 Average QPS: 52.97 Errors: 0 Percent errors: 0.00 $ go run gitaly-bench.go -iterations 100 -repo gitlab-org/gitlab-test.git -host tcp://localhost:19999 find-commit -revision "feature_conflict" Stats: Average: 0.000000 Total requests: 1000 Elapsed Time (sec): 1.4138 Average QPS: 707.33 Errors: 0 Percent errors: 0.00 ``` Data shows that across the board the go-git implementation is faster than shelling out to the git binary. The order of magnitude faster varies strongly however. From being 18 times faster, to 'just' 5 times faster. The difference can be explained by the type of revision that is passed as argument to the RPC. The relative revision, HEAD~25, is slowest, my asumption being that the implemenation of walking the history is not optimal. The shelling out implemenation is highly consistent in its timings. This change has one notable side effect; logging is greatly reduced, as shelling out is limited. The internal wrappers around shelling out log heavily, improving visibilty.
2018-05-26Run tests against git 2.17Balasankar "Balu" C
2018-05-25Merge branch 'grpc-1.11' into 'master'Jacob Vosmaer (GitLab)
Use grpc 1.11.0 in gitaly-ruby See merge request gitlab-org/gitaly!732
2018-05-25Use grpc 1.11.0Jacob Vosmaer
2018-05-25Merge branch 'revert-b633db8d' into 'master'Kim Carlbäcker
Revert "Merge branch 'vendor-allowed-to-fail' into 'master'" See merge request gitlab-org/gitaly!736
2018-05-25Merge branch 'pin-faraday-0.12' into 'master'Kim Carlbäcker
Use the same faraday gem version as gitlab-ce See merge request gitlab-org/gitaly!733
2018-05-25Use the same faraday gem version as gitlab-ceJacob Vosmaer (GitLab)
2018-05-25Revert "Merge branch 'vendor-allowed-to-fail' into 'master'"Jacob Vosmaer (GitLab)
This reverts merge request !734
2018-05-25Merge branch 'vendor-allowed-to-fail' into 'master'Jacob Vosmaer (GitLab)
Remove unnecessary CI failures See merge request gitlab-org/gitaly!734
2018-05-25Remove unnecessary CI failuresJacob Vosmaer
2018-05-24Merge branch '1165-rewrite-is-rabase-in-progress' into 'master'Jacob Vosmaer (GitLab)
Rewrite Is{Squash,Rebase}InProgress in go Closes #1165 See merge request gitlab-org/gitaly!698
2018-05-24Rewrite Is{Squash,Rebase}InProgress in GoKim "BKC" Carlbäcker
2018-05-23Merge branch 'jv-fix-changelog-rendering' into 'master'Kim Carlbäcker
Add empty line between changelog sections See merge request gitlab-org/gitaly!730
2018-05-23Merge branch 'update-migration-process' into 'master'Jacob Vosmaer (GitLab)
Remove reference to old EnvVar way of flipping feature flags. Update Mandatory… See merge request gitlab-org/gitaly!728
2018-05-22Add empty line between changelog sectionsJacob Vosmaer
2018-05-22Merge branch 'fix-lint-warning' into 'master'Kim Carlbäcker
Use bytes.Equal instead of bytes.Compare See merge request gitlab-org/gitaly!729
2018-05-22Use bytes.Equal instead of bytes.CompareJacob Vosmaer
2018-05-22Remove reference to old EnvVar way of flipping feature flags. Update ↵Kim Carlbäcker
Mandatory to reflect current process.
2018-05-22Remove reference to old EnvVar way of flipping feature flags. Update ↵Kim Carlbäcker
Mandatory to reflect current process.
2018-05-22Version 0.103.0v0.103.0Jacob Vosmaer