[SERVER-21646] Inserts and updates to replicated capped collections must be single threaded Created: 24/Nov/15  Updated: 03/Dec/15  Resolved: 01/Dec/15

Status: Closed
Project: Core Server
Component/s: Storage
Affects Version/s: 3.2.0-rc4
Fix Version/s: 3.0.8, 3.2.0-rc5

Type: Bug Priority: Major - P3
Reporter: Rui Zhang (Inactive) Assignee: Mathias Stearn
Resolution: Done Votes: 0
Labels: sys-perf-reg
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Related
related to SERVER-21483 Secondary can reorder capped collecti... Closed
Backwards Compatibility: Fully Compatible
Operating System: ALL
Backport Completed:
Sprint: QuInt D (12/14/15)
Participants:
Linked BF Score: 0

 Description   

Similar to SERVER-21483, which limited concurrency on secondaries for capped collections, the same needs to happen on the primary. This will prevent the primary from running with more concurrency than the secondary.

Additionally we need to do this with inserts for correctness to ensure that the order of the capped collection matches the order of the insert entrees in the oplog.

Original title and description:
sys-perf regression: secondary could not keep with with insert_capped with WT (core_workloads_WT)

with insert_capped test, secondary cannot keep up with primary. This is introduced somewhere between c76b4ff to 0730c65,

  • manually verified this issue.
  • same workload insert into non-capped col does not show this issue.
  • this happens with vector insert with 8+ threads
  • primary and secondary show big difference in insert rate 150k vs 28k.
  • the growth of replication lag is almost linear vs time.


 Comments   
Comment by Githook User [ 03/Dec/15 ]

Author:

{u'username': u'RedBeard0531', u'name': u'Mathias Stearn', u'email': u'mathias@10gen.com'}

Message: SERVER-21646 limit concurrency of writes to replicated capped collections

This prevents the primary from running significantly faster than secondaries.

(cherry picked from commit f45b7c8e34743ba89407d90ee3392acb0d2be255)
Branch: v3.0
https://github.com/mongodb/mongo/commit/405a5c8d09ccd32294e70d525c4168780356ff16

Comment by Mathias Stearn [ 01/Dec/15 ]

SERVER-21483

Comment by Githook User [ 01/Dec/15 ]

Author:

{u'username': u'RedBeard0531', u'name': u'Mathias Stearn', u'email': u'mathias@10gen.com'}

Message: SERVER-21646 limit concurrency of writes to replicated capped collections

This prevents the primary from running significantly faster than secondaries.
Branch: master
https://github.com/mongodb/mongo/commit/f45b7c8e34743ba89407d90ee3392acb0d2be255

Comment by Daniel Pasette (Inactive) [ 24/Nov/15 ]

I am easily able to repro the issue on:
db version v3.2.0-rc3-87-g0730c65
git version: 0730c6551c12450884228e383da12a923a396e3e

Comment by Daniel Pasette (Inactive) [ 24/Nov/15 ]

Can you show exactly how you set up the machines? What's the size of the oplog?

Generated at Thu Feb 08 03:57:58 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.