MongoDB transaction specs are skipped in CI
Author: mtrezzaCreated Sep 28, 2026Updated Sep 28, 2026
Issue
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.jsandspec/MongoStorageAdapter.spec.jsonly define theirtransactionsspecs ifprocess.env.MONGODB_TOPOLOGY === 'replicaset'(the first two also with Postgres).- #8761 (Parse Server 7.0.0) changed
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. - Running the specs locally with
MONGODB_TOPOLOGY=replicasetagainst a replica set started bymongodb-runner:- The 6 specs in
ParseServerRESTController.spec.jsandspec/batch.spec.jspass. - The specs in
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.
- The 6 specs in
Source: parse-community/parse-server