Fix #2 (two queries): 2 queries fired, books=4, awards=3 Cartesian product: 4 books x 3 awards for 1 author -> raw SQL join rows = 12, distinct entities returned = 1 MultipleBagFetchException reproduction -- wrapper class: java.lang.IllegalArgumentException MultipleBagFetchException reproduction -- root cause class: org.hibernate.loader.MultipleBagFetchException MultipleBagFetchException reproduction -- verbatim message: cannot simultaneously fetch multiple bags: [com.ankurm.hibernatedemo.association.BagAuthorList.awards, com.ankurm.hibernatedemo.association.BagAuthorList.books] Fix #1 (Set instead of List): 1 distinct authors returned, 1 queries fired