private Mono<Boolean> createCollectionsIfNotExist(boolean migrateCollections) {
        return adminMongoClient.listCollectionNames()
                .collect(CollectorUtil.toSet(32))
                .flatMap(existingCollectionNames -> {
                    if (migrateCollections) {
                        return collectionMigrator.migrate(existingCollectionNames)
                                .then(Mono.defer(() -> {
                                    LOGGER.info("Start creating collections");
                                    return createCollectionsIfNotExist(existingCollectionNames);
                                }));
                    }
                    LOGGER.info("Start creating collections");
                    return createCollectionsIfNotExist(existingCollectionNames);
                });
    }
@return True if all collections have existed
turms-service/src/main/java/im/turms/service/storage/mongo/MongoCollectionInitializer.java