Hi, I ran the Wearhouse-StorageCategory model you have posted (thank you for a clean test). Against 500 categories and 200 wearhouses and a cardinality of 10 categories per wearhouse. The domain classes were enhanced at build-time. The database is MySQL and the tests ran in my pedestrian laptop. Here are the results for finding Wearhouses 500 times in a loop.
Without connection pool : 2360 ms. With connection pool : 734ms Given these numbers are quite in contrast with your observations, I will request you to post the test harness you used to measure the number, so that we can investigate further. Few comments: 1. If performance is higher priority than ordering, consider using Set<> instead of List<> 2. Consider using a connection pool, if possible [1] [1] http://openjpa.apache.org/faq.html#FAQ-HowdoIenableconnectionpoolinginOpenJPA%253F Regards -- PS: "Aristotle maintained that women have fewer teeth than men; although he was twice married, it never occurred to him to verify this statement by examining his wives' mouths." -- The Impact of Science on Society, 1952 - Bertrand Russell -- View this message in context: http://n2.nabble.com/Slow-performance-with-OpenJPA-when-selecting-from-a-ManyToMany-relation.-tp2466994p2470215.html Sent from the OpenJPA Users mailing list archive at Nabble.com.