Skip to content
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

Migrate physical GC and scan_metadata to remote_storage #8673

Merged
merged 19 commits into from
Aug 19, 2024

Conversation

arpad-m
Copy link
Member

@arpad-m arpad-m commented Aug 9, 2024

Migrates most of the remaining parts of the scrubber to remote_storage:

Part of #7547

@arpad-m arpad-m requested a review from a team as a code owner August 9, 2024 10:06
@arpad-m arpad-m requested a review from problame August 9, 2024 10:06
Copy link

github-actions bot commented Aug 9, 2024

2172 tests run: 2103 passed, 0 failed, 69 skipped (full report)


Code coverage* (full report)

  • functions: 32.4% (7235 of 22318 functions)
  • lines: 50.4% (58497 of 116120 lines)

* collected from Rust tests only


The comment gets automatically updated with the latest test results
5713df5 at 2024-08-19T13:44:04.007Z :recycle:

@yliang412 yliang412 self-requested a review August 9, 2024 15:17
arpad-m added a commit that referenced this pull request Aug 10, 2024
Noticed this while debugging a test failure in #8673 which only occurs
with real S3 instead of mock S3: if you authenticate to S3 via
`AWS_PROFILE`, then it requires the `HOME` env var to be set so that it
can read inside the `~/.aws` directory.

The scrubber abstraction `StorageScrubber::scrubber_cli` in
`neon_fixtures.py` would otherwise not work. My earlier PR #6556 has
done similar things for the `neon_local` wrapper.

You can try:

```
aws sso login --profile dev
export ENABLE_REAL_S3_REMOTE_STORAGE=y REMOTE_STORAGE_S3_BUCKET=neon-github-ci-tests REMOTE_STORAGE_S3_REGION=eu-central-1 AWS_PROFILE=dev
RUST_BACKTRACE=1 BUILD_TYPE=debug DEFAULT_PG_VERSION=16 ./scripts/pytest -vv --tb=short -k test_scrubber_tenant_snapshot
```

before and after this patch: this patch fixes it.
jcsp pushed a commit that referenced this pull request Aug 12, 2024
Noticed this while debugging a test failure in #8673 which only occurs
with real S3 instead of mock S3: if you authenticate to S3 via
`AWS_PROFILE`, then it requires the `HOME` env var to be set so that it
can read inside the `~/.aws` directory.

The scrubber abstraction `StorageScrubber::scrubber_cli` in
`neon_fixtures.py` would otherwise not work. My earlier PR #6556 has
done similar things for the `neon_local` wrapper.

You can try:

```
aws sso login --profile dev
export ENABLE_REAL_S3_REMOTE_STORAGE=y REMOTE_STORAGE_S3_BUCKET=neon-github-ci-tests REMOTE_STORAGE_S3_REGION=eu-central-1 AWS_PROFILE=dev
RUST_BACKTRACE=1 BUILD_TYPE=debug DEFAULT_PG_VERSION=16 ./scripts/pytest -vv --tb=short -k test_scrubber_tenant_snapshot
```

before and after this patch: this patch fixes it.
Copy link
Member

@koivunej koivunej left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't see any big problems.

@problame problame removed their request for review August 13, 2024 11:31
@arpad-m arpad-m requested a review from koivunej August 19, 2024 10:07
@arpad-m arpad-m merged commit 3b8ca47 into main Aug 19, 2024
63 checks passed
@arpad-m arpad-m deleted the arpad/azure_scrubber_4 branch August 19, 2024 14:39
VladLazar pushed a commit that referenced this pull request Aug 20, 2024
Migrates most of the remaining parts of the scrubber to remote_storage:

* `pageserver_physical_gc`
* `scan_metadata` for pageservers (safekeepers were done in #8595)
* `download()` in `tenant_snapshot`. The main `tenant_snapshot` is not
migrated as it uses version history to be able to work in the face of
ongoing changes.
 
Part of #7547
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants