source.getPersistenceContext().removeEntity(key);
if ( persister.hasCollections() ) new EvictVisitor( source ).process(object, persister);
}
if ( persister.hasCache() ) {
final CacheKey ck = source.generateCacheKey(
id,
persister.getIdentifierType(),
persister.getRootEntityName()
);
persister.getCacheAccessStrategy().evict( ck );