Read preferences, read and write concern, and collation can be overridden by various sources. The highest-priority sources for these options are listed first: ================== ============== ============== ========= Read Preferences Read Concern Write Concern Collation ================== ============== ============== ========= ``read_prefs`` ``opts`` ``opts`` ``opts`` Transaction Transaction Transaction ================== ============== ============== ========= In a transaction, read concern and write concern are prohibited in ``opts`` and the read preference must be primary or NULL. :ref:`See the example for transactions ` and for :ref:`the "distinct" command with opts `.