मुझे नहीं पता कि हाइबरनेट में लेनदेन "घोंसला" कैसे किया जाता है (जैसा कि मुझे विश्वास नहीं है कि MySQL वास्तव में लेनदेन घोंसला कर सकता है)।
इसलिए मैं मान लूंगा कि दूसरा (नेस्टेड) लेन-देन (?) डेटाबेस से एक नया कनेक्शन होना चाहिए - अन्यथा "बाहरी" लेनदेन को प्रभावित किए बिना "नेस्टेड" लेनदेन को रोलबैक करना संभव नहीं होगा।
यदि वास्तव में ऐसा है, तो आप शायद MySQL के डिफ़ॉल्ट अलगाव स्तर से प्रभावित हैं जो कि REPEATABLE READ
है जो बाहरी लेन-देन को बाद . किए गए किसी भी डेटा को देखने नहीं देगा कि लेनदेन शुरू हो गया।
इस सिद्धांत का परीक्षण करने के लिए, अलगाव स्तर (बाहरी लेन-देन के) को READ COMMITTED
में बदलने का प्रयास करें और देखें कि क्या इससे समस्या हल हो जाती है।