Several places in the code make use of the listCollections functionality of the server C++ driver:
- shell functionality
- replica set rollback
- sharding migrate and shardCollection commands
These areas will fail to function correctly if the source is a 2.6 mongod and the target is a 2.8 mongod running with the WiredTiger storage engine. The code attempts to scan system.namespaces with a query. Since the failure will be silent (it simply looks like there are no collections on the target), we should fix this in the 2.6 branch by adding support for the new 2.8 listCollections command to the 2.6 server C++ client.