[SERVER-6648] TTL monitor doesn't sync userFlags on the secondary Created: 30/Jul/12  Updated: 11/Jul/16  Resolved: 01/Aug/12

Status: Closed
Project: Core Server
Component/s: Usability
Affects Version/s: 2.2.0-rc0
Fix Version/s: 2.2.0-rc1

Type: Bug Priority: Critical - P2
Reporter: Kevin Matulef Assignee: Kevin Matulef
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: File ttl_repl.js    
Issue Links:
Related
Operating System: ALL
Participants:

 Description   

The TTL monitor syncs the collection-level userFlags when it runs. This is what triggers TTL collections to use the usePowerOf2Sizes feature to prevent fragmentation. Currently, if you create a TTL index on the primary, the index gets propagated to the secondary, but the userFlags don't get set on the secondary, because the TTL monitor returns immediately. This can cause large fragmentation on the secondaries.

To fix this, the TTL monitor should sync the userFlags on the secondary (it just shouldn't do any deletes).



 Comments   
Comment by auto [ 01/Aug/12 ]

Author:

{u'date': u'2012-08-01T11:51:17-07:00', u'email': u'matulef@gmail.com', u'name': u'Kevin Matulef'}

Message: SERVER-6648 make TTLMonitor sync userFlags on secondaries
Branch: master
https://github.com/mongodb/mongo/commit/b54a71fd4838196ba178a56f3b49a02cc94f9e10

Comment by Kevin Matulef [ 30/Jul/12 ]

Attached script to illustrate.

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