|
Add the capability to schedule TTL index deletion, analogous to how we can schedule the cluster balancer.
Use case: 9-5 systems that want to perform TTL deletion of old data outside of business hours to avoid additional performance overhead during busy periods.
This can be approximated today by running a cron job to do something like the following, but it would be a nice-to-have in the database:
- At start of TTL deletion window:
db.runCommand({collMod: "collection-name",
|
index: {keyPattern: {ts:1},
|
expireAfterSeconds: <desired expiry age>}})
|
- At end of TTL deletion window:
db.runCommand({collMod: "collection-name",
|
index: {keyPattern: {ts:1},
|
expireAfterSeconds: <some very large value>}})
|
|