Commit Graph

6066 Commits

Author SHA1 Message Date
Christian Schwarz
e6e72e8b68 log by invocation 2024-09-15 13:38:07 +01:00
Christian Schwarz
2a0695e01a log always, but at debug 2024-09-15 13:28:47 +01:00
Christian Schwarz
af6c168265 debug-log the buggy key 2024-09-15 13:12:25 +01:00
Christian Schwarz
1b3209497f image_layer: don't do .rev(), it's confusing and unlike what we did before 2024-09-15 12:58:13 +01:00
Christian Schwarz
9f97523d0d dump full missing keyspace 2024-09-15 12:40:41 +01:00
Christian Schwarz
33196c90bc todo! 2024-09-15 12:32:17 +01:00
Christian Schwarz
c72c5df922 make sure get_cached_lsn returns what it returned before 2024-09-15 12:20:58 +01:00
Christian Schwarz
4c7599e8df Revert "address the "This is silly" comment"
This reverts commit c736f9d6ef.
2024-09-15 12:18:26 +01:00
Christian Schwarz
4b2b0a24da Revert "WIP better typed"
This reverts commit ef5a95010b.
2024-09-15 12:18:21 +01:00
Christian Schwarz
ef5a95010b WIP better typed 2024-09-15 12:18:15 +01:00
Christian Schwarz
c736f9d6ef address the "This is silly" comment 2024-09-14 15:38:46 +00:00
Christian Schwarz
adc798b59e explicitly pass will_init 2024-09-14 15:15:48 +00:00
Christian Schwarz
f0668a7a4d cargo fmt 2024-09-14 15:15:48 +00:00
Christian Schwarz
6d73642a93 hyptohesis of what's wrong 2024-09-14 14:26:52 +00:00
Christian Schwarz
9012a18fa1 Revert "WIP"
This reverts commit 709a6ad29b.
2024-09-14 14:18:39 +00:00
Christian Schwarz
a6a7550bb4 add some debugging that didn't lead anywhere 2024-09-14 14:18:02 +00:00
Christian Schwarz
10556f25df fix double .remove() on InMemoryLayer read error (not the bug) 2024-09-14 13:41:36 +00:00
Christian Schwarz
f54cf567ff implement io concurrency control (serial / parallel). bug still happens 2024-09-14 13:22:28 +00:00
Christian Schwarz
4303914681 Revert "rule out empty keyspace bug" (it wasn't the bug)
This reverts commit 539225d792.
2024-09-14 13:02:20 +00:00
Christian Schwarz
539225d792 rule out empty keyspace bug 2024-09-14 13:02:06 +00:00
Christian Schwarz
c118736c9c draw-timeline-dir: ability to draw line 2024-09-14 12:48:23 +00:00
Christian Schwarz
3f85246a42 4096 queuedepth in pagebench get-page-latest-lsn 2024-09-14 12:06:57 +00:00
Christian Schwarz
709a6ad29b WIP 2024-09-14 12:05:42 +00:00
Vlad Lazar
3640824553 fixup: incorrect assumption on img layer need 2024-09-12 23:04:58 +01:00
Vlad Lazar
fea1f34f6a fixup: serialize again in image layer 2024-09-12 23:04:10 +01:00
Vlad Lazar
5d40d1ccdd fixup: order of waiters in delta layer 2024-09-12 23:04:01 +01:00
Vlad Lazar
b2cb10590e fixup: deserialize shenanigans 2024-09-12 20:00:06 +01:00
Vlad Lazar
2923fd2a5b fixup: remove stale import 2024-09-12 19:25:46 +01:00
Vlad Lazar
2a5336b9ab fixup image deserialization 2024-09-12 19:24:41 +01:00
Christian Schwarz
6f20726610 Merge remote-tracking branch 'origin/hackaneon/lisbon24/superscalar-page_service--problame/evaluate-debouncer' into hackaneon/lisbon24/superscalar-page_service 2024-09-12 17:47:16 +00:00
Christian Schwarz
29f741e1e9 debounce: actually issue vectored get 2024-09-12 17:46:30 +00:00
Vlad Lazar
2b37a40079 Materialize future ios 2024-09-12 18:25:17 +01:00
Vlad Lazar
af2b65a2fb Rework issuing of IOs on read path 2024-09-12 16:42:35 +01:00
Christian Schwarz
5d194c7824 debounce: bounce if shard or effective request_lsn differ 2024-09-12 14:20:32 +00:00
Christian Schwarz
ac2702afd3 deboucner: move decoding into debounce loop 2024-09-12 10:58:09 +00:00
Christian Schwarz
88fd46d795 sketch interface 2024-09-12 11:35:00 +01:00
Christian Schwarz
2d6763882e pagebench: fake queue depth of 10 2024-09-12 11:35:00 +01:00
Christian Schwarz
c0c23cde72 debouncer 2024-09-12 11:35:00 +01:00
Christian Schwarz
942bc9544b fixup 2024-09-11 20:04:39 +00:00
Christian Schwarz
02b7cdb305 HACK: instrument page_service to count nonblocking consecutive getpage requests 2024-09-11 19:25:19 +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
Arseny Sher
c1a51416db safekeeper: fsync filesystem on start.
We can't really rely on files contents after boot without fsync'ing
them.
2024-09-06 19:14:25 +03:00
Arseny Sher
8eab7009c1 safekeeper: do pid file lock before id init 2024-09-06 19:14:25 +03:00
Arseny Sher
11cf16e3f3 safekeeper: add term_bump endpoint.
When walproposer observes now higher term it restarts instead of
crashing whole compute with PANIC; this avoids compute crash after
term_bump call. After successfull election we're still checking
last_log_term of the highest given vote to ensure basebackup is good,
and PANIC otherwise.

It will be used for migration per
035-safekeeper-dynamic-membership-change.md
and
https://github.com/neondatabase/docs/pull/21

ref https://github.com/neondatabase/neon/issues/8700
2024-09-06 19:13:50 +03:00
Folke Behrens
af6f63617e proxy: clean up code and lints for 1.81 and 1.82 (#8945) 2024-09-06 17:13:30 +02:00