Если я правильно понимаю, когда вы тянете объект, вы не хотите, чтобы достижения также извлекались из базы данных?Если это так, то вы должны использовать это:
@OneToMany(fetch = FetchType.LAZY, cascade = CascadeType.ALL, orphanRemoval = true)
@JoinColumn(name = "candidate_id", nullable=false)
private List<Achievement> achievements= new ArrayList<Achievement>();
Ленивый тип извлечения не будет извлекать ваши отношения один ко многим, поэтому в этом случае достижения не будут извлечены из базы данных, если вы извлекаете объектэто имеет достижения.