2 years ago
#61365
NJS
REPEATABLE READ isolation level at update method is meaningful?
The Repeatable Read isolation level only sees data committed before the transaction began. So, I think it is only meaningful at Method doing repeat select. But, I see a below code.
@Transactional(isolation = Isolation.REPEATABLE_READ)
@Override
public void buyItem(Credit playerCredit, Long haveToPayCredit) {
if(haveToPayCredit > playerCredit.getFreeCredit()) {
Long remainHaveToPay = haveToPayCredit - playerCredit.getFreeCredit();
playerCredit.updateCredit(playerCredit.getPaidCredit() - remainHaveToPay, 0L);
}
else {
playerCredit.updateCredit(playerCredit.getPaidCredit(), playerCredit.getFreeCredit() - haveToPayCredit);
}
}
This method do only update. So, It look so meaningless to add Transactional annotation. The REPEATABLE READ isolation level at update method is meaningful?
spring
spring-transactions
0 Answers
Your Answer