Hibernate: obtendo muitas linhas

Eu tenho problema com a obtenção de linhas do meu banco de dados usando o Hibernate. Quando eu gostaria de obter apenas uma linha, estou recebendo 20. Quando eu gostaria de obter todas as linhas da tabela com cerca de 1.5k linhas, estou recebendo exatamente 15.2k linhas. A classe de entidade dessa tabela possui chave primária composta.

Este é o meu código para obter todas as linhas:

Criteria criteria = getSession().createCriteria(type);
criteria.setCacheable(true).setCacheRegion(BaseEntity.PACKAGE);
criteria.list();

E esta é minha classe de entidade:

@javax.persistence.Entity
@Table(name = "my_table")
public class My extends MyEntity<MyPK> {

    @EmbeddedId
    private MyPK id;

    @Column(name = "text", nullable = false)
    protected String text;

    @ManyToOne
    @JoinColumn(name = "property", nullable = false, insertable = false, updatable = false)
    protected Option option;

    @Override
    public MyPK getId() {
        return id;
    }

    @Override
    public void setId(MyPK id) {
        this.id = id;
    }

    //getters and setter
}

E isso éMyPK classe:

@Embeddable
public class MyPK implements Serializable {

   @Column(name = "qwerty")
   protected String qwerty;

   @Column(name = "property")
   protected String property;

   //constructors, getters and setters
}

MyEntity classe é classe abstrata com@MappedSuperclass anotação. Este é o cabeçalho desta classe:

@MappedSuperclass
public abstract class MyEntity<T extends Serializable>

O que estou fazendo de errado? Este problema é comEmbeddedId?

EDITAR # 1 Como eu percebi isso é problema com isso:

@ManyToOne
@JoinColumn(name = "property", nullable = false, insertable = false, updatable = false)
protected Option option;

Este objeto contém chave estrangeira para outra tabela. E essa outra tabela tem referência a outra. E esta última tabela tem 10 linhas para a tabela anterior. No resultado, estou obtendo um valor de linhas * 10. O problema provavelmente está na anotação do Hibernate em minhas entidades.

questionAnswers(4)

yourAnswerToTheQuestion