<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 03:35:34 UTC 2024

It is possible to restrict the fields that are returned in this document by specifying the 'field' parameter in your request.
For example, to request only the issue key and summary append 'field=key&field=summary' to the URL of your request.
-->
<rss version="0.92" >
<channel>
    <title>MongoDB Jira</title>
    <link>https://jira.mongodb.org</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-us</language>    <build-info>
        <version>9.7.1</version>
        <build-number>970001</build-number>
        <build-date>13-04-2023</build-date>
    </build-info>


<item>
            <title>[SERVER-14664] Replica Set Node Count Addition relating to Write Concern Rules</title>
                <link>https://jira.mongodb.org/browse/SERVER-14664</link>
                <project id="10000" key="SERVER">Core Server</project>
                    <description>&lt;p&gt;Our initial mongo configuration:&lt;br/&gt;
1 Primary: serverA&lt;br/&gt;
1 Secondary: serverB&lt;br/&gt;
1 Hidden Secondary: serverC&lt;/p&gt;

&lt;p&gt;Application is configured for w:majority. &lt;/p&gt;

&lt;p&gt;Today we ran into a scenario where we were adding nodes to our environment.  serverD and serverE, with an equal configuration as serverA and serverB, were added to the replica set and had begun replicating.  It was noted through an rs.status() that they were both syncing from serverB.  Soon afterwards (during the sync) a long running query was executed.  Performance of the application began to decline.  Even after the long running query had completed our application eventually appeared down.  We decided to restart the application which performs a couple of harmless writes to the mongo database before starting, but this step hung.  &lt;/p&gt;

&lt;p&gt;During this period of time we noted that serverC&apos;s replication lag was high.  The performance of serverC is much less than that of all other servers, but he&apos;s a hidden secondary host with the hopes it doesn&apos;t matter.&lt;/p&gt;

&lt;p&gt;To get our app back up and running, we removed serverD and serverE from the replica set and then we were able to successfully restart our application.  ServerC&apos;s replication lag continued to be high until he finally caught up later in the day.&lt;/p&gt;

&lt;p&gt;The question I have is regarding how does one determine the write concern.  With our initial setup of only 3 servers, one secondary being hidden, does this hidden host count towards that majority?  If it&apos;s invisible to the application, will mongo wait for an ack from this node?&lt;/p&gt;

&lt;p&gt;When we added 2 more hosts to the environment, and during the time we were syncing data, did the write majority value change?  Originally it was 2/3 servers, did it change to 3/5 despite those two new servers not being ready to serve requests?&lt;/p&gt;

&lt;p&gt;We are trying to better understand how write concern is calculated as configured using majority and have not been able to find the answer we are looking for in the documentation available.&lt;/p&gt;

&lt;p&gt;Due to the issues today we are planning on changing our configuration of write concern to w:2.  If we send a write to the replica set, which secondary will we wait for an ack?  Knowing we only need to wait for the ack from the non-hidden secondary, could there be a situation where we need to wait for the hidden secondary to send an ack as well?  Does this configuration change make sense per our problem that occurred today?&lt;/p&gt;</description>
                <environment></environment>
        <key id="148652">SERVER-14664</key>
            <summary>Replica Set Node Count Addition relating to Write Concern Rules</summary>
                <type id="6" iconUrl="https://jira.mongodb.org/secure/viewavatar?size=xsmall&amp;avatarId=14720&amp;avatarType=issuetype">Question</type>
                                            <priority id="4" iconUrl="https://jira.mongodb.org/images/icons/priorities/minor.svg">Minor - P4</priority>
                        <status id="6" iconUrl="https://jira.mongodb.org/images/icons/statuses/closed.png" description="The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.">Closed</status>
                    <statusCategory id="3" key="done" colorName="success"/>
                                    <resolution id="9">Done</resolution>
                                        <assignee username="-1">Unassigned</assignee>
                                    <reporter username="jskarbek">John Skarbek</reporter>
                        <labels>
                    </labels>
                <created>Wed, 23 Jul 2014 18:58:52 +0000</created>
                <updated>Wed, 10 Dec 2014 23:10:28 +0000</updated>
                            <resolved>Thu, 24 Jul 2014 15:10:24 +0000</resolved>
                                    <version>2.4.9</version>
                                                    <component>Performance</component>
                    <component>Replication</component>
                    <component>Write Ops</component>
                                        <votes>0</votes>
                                    <watches>5</watches>
                                                                                                                <comments>
                            <comment id="670058" author="thomasr" created="Thu, 24 Jul 2014 15:10:24 +0000"  >&lt;p&gt;Hi John, &lt;/p&gt;

&lt;p&gt;Please be aware that the SERVER project is for reporting bugs or feature suggestions for the MongoDB server. Unfortunately we can&apos;t answer support questions in this project. &lt;/p&gt;

&lt;p&gt;I recommend that you post your question on the mongodb-user group (&lt;a href=&quot;http://groups.google.com/group/mongodb-user&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://groups.google.com/group/mongodb-user&lt;/a&gt;) or Stack Overflow with the &lt;tt&gt;mongodb&lt;/tt&gt; tag. A question like this involving more discussion would be best posted on the mongodb-user group, where you have a broad audience of MongoDB employees and community members.&lt;/p&gt;

&lt;p&gt;Regards,&lt;br/&gt;
Thomas &lt;/p&gt;</comment>
                    </comments>
                    <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                <customfield id="customfield_10050" key="com.atlassian.jira.toolkit:comments">
                        <customfieldname># Replies</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1.0</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10055" key="com.atlassian.jira.ext.charting:firstresponsedate">
                        <customfieldname>Date of 1st Reply</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>Thu, 24 Jul 2014 15:10:24 +0000</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10052" key="com.atlassian.jira.toolkit:dayslastcommented">
                        <customfieldname>Days since reply</customfieldname>
                        <customfieldvalues>
                                        9 years, 29 weeks, 6 days ago
    
                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_18254" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Dependencies</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue><![CDATA[]]></customfieldvalue>


                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_15850" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            <customfield id="customfield_10057" key="com.atlassian.jira.toolkit:lastusercommented">
                        <customfieldname>Last comment by Customer</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>false</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_10056" key="com.atlassian.jira.toolkit:lastupdaterorcommenter">
                        <customfieldname>Last commenter</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>ramon.fernandez@mongodb.com</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_11151" key="com.atlassian.jira.toolkit:LastCommentDate">
                        <customfieldname>Last public comment date</customfieldname>
                        <customfieldvalues>
                            9 years, 29 weeks, 6 days ago
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                    <customfield id="customfield_10051" key="com.atlassian.jira.toolkit:participants">
                        <customfieldname>Participants</customfieldname>
                        <customfieldvalues>
                                        <customfieldvalue>jskarbek</customfieldvalue>
            <customfieldvalue>thomas.rueckstiess@mongodb.com</customfieldvalue>
    
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                        <customfield id="customfield_14254" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Product Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hrlr4n:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hs0qlr:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10558" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>128761</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_23361" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Requested By</customfieldname>
                        <customfieldvalues>
                                

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10053" key="com.atlassian.jira.ext.charting:timeinstatus">
                        <customfieldname>Time In Status</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                        <customfield id="customfield_22870" key="com.onresolve.jira.groovy.groovyrunner:scripted-field">
                        <customfieldname>Triagers</customfieldname>
                        <customfieldvalues>
                                

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_14350" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>serverRank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>1|hsgs2v:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                    </customfields>
    </item>
</channel>
</rss>