Почему Hibernate делает грязную проверку всех сущностей в кеше первого уровня, когда сохраняется другая?
Как указано в этом ответе:
когда вы сохраняете сущность, то, что делает Hibernate, она добавляет ее в кеш первого уровня (Session или EntityManager в случае JPA). Каждый раз, когда вы добавляете элемент в кеш первого уровня, он выполняет грязную проверку ВСЕХ сущностей в кеше первого уровня, чтобы определить, нужно ли что-то очищать
Допустим, кэш первого уровня содержит мои сущности a
, b
а также c
, Теперь я сохраняю сущность e
, Зачем выполнять эту грязную проверку, чтобы определить, нужно ли сбрасывать какие-либо из этих объектов. Зачем? Я имею в виду, почему в точке сохранения сущности e
важно определить, a
, b
или же c
нужно покраснеть?