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
2022-07-28Clean up go build cache if it exceeds a thresholdsmh-clean-build-cacheSami Hiltunen
Our build process never cleans up the go build cache and neither does go. Users are expected to run `go clean --cache` occassionally to clean up old files. This has so far been generally fine, given each build didn't bloat the cache too much. With the introduction of packed binaries in 861730ac, the build cache grows at a much higher rate due to the embedded binaries. This has resulted the CI also running out of space. This commit adds a configurable threshold for cleaning up Go's build cache and sets the default at 5 GB. If the build cache is larger than 5GB at the beginning of the build, the build cache is automatically cleaned.
2022-07-27Merge branch 'smh-remove-legacy-go-mod' into 'master'Sami Hiltunen
Remove legacy go.mod and go.sum files from _build directory Closes #4381 See merge request gitlab-org/gitaly!4758
2022-07-27Merge branch 'sh-bump-rails-gems-6.1.6.1' into 'master'Stan Hu
Bump all Rails-related gems to v6.1.6.1 See merge request gitlab-org/gitaly!4759
2022-07-27Merge branch 'pks-gittest-hash-clean' into 'master'Patrick Steinhardt
gittest: Refactorings to make the package hash-clean See merge request gitlab-org/gitaly!4734
2022-07-27Merge branch 'docs-max-queue-size-gitaly' into 'master'John Cai
Clarify max_queue_size is per RPC, not project See merge request gitlab-org/gitaly!4753
2022-07-26Bump all Rails-related gems to v6.1.6.1sh-bump-rails-gems-6.1.6.1Stan Hu
All versions should have been bumped in unison since they are released at the same time, and this change mirrors the GitLab Rails changes in https://gitlab.com/gitlab-org/gitlab/-/merge_requests/92400. Changelog: changed
2022-07-26Remove legacy go.mod and go.sum files from _build directorysmh-remove-legacy-go-modSami Hiltunen
The build process left a go.mod and go.sum file in the _build directory in the past. This causes problems these days when attempting to embed the auxiliary binaries into Gitaly binary as they are considered to be in a different module due to this. Remove the legacy files prior to building Gitaly.
2022-07-26Merge branch 'jc-remove-user-cherry-pick-ff' into 'master'Will Chandler
operations: Remove CherryPickStructuredErrors feature flag See merge request gitlab-org/gitaly!4747
2022-07-26Merge branch 'jc-add-docs-for-git-version' into 'master'Patrick Steinhardt
Makefile: Add section for environment variables See merge request gitlab-org/gitaly!4737
2022-07-26Merge branch '3817_remove_feature_flag' into 'master'Patrick Steinhardt
Remove 'exact_pagination_token_match' feature flag See merge request gitlab-org/gitaly!4724
2022-07-26Merge branch 'jmd-fixing-typos-grammar' into 'master'Sami Hiltunen
Fixes for a range of typos See merge request gitlab-org/gitaly!4751
2022-07-26Clarify max_queue_size is per RPC, not projectThong Kuah
2022-07-26Fix a typo in UserSquashRequest Author email error msgjohn.mcdonnell
2022-07-26Fixing a range of typos in testsjohn.mcdonnell
2022-07-26Fixing a range of typos on commentsjohn.mcdonnell
2022-07-26Merge branch 'jc-remove-user-rebase-confirmable-ff' into 'master'Will Chandler
operations: Remove UserRebaseConfirmableImprovedErrorHandling FF See merge request gitlab-org/gitaly!4746
2022-07-25Merge branch 'wc-gemfile-update' into 'master'Pavlo Strokov
ruby: Fix dependencies in Gemfile.lock See merge request gitlab-org/gitaly!4750
2022-07-25ruby: Fix dependencies in Gemfile.lockWill Chandler
With 4da75e5814680fe0d657bb734099527c74b76905 we attempted to update actionview to resolve a security issue. However, in doing so we updated the version of actionpack and its dependencies, but not actionview itself. This has led to builds emitting the following warning: Your lockfile doesn't include a valid resolution. You can fix this by regenerating your lockfile or trying to manually editing the bad locked gems to a version that satisfies all dependencies. The unmet dependencies are: * actionview (= 6.1.5.1), depended upon actionpack-6.1.5.1, unsatisfied by actionview-6.1.4.7 * activesupport (= 6.1.5.1), depended upon actionpack-6.1.5.1, unsatisfied by activesupport-6.1.4.7 Update Gemfile.lock to update all related dependencies to matched versions and stop this error.
2022-07-25Merge branch 'kwiebers-master-patch-36682' into 'master'John Cai
Update the stage label to systems for danger See merge request gitlab-org/gitaly!4748
2022-07-25Update the stage label to systems for dangerKyle Wiebers
2022-07-25operations: Remove CherryPickStructuredErrors feature flagjc-remove-user-cherry-pick-ffJohn Cai
Now that we have been running this feature flag in production for a week without issue, we can remove it.
2022-07-25Makefile: Add section for environment variablesjc-add-docs-for-git-versionJohn Cai
GIT_VERSION can be set to, for instance, run tests with a specific git version. Add a section to `make help` to display this.
2022-07-25operations: Remove UserRebaseConfirmableImprovedErrorHandling FFJohn Cai
Now that the UserRebaseConfirmable has been on in production without issues, we can remove the feature flag.
2022-07-25Merge branch 'pks-git-dont-advertise-hidden-refs' into 'master'Pavlo Strokov
git: Don't advertise internal references via git-upload-pack(1) Closes #4358 See merge request gitlab-org/gitaly!4727
2022-07-22Merge branch 'galfaro2-master-patch-64390' into 'master'Will Chandler
Gemfile.lock: Update actionview gem See merge request gitlab-org/gitaly!4739
2022-07-22Merge branch 'pks-ssh-upload-pack-canceled-fetches' into 'master'Will Chandler
ssh: Improve errors for fetches canceled by the user Closes #4331 See merge request gitlab-org/gitaly!4731
2022-07-22Update Gemfile.lockGreg Alfaro
2022-07-22Update Gemfile.lockGreg Alfaro
2022-07-22ssh: Improve errors for fetches canceled by the userPatrick Steinhardt
In recent weeks we have started to see an uptick of incidents caused by a single user that was repeatedly fetching from a specific repository via the SSHUploadPackWithSidechannel RPC. The error has always been the same: fatal: the remote hung up unexpectedly This error is returned by git-upload-pack(1) in case it sees a short read of data and ultimately indicates that the user has probably killed git-fetch(1). This is not an actionable error on our side as it is a totally expected outcome that a killed fetch will cause the fetch to fail. Now that we have a lot more tests in this area we can be reasonably sure that short reads on an otherwise normally closed network connection is seemingly the only condition that causes the above error. So let's put a gRPC error code of `Canceled` on this error so that it doesn't cause our alerts to go off anymore. Changelog: fixed
2022-07-22Revert "ssh: Add tests with injected network errors"Patrick Steinhardt
Unfortunately, the test added by that commit is flaky. And while I could drop that commit before we merge this patch series I think that the logic added in there is interesting enough to keep around for future reference if we ever wanted to revisit this topic. Also, even though it's flaky, it still served its purpose to demonstrate it is fine to wrap errors with an `Canceled` gRPC code in case we see "fatal: the remote side hung up unexpectedly". So let's just keep this commit in our history and revert it.
2022-07-22ssh: Add tests with injected network errorsPatrick Steinhardt
In gitlab.com there has been a recent uptick in incidents caused by SSHUploadPackWithSidechannel failing with the following error message: fatal: the remote end hung up unexpectedly While we have been reasonably sure that this error really only happens in case the client has cancelled the fetch, we couldn't really tell whether any other conditions might trigger the same error. Most notably, we were not sure if this might've indicated network connectivity issues. Add tests to exercise this RPC call with injected network errors. As it turns out, none of the injected errors cause the error to appear, which is a good thing.
2022-07-22ssh: Add tests to verify reference negotiation with invalid objectsPatrick Steinhardt
Add two more tests that verify reference negotiation with invalid and missing objects fails as expected.
2022-07-22ssh: Add helper to start an SSH server and return its GitalyServerPatrick Steinhardt
The testhelper to start the gRPC server for the ssh service is only exposing the socket address of the server. Add a new function that returns the `GitalyServer` to make it accessible to tests.
2022-07-22testserver: Make the gRPC server accessible to outside callersPatrick Steinhardt
Make the gRPC server accessible to outside callers so that they can for example register additional listeners for the server.
2022-07-22helper: Add function to format `Canceled` errorsPatrick Steinhardt
Add a function to format gRPC errors with an error code of `Canceled`.
2022-07-21Gemfile.lock: Update actionview gemgalfaro2-master-patch-64390Greg Alfaro
2022-07-21Merge branch 'revert-c5786dc5' into 'master'Patrick Steinhardt
Revert "Change FindTag err when tag not found to NotFound" See merge request gitlab-org/gitaly!4736
2022-07-21Revert "Merge branch..."Steve Azzopardi
This reverts merge request !4735
2022-07-21Update changelog for 15.2.0GitLab Release Tools Bot
[ci skip]
2022-07-21Merge branch ↵Patrick Steinhardt
'4366-findtag-returns-an-internal-error-code-when-it-cannot-find-a-specific-tag' into 'master' Change FindTag err when tag not found to NotFound Closes #4366 See merge request gitlab-org/gitaly!4735
2022-07-21Change FindTag err when tag not found to NotFoundSteve Azzopardi
What --- Update the error message to be `Not Found` rather then `Internal` when a tag is not found. Why --- We burn through our error budget when a single user sends a bunch of requests to tags that don't exist because we classify the error as `Internal`, instead it should be `NotFound`. Reference: https://gitlab.com/gitlab-org/gitaly/-/issues/4366 Signed-off-by: Steve Azzopardi <sazzopardi@gitlab.com>
2022-07-21gittest: Enable testing against SHA256pks-gittest-hash-cleanPatrick Steinhardt
Enable testing of the gittest package against SHA256 by removing the build tags.
2022-07-21gittest: Refactor tree-related functionality to be hash-cleanPatrick Steinhardt
Refactor both RequireTree and the WriteTree tests to both be hash-clean so that they work with SHA1 and SHA256. Note that we're also dropping the expected object hash from our tests: we already verify that tree entries match, so it doesn't feel sensible to check this opaque hash in the first place.
2022-07-21git: Expose hash function used by object hashesPatrick Steinhardt
Expose the hash function used by our different object hash implementations so that we can both learn about the hash size and compute our own object hashes in tests. Note that this makes it impossible to compare the structure anymore due to the added function pointers. We thus have to adjust a small set of sites to not do that anymore.
2022-07-21gittest: Use the default object hash instead of hardcoding SHA1Patrick Steinhardt
The gittest package is still hardcoding the use of SHA1 in a small set of places. Refactor the code to instead use the default object hash.
2022-07-21gittest: Stop using the seed repository for testsPatrick Steinhardt
We're currently using one of our seed repositories as default repo in our gittest tests. Because this seed repository is using SHA1 as the object hash this renders us unable to actually test against both SHA1 and SHA256. Convert the setup to instead use an empty repository. Tests should just create their required data at runtime.
2022-07-21gittest: Refactor commit tests to be object hash-agnosticPatrick Steinhardt
Refactor the tests for WriteCommit to be object hash-agnostic.
2022-07-21gittest: Don't set up default parent in WriteCommitPatrick Steinhardt
When not explicitly given a set of parents in WriteCommit, then we fall back to using a well-known commit in our default seed repository. This may both be unexpected and makes it needlessly complex to use this function in an empty repository. Drop the fallback logic and create commits without any parents if not asked to do so.
2022-07-21gittest: Expose default committer informationPatrick Steinhardt
We're currently distributing the knowledge around the default committer information all over the test suite. This makes it hard to change eventually. Introduce a set of constants that keep this information readily available for use in our tests.
2022-07-21gittest: Disallow use of seeded repositories with SHA256Patrick Steinhardt
It's not currently possible to use our test repositories in combination with SHA256 given that they're all using SHA1. This makes it easy to accidentally test with SHA1 even though one thought to be testing with SHA256. Detect the use of seeded repositories and fail the test when done with SHA256 is the default hash.