A bad reload of config information when retrieving information for a database can cause a not-fully-initialized DBConfig object to remain in the shared config info. This can happen, for example, when all config servers are down.
We need to catch this error and remove the bad entry while still in the _lock if anything goes wrong while connecting.
see Grid::getDBConfig().
Affects 2.0 branch, probably 2.1.