-
Type: Task
-
Resolution: Done
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: JavaScript, Shell, Write Ops
-
None
The current implementation of the WriteConcern object has a few issues:
- forces j to true/false
- forces w to 1 if undefined
- converts wtimeout to a number
- always sends all fields even if not set (defaults to values above)
- can't add arbitrary options
- validation is poor
- missing fsync support (not so important once we allow arbitrary options)
- doesn't inherit from collection if not overridden
- isn't settable on DB
This causes various problems as all defaults should be handled at the server, not client, and the client should be able to pass arbitrary options.