Batch transaction (#5849)
* Batch transaction boilerplate * Refactoring transaction boilerplate * Independent sessions test * Transactions - partial * Missing only one test * All tests passing for mongo db * Tests on Travis * Transactions on postgres * Fix travis to restart mongodb * Remove mongodb service and keep only mongodb runner * MongoDB service back * Initialize replicaset * Remove mongodb runner again * Again only with mongodb-runner and removing cache * Trying with pretest and posttest * WiredTiger * Pretest and posttest again * Removing inexistent scripts * wiredTiger * One more attempt * Trying another way to run mongodb-runner * Fixing tests * Include batch transaction on direct access * Add tests to direct access
This commit is contained in:
committed by
GitHub
parent
fe18fe0f61
commit
8b97c1380b
@@ -111,27 +111,30 @@ export default class MongoCollection {
|
||||
.toArray();
|
||||
}
|
||||
|
||||
insertOne(object) {
|
||||
return this._mongoCollection.insertOne(object);
|
||||
insertOne(object, session) {
|
||||
return this._mongoCollection.insertOne(object, { session });
|
||||
}
|
||||
|
||||
// Atomically updates data in the database for a single (first) object that matched the query
|
||||
// If there is nothing that matches the query - does insert
|
||||
// Postgres Note: `INSERT ... ON CONFLICT UPDATE` that is available since 9.5.
|
||||
upsertOne(query, update) {
|
||||
return this._mongoCollection.updateOne(query, update, { upsert: true });
|
||||
upsertOne(query, update, session) {
|
||||
return this._mongoCollection.updateOne(query, update, {
|
||||
upsert: true,
|
||||
session,
|
||||
});
|
||||
}
|
||||
|
||||
updateOne(query, update) {
|
||||
return this._mongoCollection.updateOne(query, update);
|
||||
}
|
||||
|
||||
updateMany(query, update) {
|
||||
return this._mongoCollection.updateMany(query, update);
|
||||
updateMany(query, update, session) {
|
||||
return this._mongoCollection.updateMany(query, update, { session });
|
||||
}
|
||||
|
||||
deleteMany(query) {
|
||||
return this._mongoCollection.deleteMany(query);
|
||||
deleteMany(query, session) {
|
||||
return this._mongoCollection.deleteMany(query, { session });
|
||||
}
|
||||
|
||||
_ensureSparseUniqueIndexInBackground(indexRequest) {
|
||||
|
||||
Reference in New Issue
Block a user