poorvank
poorvank

Reputation: 7612

Changing index in Neo4j affects the search in cypher

I am using Neo4j 2.0 .

I have a label PROD. All nodes having label PROD have a property name. I have created an index on name like this :

CREATE INDEX ON :PROD(name) 

After creating an index if I change value of the property name from "old" to "new", the following query works fine in a small dataset used for testing but not in our production data with 700 nodes having label PROD (where totally there are around a million nodes with other labels).

MATCH (n:PROD) WHERE n.name="new" RETURN n;

I have also created legacy index on the same field and after dropping and re-indexing the node on modification, it works perfectly fine on both test and production datasets.

Is there a way to ensure the indices are updated? What am I doing wrong? Why does the above query fail for large dataset?

Upvotes: 0

Views: 69

Answers (1)

Stefan Armbruster
Stefan Armbruster

Reputation: 39925

You can use the :schema command in Neo4j browser or schema in neo4j-shell. The output should indicate which indexes have been created and which of them are already online.

Additionally there's a programmatic way to wait until index population has finished.

Consider upgrading to 2.1.3, indexing has improved since 2.0.

Upvotes: 1

Related Questions