Như tôi đã đề cập trong bản cập nhật thứ 3 của mình, JPA đã "tìm nạp 50 id" từ trình tự trở lên và đếm chúng trong bộ nhớ để đạt hiệu quả.
Hành vi này được chỉ định bởi javax.persistence.SequenceGenerator.allocationSize
mặc định là 50.
Điều này hoàn toàn không trực quan đối với tôi, hoặc những người khác , vì chuỗi cơ sở dữ liệu Oracle của tôi được cho là xác định hành vi này và 50 không phải là mặc định tiêu chuẩn ở đó.
Giải pháp nhanh chóng và hiệu quả là chỉ định allocationSize=1
:
@SequenceGenerator(name = "generator", sequenceName = "MY_SEQ",
allocationSize = 1)
Giờ đây, chuỗi Oracle được tăng lên cho mỗi lần chèn.