Commit Graph

6144 Commits

Author SHA1 Message Date
Alexey Masterov
d753fd9c80 tc 2024-09-18 14:39:06 +02:00
Alexey Masterov
234d3287ed Switch the submodule branch for tests 2024-09-18 14:14:09 +02:00
Alexey Masterov
24431cfbdf Finally add the mask 2024-09-18 10:33:57 +02:00
Alexey Masterov
0ec1d6f73f an attempt 2024-09-18 10:30:57 +02:00
Alexey Masterov
cdd6a978b9 an attempt 2024-09-18 10:21:34 +02:00
Alexey Masterov
b2a8d96262 an attempt 2024-09-17 17:17:55 +02:00
Alexey Masterov
caaa399293 an attempt 2024-09-17 17:12:34 +02:00
Alexey Masterov
81e1001ae5 Fix add mask 2024-09-17 17:09:48 +02:00
Alexey Masterov
76016391ee Fix the actionlint warnings 2024-09-17 16:45:06 +02:00
Alexey Masterov
f4493a65db Refactor the workflow 2024-09-17 16:35:38 +02:00
a-masterov
9b6e46969e Update .github/workflows/cloud-regress.yml
Co-authored-by: Alexander Bayandin <alexander@neon.tech>
2024-09-17 16:23:01 +02:00
Alexey Masterov
8b04fc469d Fix the complains 2024-09-10 14:30:40 +02:00
a-masterov
f8b9ec0dd0 Merge branch 'main' into amasterov/regress-arm 2024-09-10 14:29:04 +02:00
John Spray
26b5fcdc50 reinstate write-path key check (#8973)
## Problem

In https://github.com/neondatabase/neon/pull/8621, validation of keys
during ingest was removed because the places where we actually store
keys are now past the point where we have already converted them to
CompactKey (i128) representation.

## Summary of changes

Reinstate validation at an earlier stage in ingest. This doesn't cover
literally every place we write a key, but it covers most cases where
we're trusting postgres to give us a valid key (i.e. one that doesn't
try and use a custom spacenode).
2024-09-10 12:54:25 +01:00
Alexey Masterov
b45560db75 Fix the error 2024-09-10 13:18:47 +02:00
Alexey Masterov
c4d98915ff Refactoring 2024-09-10 13:12:46 +02:00
Alexey Masterov
9ac06ea3d9 Debug 2024-09-10 13:04:04 +02:00
Alexey Masterov
841b39f7c5 Some refactoring 2024-09-10 12:52:46 +02:00
Alexey Masterov
fe8fee0b88 Add debug 2024-09-10 12:26:22 +02:00
Alexey Masterov
dbde226f38 Add debug 2024-09-10 12:21:09 +02:00
Alexey Masterov
01c37c6c6c Refactor, delete roles accidentally left into a project 2024-09-10 12:04:15 +02:00
Alexey Masterov
e989bf1887 remove unused import os 2024-09-10 11:17:55 +02:00
Alexey Masterov
84ca400dcf We are going to calculate md5 sum dynamically 2024-09-10 11:10:11 +02:00
Arpad Müller
97582178cb Remove async_trait from the Handler trait (#8958)
Newest attempt to remove `async_trait` from the Handler trait.

Earlier attempts were in #7301 and #8296 .
2024-09-10 02:40:00 +02:00
Matthias van de Meent
842be0ba74 Specialize WalIngest on PostgreSQL version (#8904)
The current code assumes that most of this functionality is
version-independent, which is only true up to v16 - PostgreSQL 17 has a
new field in CheckPoint that we need to keep track of.

This basically removes the file-level dependency on v14, and replaces it
with switches that load the correct version dependencies where required.
2024-09-09 23:01:52 +01:00
Heikki Linnakangas
982b376ea2 Update parquet crate to a released version (#8961)
PR #7782 set the dependency in Cargo.toml to 'master', and locked the
version to commit that contained a specific fix, because we needed the
fix before it was included in a versioned release. The fix was later
included in parquet crate version 52.0.0, so we can now switch back to
using a released version. The latest release is 53.0.0, switch straight
to that.

---------

Co-authored-by: Conrad Ludgate <conradludgate@gmail.com>
2024-09-10 00:04:00 +03:00
Alex Chi Z.
e158df4e86 feat(pageserver): split delta writer automatically determines key range (#8850)
close https://github.com/neondatabase/neon/issues/8838

## Summary of changes

This patch modifies the split delta layer writer to avoid taking
start_key and end_key when creating/finishing the layer writer. The
start_key for the delta layers will be the first key provided to the
layer writer, and the end_key would be the `last_key.next()`. This
simplifies the delta layer writer API.

On that, the layer key hack is removed. Image layers now use the full
key range, and delta layers use the first/last key provided by the user.

---------

Signed-off-by: Alex Chi Z <chi@neon.tech>
2024-09-09 22:03:27 +01:00
Alexey Masterov
c7157d1c01 Update the patch 2024-09-09 18:28:49 +02:00
Alexey Masterov
b74d463b15 Update the patch 2024-09-09 17:37:15 +02:00
Alexey Masterov
e127e97797 Fix the security problem 2024-09-09 17:00:51 +02:00
Alexey Masterov
b04995f10f Fix the security problem 2024-09-09 16:44:33 +02:00
Alexey Masterov
287e05f49d Fix the error 2024-09-09 16:22:04 +02:00
Alexey Masterov
650fb7b2d7 Drop subscriptions if exist 2024-09-09 16:18:26 +02:00
Alexey Masterov
c29f78acc4 Fix errors 2024-09-09 14:17:30 +02:00
Alexey Masterov
b7fd9e5123 Fix an error 2024-09-09 13:55:00 +02:00
Alexey Masterov
b4d9632b19 Fix an error 2024-09-09 13:28:51 +02:00
Alexey Masterov
3b6449fb7b Fix an error 2024-09-09 12:48:37 +02:00
Alexey Masterov
130066898e Fix an error 2024-09-09 12:09:55 +02:00
Alexey Masterov
6f2d7b4662 Try to avoid passwords in clean text 2024-09-09 11:58:18 +02:00
Heikki Linnakangas
723c0971e8 Don't create 'empty' branch in neon_simple_env (#8965)
Now that we've given up hope on sharing the neon_simple_env between
tests, there's no reason to not use the 'main' branch directly.
2024-09-09 12:38:34 +03:00
Heikki Linnakangas
c8f67eed8f Remove TEST_SHARED_FIXTURES (#8965)
I wish it worked, but it's been broken for a long time, so let's admit
defeat and remove it.

The idea of sharing the same pageserver and safekeeper environment
between tests is still sound, and it could save a lot of time in our
CI. We should perhaps put some time into doing that, but we're better
off starting from scratch than trying to make TEST_SHARED_FIXTURES
work in its current form.
2024-09-09 12:38:34 +03:00
Heikki Linnakangas
2d885ac07a Update strum (#8962)
I wanted to use some features from the newer version. The PR that needed
the new version is not ready yet (and might never be), but seems nice to
stay up in any case.
2024-09-08 21:47:57 +03:00
Heikki Linnakangas
89c5e80b3f Update toml and toml_edit crates (#8963)
Eliminates a few duplicate versions from the dependency tree.
2024-09-08 21:47:23 +03:00
Heikki Linnakangas
93ec7503e0 Lock the correct revision of rust-postgres crates (#8960)
We modified the crate in an incompatible way and upgraded to the new
version in PR #8076. However, it was reverted in #8654. The revert
reverted the Cargo.lock reference to it, but since Cargo.toml still
points to the (tip of the) 'neon' branch, every time you make any other
unrelated changes to Cargo.toml, it also tries to update the
rust-postgres crates to the tip of the 'neon' branch again, which
doesn't work.

To fix, lock the crates to the exact commit SHA that works.
2024-09-07 14:11:36 +01:00
Alexander Bayandin
7d7d1f354b Fix rust warnings on macOS (#8955)
## Problem
```
error: unused import: `anyhow::Context`
 --> libs/utils/src/crashsafe.rs:8:5
  |
8 | use anyhow::Context;
  |     ^^^^^^^^^^^^^^^
  |
  = note: `-D unused-imports` implied by `-D warnings`
  = help: to override `-D warnings` add `#[allow(unused_imports)]`

error: unused variable: `fd`
   --> libs/utils/src/crashsafe.rs:209:15
    |
209 | pub fn syncfs(fd: impl AsRawFd) -> anyhow::Result<()> {
    |               ^^ help: if this is intentional, prefix it with an underscore: `_fd`
    |
    = note: `-D unused-variables` implied by `-D warnings`
    = help: to override `-D warnings` add `#[allow(unused_variables)]`
```

## Summary of changes
- Fix rust warnings on macOS
2024-09-07 08:17:25 +01:00
Cihan Demirci
16c200d6d9 push images to prod ACR (#8940)
Used `vars` for new storing non-sensitive information, changed dev
secrets to vars as well but
didn't cleanup any secrets.

https://github.com/neondatabase/cloud/issues/16925

---------

Co-authored-by: Alexander Bayandin <alexander@neon.tech>
2024-09-07 00:20:36 +01:00
Joonas Koivunen
3dbd34aa78 feat(storcon): forward gc blocking and unblocking (#8956)
Currently using gc blocking and unblocking with storage controller
managed pageservers is painful. Implement the API on storage controller.

Fixes: #8893
2024-09-06 22:42:55 +01:00
Arpad Müller
fa3fc73c1b Address 1.82 clippy lints (#8944)
Addresses the clippy lints of the beta 1.82 toolchain.

The `too_long_first_doc_paragraph` lint complained a lot and was
addressed separately: #8941
2024-09-06 21:05:18 +02:00
Alex Chi Z.
ac5815b594 feat(storage-controller): add node shards api (#8896)
For control-plane managed tenants, we have the page in the admin console
that lists all tenants on a specific pageserver. But for
storage-controller managed ones, we don't have that functionality for
now.

## Summary of changes

Adds an API that lists all shards on a given node (intention + observed)

---------

Signed-off-by: Alex Chi Z <chi@neon.tech>
2024-09-06 14:14:21 -04:00
Alexander Bayandin
30583cb626 CI(label-for-external-users): add retry logic for unexpected errors (#8938)
## Problem

One of the PRs opened by a `neondatabase` org member got labelled as
`external` because the `gh api` call failed in the wrong way:
```
Get "https://api.github.com/orgs/neondatabase/members/<username>": dial tcp 140.82.114.5:443: i/o timeout
is-member=false
```

## Summary of changes
- Check that the error message is expected before labelling PRs
- Retry `gh api` call for 10 times in case of unexpected error messages
- Add `workflow_dispatch` trigger
2024-09-06 17:42:35 +01:00