Hi Eric,
For a production environment I would generally only enable extra features if required so that your configuration reflects the most commonly used & tested defaults.
For majority read concern there is some overhead of cache maintenance for snapshots, so this definitely falls in the category of unnecessary resource utilization if you don't have a use case. The impact is going to be specific to your workload and environment, so the best way to measure would be for you to test with & without this feature enabled in comparable situations.
I would also consider other potentially problematic scenarios based on your replica set configuration. For example, arbiters and delayed secondaries maintain availability for a replica set but may affect how soon old read concern snapshots can be freed. A pathological example is the server bug you pointed out where read concern was accidentally enabled with a mixed 3.0/3.2 replica set: a majority of servers in this deployment didn't support majority read concern so the old snapshots were never freed. Secondary lag is also a factor in how long snapshots need to be kept available.
A specific use case where majority read concern does make sense (and is enabled by default) is for the
Config Server Replica Set (CSRS) servers in MongoDB 3.2. However, it is worth noting that CSRS servers have specific configuration restrictions (no arbiters, no delayed members, ...) to avoid obvious problematic scenarios.
It's not certain that this option should be enabled by default, and as I mentioned the current "planned but not scheduled" horizon is somewhere past MongoDB 3.4 in terms of planning consideration. The specific changes would have to be assessed given the codebase and related features scheduled as part of the same planning round.
I think the backlog server issue you noted needs some clarity of title & description as it is currently very terse. The intent of the issue looks to be more about running the full test suite to try to identify the impact of majority read concern rather than a suggestion this option should generally default to true.
Regards,
Stephen