The forEachCollectionFromDb CollectionCatalog helper should abandon its snapshot before it performs the user provided callback on each collection.
If the snapshot is not abandoned, then any newly added collections have the chance to be seen as forEachCollectionFromDb iterates over the remaining collections. This could lead to inconsistencies, such as seeing indexes in the IndexCatalog of the new collection but not seeing them on-disk due to using an older snapshot.