I am using Hibernate envers in one of my projects. It works really good and does that job.
I am trying to understand the internal working mechanism of envers.
How does envers work internally?
What happens when the actual transaction is succeeded and the audit table update fails? Will the entire transaction be rolled back?
Does envers be executed in a different thread than the actual one serving the request? or can it be?
Hibernate Envers provides a very simple solution for CDC (Change Data Capture).
If you want to use Envers, make sure you are using the validity audit strategy because it performs better than the default one.