I believe one thing that can cause degradation in performance, is that the IN LIST
operator does a linear search across an array (maybe I'm wrong...).
Perhaps Neo4J could turn the list into a hash before execution so that testing for membership is faster.
The documentation doesn't say otherwise. If Cypher does treat a LIST as a hash when doing a membership test, it should say so in the documentation.
See: