Controlar alterações de campo na entidade Doctrine

Quero rastrear alterações em um campo de uma Entidade de Doutrina. Eu uso o Symfony 2.5.0 e o Doctrine 2.2.3.

Até agora eu tenho umEventSubscriber que assinapreUpdate. Aqui, quero criar uma nova entidade que armazene o valor novo e antigo e mantenha uma referência à entidade atualizada.

O problema é que não consigo encontrar uma maneira de persistir nessa nova entidade. Se eupersist() nopreUpdate eflush() nopostUpdate, funcionará se eu alterar apenas uma entidade. Se várias entidades forem alteradas, eu recebo um erro informando que o conjunto de alterações está vazio.

Tentei mexer com eventos diferentes com resultados diferentes. Páginas em branco, entidades de rastreamento não são mantidas etc.

Eu acho que esse deve ser um caso de uso comum - mas não consigo encontrar exemplos.

questionAnswers(2)

yourAnswerToTheQuestion