Aleksander Dukhno I found why your test will not reproduce the issue... Because your force initialize the collection. Your code in org.hibernate.test.lazyload.Parent#setChildren accesses the elements, thereby initializing the collection.