You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The transaction specs don't run in the MongoDB CI jobs, because they are only defined if MONGODB_TOPOLOGY is replicaset, while CI sets it to replset.
spec/ParseServerRESTController.spec.js, spec/batch.spec.js and spec/MongoStorageAdapter.spec.js only define their transactions specs if process.env.MONGODB_TOPOLOGY === 'replicaset' (the first two also with Postgres).
feat: Add support for MongoDB 7 #8761 (Parse Server 7.0.0) changed MONGODB_TOPOLOGY in .github/workflows/ci.yml from replicaset to replset for mongodb-runner 5, which expects -t replset, but didn't change the specs. Since then, transactions are only tested with Postgres. The logs of the MongoDB 7, ReplicaSet jobs don't contain these specs; the logs of the PostgreSQL jobs do.
Running the specs locally with MONGODB_TOPOLOGY=replicaset against a replica set started by mongodb-runner:
The 6 specs in ParseServerRESTController.spec.js and spec/batch.spec.js pass.
The specs in MongoStorageAdapter.spec.js fail with MongoServerSelectionError: Server selection timed out after 30000 ms. They connect with ?replicaSet=replicaset, but mongodb-runner names the replica set replSet-<uuid>, unless --replSet is passed to mongod.
Issue
The transaction specs don't run in the
MongoDBCI jobs, because they are only defined ifMONGODB_TOPOLOGYisreplicaset, while CI sets it toreplset.spec/ParseServerRESTController.spec.js,spec/batch.spec.jsandspec/MongoStorageAdapter.spec.jsonly define theirtransactionsspecs ifprocess.env.MONGODB_TOPOLOGY === 'replicaset'(the first two also with Postgres).MONGODB_TOPOLOGYin.github/workflows/ci.ymlfromreplicasettoreplsetformongodb-runner5, which expects-t replset, but didn't change the specs. Since then, transactions are only tested with Postgres. The logs of theMongoDB 7, ReplicaSetjobs don't contain these specs; the logs of thePostgreSQLjobs do.MONGODB_TOPOLOGY=replicasetagainst a replica set started bymongodb-runner:ParseServerRESTController.spec.jsandspec/batch.spec.jspass.MongoStorageAdapter.spec.jsfail withMongoServerSelectionError: Server selection timed out after 30000 ms. They connect with?replicaSet=replicaset, butmongodb-runnernames the replica setreplSet-<uuid>, unless--replSetis passed tomongod.