Facing with ObjectOptimisticLocking FailureException after migrating to Hibernate 6.6.2.Final

Hi, I’m facing the same issue after migrating to spring-boot 3.5.4.

Token entity:

@NoArgsConstructor
@AllArgsConstructor
@Getter
@Setter
@Builder
@Entity
@Table(name = "tbl_tokens")
public class Token {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;
    @ManyToOne
    private User user;
}

User entity:

@NoArgsConstructor
@AllArgsConstructor
@Getter
@Setter
@Builder
@Entity
@Table(name = "tbl_users")
public class User implements UserDetails {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;

    @OneToMany(mappedBy = "user", cascade = CascadeType.REMOVE)
    private Set<Token> tokens;
}

Service implementation (incomplete but you’ll get the idea.):

@Override
public ResponseEntity<Something> login() {
    Token accessToken, refreshToken;

    accessToken = service.generateAccessToken();
    refreshToken = service.generateRefreshToken();

    accessToken.setUser(user);
    refreshToken.setUser(user);

    tokenRepository.saveAll(List.of(accessToken, refreshToken)); 
}

PS: I’m still in the development of the project I’m currently working on, and I truncated the tbl_tokens table hoping it would fix the issue.