DB.java:183 passes in a null readPrefs but should pass in getReadPreference() to command(...).
DB.getCollectionNames() fails when connected to a secondary server even if ReadPreference is SECONDARY
DBCursor.count() fails when querying a secondary server even if ReadPreference is SECONDARY
authentication for replica set fails frequently because 'getnonce' and 'authenticate' command is issued to different server
ReadPrefs ignored for some commands due to case-sensitive comparison
distinct and count not go to secondary even we have specified the ReadPreference
MapReduce Fails when specifying a collection name