Hibernate - @ElementCollection - Comportamiento extraño de eliminación / inserción

@Entity
public class Person {

    @ElementCollection
    @CollectionTable(name = "PERSON_LOCATIONS", joinColumns = @JoinColumn(name = "PERSON_ID"))
    private List<Location> locations;

    [...]

}

@Embeddable
public class Location {

    [...]

}

Dada la siguiente estructura de clases, cuando trato de agregar una nueva ubicación a la lista de Ubicaciones de personas, siempre da como resultado las siguientes consultas SQL:

DELETE FROM PERSON_LOCATIONS WHERE PERSON_ID = :idOfPerson

Y

A lotsa' inserts into the PERSON_LOCATIONS table

Hibernate (3.5.x / JPA 2) elimina todos los registros asociados para la Persona dada y vuelve a insertar todos los registros anteriores, más el nuevo.

Tuve la idea de que el método equals / hashcode en Location resolvería el problema, pero no cambió nada.

Cualquier pista es apreciada!

Respuestas a la pregunta(4)

Su respuesta a la pregunta