final JPADriftChangeSet changeSet0 = new JPADriftChangeSet(resource, 0, COVERAGE, attachedDef1);
driftFile1 = new JPADriftFile(driftFile1Hash);
drift1 = new JPADrift(changeSet0, drift1Path, FILE_ADDED, null, driftFile1);
final JPADriftSet driftSet0 = new JPADriftSet();
driftSet0.addDrift(drift1);
final JPADriftChangeSet changeSet1 = new JPADriftChangeSet(resource, 0, DRIFT, detachedDef1);
driftFile2 = new JPADriftFile(driftFile2Hash);
drift2 = new JPADrift(changeSet1, drift2Path, FILE_ADDED, null, driftFile2);
final JPADriftSet driftSet1 = new JPADriftSet();
driftSet1.addDrift(drift2);
executeInTransaction(false, new TransactionCallback() {
@Override
public void execute() throws Exception {
em.persist(attachedDef1);