[SERVER-69235] Remove TTL index on tenant migration recipient state document namespace Created: 29/Aug/22  Updated: 29/Oct/23  Resolved: 27/Jul/23

Status: Closed
Project: Core Server
Component/s: None
Affects Version/s: None
Fix Version/s: 7.1.0-rc0

Type: Task Priority: Major - P3
Reporter: Esha Maharishi (Inactive) Assignee: Jason Chan
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
is depended on by SERVER-69050 Tenant oplog buffer collection may no... Closed
is depended on by SERVER-61717 Ensure a POS instance remains in the ... Open
Related
related to SERVER-69236 Remove TTL index on tenant migration ... Backlog
related to SERVER-67372 Make tenant migration recipient delet... Closed
Assigned Teams:
Serverless
Backwards Compatibility: Fully Compatible
Sprint: Service Arch 2023-07-24, Service Arch 2023-08-07
Participants:

 Description   

SERVER-67372 will make the tenant migration recipient directly delete its state document from its run() method, so the TTL index on the state document namespace is no longer needed.

This ticket should stop calling createIndexes for the TTL index in TenantMigrationRecipientService::_rebuildService, and should instead call dropIndexes there to drop the TTL index if it exists because an earlier deployment was upgraded to the newer binaries.

This ticket should also add an upgrade/downgrade test under jstests/multiVersion that an existing TTL index gets deleted on upgrade.



 Comments   
Comment by Githook User [ 27/Jul/23 ]

Author:

{'name': 'Jason Chan', 'email': 'jason.chan@mongodb.com', 'username': 'jasonjhchan'}

Message: SERVER-69235 Remove TTL index from TenantMigrationRecipient state doc
Branch: master
https://github.com/mongodb/mongo/commit/09d4dd71cd39087292af3c6072657d257ba17e94

Comment by Suganthi Mani [ 03/Jul/23 ]

Both SERVER-69236 & SERVER-69235 should be straight-forward. As part of those tickets we should update TenantMigration[Donor|Recipient]Service::rebuildService() to create collection with ttl (similar to shard merge recipient service). And, delete this test - tenant_migration_recipient_ttl.js which we don't need after SERVER-69235 . FYI, we have test coverage for deleting state doc directly by instance run method, see tenant_migration[recipient|donor]_directly_deletes_its_state_doc.js.

Both donor and recipient creates external key collection with ttl index, for storing signing keys. I don't recall why we need ttl index for the external key collection and if it can be cleaned in-line by the instance run() method.  In either case, any work for external key collection, can be done as a separate ticket by Serverless team and shouldn't affect SERVER-61717.

CC jason.chan@mongodb.com 

Comment by Suganthi Mani [ 29/Jun/23 ]

We might need to fix this as after SERVER-61717 can cause some evergreen noises. so reopening this ticket and flagging for scheduling.

Comment by Didier Nadeau [ 21/Apr/23 ]

Tenant Migration recipient code is not used by Shard Merge anymore. As we're sunsetting Tenant Migration, the code will be removed and we don't need to invest time to remove the TTL.

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