|
There are some operations, like the restartCatalog command, that fail if a background operation such as an index build is in progress.
This is a problem in sharding passthroughs where the periodic LogicalSessionCache refresh is enabled, because the first LogicalSessionCache refresh on a shard causes a background index build on the config.cache.chunks.config.system.sessions collection (because it causes a CatalogCache refresh for config.system.sessions).
We could:
- blacklist any tests that cannot tolerate background index builds from sharding passthroughs that have periodic logical session cache refreshes
- ensure all shards have refreshed their CatalogCache for the ns at least once before running the tests, so that the indexes are already built
- add an override that catches BackgroundOperationInProgressForDatabase and retries the operation
I think the last one is the best option, since it maximizes test coverage.
|