// get corresponding node
SessionImpl corrSession =
((RepositoryImpl)session.getRepository()).internalLogin(session.getUserState(), srcWorkspace);
ItemDataMergeVisitor visitor = new ItemDataMergeVisitor(this.session, corrSession, failed, bestEffort);
this.nodeData().accept(visitor);
SessionChangesLog changes = visitor.getMergeChanges();
EntityCollection failedIter = createMergeFailed(failed, changes);
if (changes.getSize() > 0)
dataManager.getTransactManager().save(changes);