Transaction management in JPA/Spring

Propagation is used to define how transactions related to each other. Common options

  • Required: Code will always run in a transaction. Create a new transaction or reuse one if available.
  • Requires_new: Code will always run in a new transaction. Suspend current transactions if one exists.


Isolation Defines the data contract between transactions.

  1. Read Uncommitted: Allows dirty reads
  2. Read Committed: Does not allow dirty reads
  3. Repeatable Read: If a row is read twice in the same transaction, the result will always be the same
  4. Serializable: Performs all transactions in a sequence


An isolation level is about how much a transaction may be impacted by the activities of other concurrent transactions. It supports consistency leaving the data across many tables in a consistent state. It involves locking rows and/or tables in a database.

The problem with multiple transactions
  • Scenario 1. If the T1 transaction reads data from table A1 that was written by another concurrent transaction T2. If on the way T2 is a rollback, the data obtained by T1 is an invalid one. E.g a=2 is original data. If T1 read a=1 that was written by T2.If T2 rollback then a=1 will be a rollback to a=2 in DB. But, Now, T1 has a=1 but in the DB table, it is changed to a=2.
  • Scenario2.If a T1 transaction reads data from table A1.If another concurrent transaction(T2) updates data on table A1. Then the data that T1 has read is different from table A1. Because T2 has updated the data in table A1.E.g if T1 read a=1 and T2 updated a=2.Then a!=b.
  • Scenario 3. If the T1 transaction reads data from table A1 with a certain number of rows. If another concurrent transaction(T2) inserts more rows on table A1. The number of rows read by T1 is different from the rows in table A1


Scenario 1 is called Dirty reads.
Scenario 2 is called Non-repeatable reads.
Scenario 3 is called Phantom reads.

So, the isolation level is the extent to which Scenario 1, Scenario 2, and Scenario 3 can be prevented. You can obtain a complete isolation level by implementing locking. That is preventing concurrent reads and writes to the same data from occurring. But it affects performance. The level of isolation depends upon application to application on how much isolation is required.


  1. ISOLATION_READ_UNCOMMITTED: Allows to read changes that haven’t yet been committed. It suffers from Scenario 1, Scenario 2, Scenario 3
  2. ISOLATION_READ_COMMITTED: Allows reads from concurrent transactions that have been committed. It may suffer from Scenario 2 and Scenario 3. Because other transactions may be updating the data.
  3. ISOLATION_REPEATABLE_READ: Multiple reads of the same field will yield the same results until it is changed by themselves.It may suffer from Scenario 3. Because other transactions maybe inserting the data
  4. ISOLATION_SERIALIZABLE: Scenario 1,Scenario 2,Scenario 3 never happens.It is complete isolation. It involves full locking. It affects performance because of locking.

13 comments:

  1. Thanks for the good words! Really appreciated. Great post. I’ve been commenting a lot on a few blogs recently, but I hadn’t thought about my approach until you brought it up. 
    Authorized apple service center in Chennai | apple service center in chennai | Authorized apple service center in Chennai | apple service center in chennai | ipad service center in chennai | iphone water damage service in chennai

    ReplyDelete
  2. Excellent Blog. I really want to admire the quality of this post. I like the way of your presentation of ideas, views and valuable content. No doubt you are doing great work. I’ll be waiting for your next post. Thanks .Keep it up! Kindly visit us @ Christmas Gift Boxes | Wallet Box | Perfume Box Manufacturer
    Candle Packaging Boxes
    Luxury Leather Box
    Luxury Clothes Box
    Luxury Cosmetics Box
    Shoe Box Manufacturer
    Luxury Watch Box

    ReplyDelete
  3. Wow, what an awesome spot to spend hours and hours! It's beautiful and I'm also surprised that you had it all to yourselves! we are the one of the best HIV treatment hospital in India..Click here for more details Best HIV Treatment in India | Top HIV Hospital in India | HIV AIDS Treatment in Mumbai | HIV Specialist in Bangalore | HIV Positive Treatment in India | Medicine for AIDS in India




    ReplyDelete
  4. You have shared a nice article. Your service is very interesting and useful.I liked it.
    Tablet Repair Nj

    ReplyDelete
  5. Very good and informative article. Thanks for sharing such nice article, keep on updating such good articles.
    Basic Computer Course in Chromepet | Basic Computer Course in Chennai

    ReplyDelete
  6. Great work man you have post a great post it will help people very much keep it do more for people like that iPhone 8 Plus screen replacement.

    ReplyDelete
  7. Great informative blog. mobilerepairfactory.com.au is reliable platform for the phone repairs and many others services. Visit here mobile phone repairs sutherland shire

    ReplyDelete
  8. Great post, Which you have shared here. This information very important for every person those really interesting in. If you know more about us go through Drag Queen Phone Cases


    ReplyDelete
  9. Awesome post! This is helpful post. This article is clear and with lots of useful information. we provide austin cell repair at affordable prices.for more info visit our website.

    ReplyDelete
  10. I really appreciate the kind of topics you post here. Thanks for sharing us a great information that is actually helpful. Opt to buy Moto G8 Power Lite Cases & Covers at ozcheapdeals.com.au

    ReplyDelete
  11. An Eternity Experience,Escorts Agency in Gujarat Being by themselves in a particular place can be terrifying sometimes.Escorts contact number in Gujarat Nevertheless, you want to flee the ordinary and become Top Call Girls in Agra with someone not the same as the rest.Escorts Rate in Indore You could have the right company, you could have that escapade with someone,Escorts Rate in Haridwar and you could have an eternity experience and become happy, Escorts Rate in Goa can make your dreams become a reality.

    ReplyDelete
  12. Extremely useful information which you have shared here about business voip providers.This is a great way to enhance knowledge for us, and also beneficial for us. Thank you for sharing an article like this.

    ReplyDelete