Tenho nós do rótulo TypeA que têm uma propriedade de string, propA. propA é uma string JSON e pode ser convertida em um mapa usando apoc.convert.fromJsonMap().
Quero criar novos nós do Tipo B, cujas propriedades são propA e criar um relacionamento entre ambos os nós. Executei a seguinte consulta com sucesso:
MATCH (n:TypeA)
WITH apoc.convert.fromJsonMap(n.propA) AS values,n limit 1
MERGE (v:TypeB)
SET v=values
WITH n,v
MERGE (v)-[:RELATION_TYPE]->(n)
RETURN v,n;
No entanto, quando uso o seguinte com apoc.periodic.iterate para converter meu banco de dados inteiro, ele lança um erro. A consulta que estou executando:
CALL apoc.periodic.iterate(
"MATCH (n:TypeA) RETURN n;",
"WITH apoc.convert.fromJsonMap(n.propA) AS values, n
MERGE (v:TypeB)
SET v=values
WITH n,v
MERGE (v)-[:RELATION_TYPE]->(n)
RETURN v,n;
",
{batchSize:10000, parallel: false});
O erro:
{
"Expected ReferenceFromSlot(2) to be a map, but it was :`NO_VALUE`": 4382
}
Qualquer ajuda é muito apreciada.