Info
As part of the changes to make collection metadata refresh asynchronous, it is possible that the CatalogCache::getCollectionRoutingInfo call can throw on interruption.
When MetadataManager::finishRecovery gets this exception, it will unwind through the scoped guard block and will propagate the exception to the balancer main thread, which is not prepared to handle it.
Top User Comments
xgen-internal-githook commented on Wed, 17 May 2017 13:08:44 +0000:
Author:
{u'username': u'kaloianm', u'name': u'Kaloian Manassiev', u'email': u'kaloian.manassiev@mongodb.com'}
Message: SERVER-29164 Ensure CatalogCache::getCollectionRoutingInfo does not throw
(cherry picked from commit ff3177abf366f0699629afb1b20fb72c6c79a6e4)
Branch: v3.4
https://github.com/mongodb/mongo/commit/4dbab2657ec28f71da0e97c2d2f9be8df4e54e70
xgen-internal-githook commented on Sat, 13 May 2017 13:31:15 +0000:
Author:
{u'username': u'kaloianm', u'name': u'Kaloian Manassiev', u'email': u'kaloian.manassiev@mongodb.com'}
Message: SERVER-29164 Ensure CatalogCache::getCollectionRoutingInfo does not throw
Branch: master
https://github.com/mongodb/mongo/commit/ff3177abf366f0699629afb1b20fb72c6c79a6e4