10

I am using a NoSQL database MongoDB with Java and Spring Data. I am aware that MongoDB only supports transactions for a single document.

I am using Spring Transactions to carry out MongoDB transcations. I am using TransactionTemplate. What should I set in TransactionManager when using TransactionTemplate?

EDIT

I have something like this:

<bean id=”txtTemplateBean” class=”org.springframework.transaction.support.TransactionTemplate”>
<property name=”transactionManager” ref=”txnManagerBean”></property>

I need to define txnManagerBean to point to something like DataSourceTransactionManager for a MongoDB database.

3
  • What have you got so far? Commented Feb 19, 2013 at 22:26
  • Nothing so far. I need a DataSourceTransactionManager or something similar for MongoDB. Google doesn`t return much. Any ideas? Commented Feb 20, 2013 at 17:49
  • Please see edit above Commented Feb 20, 2013 at 21:33

3 Answers 3

6

Multi-document ACID transactions are now supported in MongoDB 4.0! See https://www.mongodb.com/blog/post/mongodb-multi-document-acid-transactions-general-availability

Sign up to request clarification or add additional context in comments.

3 Comments

Transactions have arrived. 4.0 has GA'ed. mongodb.com/blog/post/…
MongoDB 4.2 now supports distributed transactions in sharded clusters. mongodb.com/blog/post/…
5

MongoDB does support transaction-like semantics using two-phase commits.

There is also another independent effort to support transactions in mongodb using optimistic locking.

1 Comment

This answer is outdated. MongoDB4.0 now supports ACID transactions.
1

MongoDB doesn't support transactions, it only supports atomic operations.

http://docs.mongodb.org/manual/tutorial/model-data-for-atomic-operations/

Here is a post from someone who implemented transactions for MongoDB with optimistic locking: https://stackoverflow.com/a/12757751/1173560

1 Comment

Not true anymore.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.