中年engineerの独り言 - crumbjp

LinuxとApacheの憂鬱

Proposal about notablescan option

I issue this ticket from strong sense of impending crisis and wanted to know how others thinks about this.
https://jira.mongodb.org/browse/SERVER-15561

This proposal is about the feature of the notablescan option.
This is not for the programers but for the mongo-operators who operates more than hundreds GB of collections regularly.

WISH
  • I want to use notablescan on the production DB.
  • I want to apply notablescan to per DB or per COLLECTION.
REASON

We can kill our mongod easily by sending query with no indexed field to the more than hundreds GB of collection.
To make matters worse, we'll get same results by specifying non-existent field cause by simple typo.

The feature of notablescan option can prevent these catastrophic incidents.
Especially, on the production DB.

ADDITIONAL

But currently, likely to add this sentence to mongo-docs.

  +   Don't run production :program:`mongod` instances with
  +   :parameter:`notablescan` because preventing table scans can potentially
  +   affect queries in all databases, including administrative queries.

https://github.com/mongodb/docs/commit/43a37686f53102e639a33d404e9f73f47d1729a6#diff-ee73e0a6a2ede9af5743e69b8fad4f80R128

I think, this is the wrong policy to keep our mongo system safety.
On the contrary, I want to come to be that the notablescan option is applicable per DB or per COLLECTION.

Please vote this ticket (around right-top) if you agree with me.
https://jira.mongodb.org/browse/SERVER-15561