Вы используете процедуру неправильно.Ваш первый аргумент apoc.periodic.iterate
должен быть запросом Cypher, который возвращает поток удаляемых узлов, а вторым аргументом должен быть запрос на удаление этих узлов.
Попробуйте это:
call apoc.periodic.iterate(
'MATCH (p:Post)
WITH p.unique_post_id as id, collect(p) AS nodes
WHERE size(nodes) > 1
UNWIND tail(nodes) AS node
RETURN node',
'DETACH DELETE node',
{batchSize:100000, iterateList:true})
Если это по-прежнему не удается, попробуйте уменьшить значение batchSize
.