无法获取在单个函数中使用apoc.refactor.cloneNodesWithRelationships复制的数据

时间:2018-10-04 09:17:56

标签: neo4j neo4j-apoc

当前,我有一个问题,在使用apoc.refactor.cloneNodesWithRelationships克隆节点后,无法获取重复的节点。 所以我的结构代码就是这样:

ObjectService:

function List<String> copyObject(param) {     
    objectRepository.copyUsingApoc(param); //This repo basically contains the apoc clone query & return the new cloned ids
}

function List<Object> findObjectByClonedIds(List<String> cloneIds) {
     objectRepository.findObjectByCloneIds(cloneIds); //Contains normal match query with where id in
}

另一个服务:

function copy(param) {
     List<String> cloneIds = objectService.copyUsingApoc(param);
     List<Objects> listClonedObjects = objectService.findObjectByClonedIds(cloneIds);

     .....
     //Other function that process the data from listClonedObjects
     .....
}

Fyi:两个服务都具有@Transactional

这里的问题是我无法获取新复制的listClonedObjects。因此,由于列表为空,当我尝试访问新克隆的文件时会出错。但是,当我没有获取数据(注释它)并让事务完成时。我可以在数据库中找到正确重复的节点。问题是在事务运行时是否可以获取新克隆的数据? 我尝试过将函数与控制器分离(假设它将去其他事务并且事务已被刷新),但是仍然无法获取数据。这种情况下有任何解决方法或解决方案吗?

谢谢

0 个答案:

没有答案