Issue
Query with min/max modifier uses first index with related fields.
On fresh MongoDB secondary startup `id` index became last in order (this looks like a bug) and `find` operation with `min`/`max` modifier starts using first hashed index by `_id`.
When this secondary became primary, this shard returns incomplete results on query.
user:PRIMARY> db.socialTopics.getIndices()
[
	{
		"v" : 2,
		"key" : {
			"_id" : "hashed"
		},
		"name" : "_id_hashed",
		"background" : true,
		"ns" : "user.socialTopics"
	},
	{
		"v" : 2,
		"key" : {
			"_id" : 1
		},
		"name" : "_id_",
		"ns" : "user.socialTopics"
	}
]
user:PRIMARY> db.socialTopics.find({}, {_id: 1}).min({_id: ObjectId("5bb74d8cefa37173fe2cf692")}).sort({_id: 1}).limit(5).explain()
{
	"queryPlanner" : {
		"plannerVersion" : 1,
		"namespace" : "user.socialTopics",
		"indexFilterSet" : false,
		"parsedQuery" : {
			
		},
		"winningPlan" : {
			"stage" : "PROJECTION",
			"transformBy" : {
				"_id" : 1
			},
			"inputStage" : {
				"stage" : "SORT",
				"sortPattern" : {
					"_id" : 1
				},
				"limitAmount" : 5,
				"inputStage" : {
					"stage" : "SORT_KEY_GENERATOR",
					"inputStage" : {
						"stage" : "FETCH",
						"inputStage" : {
							"stage" : "IXSCAN",
							"keyPattern" : {
								"_id" : "hashed"
							},
							"indexName" : "_id_hashed",
							"isMultiKey" : false,
							"isUnique" : false,
							"isSparse" : false,
							"isPartial" : false,
							"indexVersion" : 2,
							"direction" : "forward",
							"indexBounds" : {
								
							}
						}
					}
				}
			}
		},
		"rejectedPlans" : [ ]
	},
	...
} 
Why we use min/max modifier
We use min/max modifier for iterating over collections, because MongoDB don't have operation like `after` or `before`.
We can't use `$gt`/`$gte`/`$lt`/`$lte` because:
- this operations always false for values with differ types;
- it's not trivial to make query with multiple field bounds.
Workaround
Looks like with `hint` we can set correct index directly.
- causes
- 
                    PYTHON-1811 Raise a deprecation warning for min/max queries that don't contain a hint -         
- Closed
 
-         
- is depended on by
- 
                    DRIVERS-653 Require hint for min/max find options -         
- Closed
 
-         
- related to
- 
                    CDRIVER-3099 Specify hint with min/max tests for MongoDB 4.2 -         
- Closed
 
-