Reputation: 2519
I am auditing a Java object using Hibernate Envers annotations, but initial object creation occurs directly in the database using Pentaho (ETL).
I want to create the object using ETL and add a table entry to the Envers generated object_AUD and REVINFO tables.
I have been trying to find the generation strategy for the REV column from the REVINFO table, but I must be looking in the wrong places. Would someone help me find an effective generation strategy so I can manually insert records into the audited tables without causing possible collisions or weird behavior in the future?
Upvotes: 2
Views: 2027
Reputation: 21163
What you seek is going to depend on whether or not you are configuring your application to take the default for org.hibernate.envers.use_revision_entity_with_native_id
.
The default value (true
) tells Envers to ask Hibernate to create the REVINFO
table using a native-based primary key which will either be IDENTITY
or SEQUENCE
depending upon your database platform. If you look at the table definition for REVINFO
in your database, you should be able to deduce this information.
If this property is configured using false
, Envers will construct its own sequence metadata and provide that to Hibernate. The sequence is called REVISION_NUMBER
and is stored in a table called REVISION_GENERATOR
. The sequence is initialized to 1 and incremented by 1 as the default.
Upvotes: 3