The relevant declaration is:
@OneToMany(cascade=CascadeType.ALL,fetch=FetchType.EAGER) @JoinColumn(referencedColumnName="id",name="foo_id") @OrderColumn List<Bar> bars;
So this should be a unidirectional parent-owning-side-child association mapping. While the article is pretty interesting stuff I don’t see how this helps with the problem. The problem is not locking from my point of view.