-
Notifications
You must be signed in to change notification settings - Fork 1.7k
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
DOCS-14695-Upgrading language strength with regards to hidden delayed… #5787
DOCS-14695-Upgrading language strength with regards to hidden delayed… #5787
Conversation
and querying delayed data without a direct connection to that member. | ||
Making delayed replica set members non-voting means they will not | ||
count towards acknowledging write operations with read concern | ||
:readconcern:`"majority"`. |
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.
Should this be "write concern majority" ? Instead of read concern majority?
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.
Updated to write concern.
If you do not hide delayed members and one or more nodes | ||
becomes unavailable, the replica set has to wait for the delayed | ||
member and the commit point lags. A lagged commit point can lead to | ||
performance issues. |
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.
There is some shorthand and tone in this section and following example that doesn't really match the tone of the docs. We don't really use "config" as shorthand for "configuration", or "mins" as short for "minutes".
Consider something like:
For example, consider a Primary-Secondary-Delayed replica set
configuration where the delayed secondary is voting with a 10
minute delay.
With one non-delayed secondary unavailable, the degraded configuration
of Primary-Delayed must wait at least 10 minutes to acknowledge a write
operation with :writeconcern:`"majority"`.
The majority commit point will take longer to advance, leading to cache
pressure similar performance issues with...
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.
Updated.
- Primary-Secondary-Delayed replica set config where delayed | ||
secondary is voting with 10 mins delay. |
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 bullet is a sentence fragment which reads a little awkwardly. See suggestion in the comment above.
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.
Updated.
- The majority commit point will take longer to advance leading to | ||
cache pressure similar to performance issues with a PSA replica | ||
set. |
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.
Can we end this thought with something like:
For more information on the majority commit point, see Causal Consistency and Read and Write Concerns
I think "majority commit point" is a little confusing and providing that link for context may be useful.
I'm also not sure I understand the bit about a PSA replica set. We haven't mentioned them at all in this page and I feel like I'm missing some context. Is there anywhere we can link to in the docs that explains more about these performance issues? It kind of seems to come out of nowhere. We should also expand the acronym since users might not know what we mean by a PSA replica set.
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.
Updated / added a link to the replica set maintenance tutorial, which goes into more context of resolving the performance issues detailed with the commit point.
@ianf-mongodb , just pinging in case these changes fell off your radar. |
240fcca
to
e2a50b3
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.
A few more thoughts here.
@@ -39,12 +39,14 @@ Delayed members: | |||
members. Set the priority to 0 to prevent a delayed member from | |||
becoming primary. | |||
|
|||
- **Should be** :ref:`hidden <replica-set-hidden-members>` | |||
- **Must be** :ref:`hidden <replica-set-hidden-members>` | |||
members. Always prevent applications from seeing and querying | |||
delayed members. | |||
|
|||
- *Do* vote in :term:`elections <election>` for primary, if :rsconf:`members[n].votes` is set to 1. |
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.
I'm a little confused because here we are saying that the delayed members vote in elections for the primary, but then immediately below we say that users should ensure that they are non-voting. It seems slightly contradictory.
Do you think we should we should add a sentence to this bullet that says something like:
Ensuring that delayed members are non-voting by
setting :rsconf:`members[n].votes` to 0 can help improve performance.
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.
Im reading this as a warning to the user, in other words the first two bullets, which start with Must be are the recommendation. The Do is a warning if you do not address the rsconfigmembers[n].votes
setting. I think the extra blurb does add value.
|
||
For more information on the majority commit point, see | ||
:doc:`Causal Consistency and Read and Write Concerns | ||
</core/causal-consistency-read-write-concerns>` for additional details |
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 should be two separate sentences?
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.
Separated in latest.
6ca41ec
to
14a9c01
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.
Thanks for making the edits. Just two more small things.
With one non-delayed secondary unavailable, the degraded configuration | ||
of Primary-Delayed must wait at least 10 minutes to acknowledge a write | ||
operation with :writeconcern:`"majority"`. | ||
|
||
The majority commit point will take longer to advance, leading to cache | ||
pressure similar performance issues with a | ||
:ref:`Primary with a Secondary and an Arbiter<rs-architecture-psa>` | ||
(PSA) replica set. |
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.
Can we combine these into a single paragraph? This block is very big because we have so many paragraphs so I'm looking for ways to combine some of them.
For more information on the majority commit point, see | ||
:doc:`Causal Consistency and Read and Write Concerns | ||
</core/causal-consistency-read-write-concerns>`. | ||
|
||
For additional details on resolving performance issues see the | ||
:ref:`replica set maintenance tutorial<performance-issues-psa>`. |
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.
Similarly, we could combine these into a single paragraph as well.
14a9c01
to
b56d29a
Compare
* DOCSP-35359-6.0.13-rn * DOCSP-35359-6.0.13-rn * DOCSP-35359-6.0.13-rn * DOCSP-35359-6.0.13-rn * DOCSP-35359-6.0.13-rn * DOCSP-35359-6.0.13-rn --------- Co-authored-by: jason-price-mongodb <[email protected]>
* DOCSP-35359-6.0.13-rn * DOCSP-35359-6.0.13-rn * DOCSP-35359-6.0.13-rn * DOCSP-35359-6.0.13-rn * DOCSP-35359-6.0.13-rn * DOCSP-35359-6.0.13-rn --------- Co-authored-by: jason-price-mongodb <[email protected]>
* DOCSP-35359-6.0.13-rn * DOCSP-35359-6.0.13-rn * DOCSP-35359-6.0.13-rn * DOCSP-35359-6.0.13-rn * DOCSP-35359-6.0.13-rn * DOCSP-35359-6.0.13-rn --------- Co-authored-by: jason-price-mongodb <[email protected]>
* DOCSP-35359-6.0.13-rn * DOCSP-35359-6.0.13-rn * DOCSP-35359-6.0.13-rn * DOCSP-35359-6.0.13-rn * DOCSP-35359-6.0.13-rn * DOCSP-35359-6.0.13-rn --------- Co-authored-by: jason-price-mongodb <[email protected]>
* DOCSP-35359-6.0.13-rn * DOCSP-35359-6.0.13-rn * DOCSP-35359-6.0.13-rn * DOCSP-35359-6.0.13-rn * DOCSP-35359-6.0.13-rn * DOCSP-35359-6.0.13-rn --------- Co-authored-by: jason-price-mongodb <[email protected]>
No description provided.