Here, when service class calls save method of DAO class, it starts in new transaction as mentioned above in AOP code..
The issue is service class reads object from database in one transaction and then it calls method which starts a new transaction to save data. When it calls session.flush, the table gets locked and can't get accessed even from outside application and the application gets hanged.
If i put the code of saving data from DAO to service class then it works fine as because it is under same transaction.
Has any body face similar issue while using Hibernate with Teradata (with spring managed transaction) ?