-
Notifications
You must be signed in to change notification settings - Fork 456
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
Feature/replicas #3793
Feature/replicas #3793
Conversation
8447c9a
to
366c854
Compare
Please add some regression tests, something under |
d4ced80
to
fbf664a
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looked mostly at safekeeper and cplane changes.
b8fd4c8
to
58d5e08
Compare
While in recovery, we cannot always use the last replayed record's LSN. Instead, we use the LwLSN cache as usual, but mark *latest as false because we don't yet know the changes in future WAL. It also adds some comments / documentation on the special handling required for REDO block IO and locking.
- Test updated to reliably detect hot standby (as opposed to only read-only transactions, which also appear on primary nodes) - Update bail!() message in WAL send stream constructor - Fix handling of hot standby responses from Safekeepers in WalSender - Update comment on neon_redo_read_buffer_filter - Fix generated WAL page headers for uninitialized WAL in packed WAL segments to use CONTRECORD bits - Fix typo in control_plane/compute.rs - Update compute_ctl: emit standby.signal for hot stanby instances (detected through `hot_stanby = on|true|yes`) - Update compute_ctl: use 0/0 or given LSN (instead of sync_safekeepers) when it detects we're not starting a primary instance.
It's quite bad to think hot standbys should support CREATE TABLE without issues.
We don't generate separate WAL blocks anymore, so let's not keep the function around.
93db511
to
471a269
Compare
7bcf877
to
9da4449
Compare
- Update comments on neon_redo_read_buffer_filter - break early in lfc_evict's scan. - Remove erronous whitespace in proxy/src/compute.rs
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This PR looks good to me.
further fixes can be done in follow-up issues
Describe your changes
Enable hot standby PostgreSQL replicas.
Notes:
TODO:
pg_regress
workloadIssue ticket number and link
#769
Checklist before requesting a review
Neon, and Neon's flavor of PostgreSQL, now support physical replicas.
XXXX: This doens't mean cloud users can use this immediately, see the first note as well.