How do I run Consistency Check Manually?

performance
operations
backup
knowledge-base
consistency

(David Gordon) #1

If you skip the Consistency Check part of neo4j-backup, or you want to check that all is well with a data store, you can run the tool against an offline store.

$ java -cp 'lib/*:system/lib/*' org.neo4j.consistency.ConsistencyCheckTool /tmp/graph.db

On a Windows implementation the syntax would be similar to

java -cp "lib/*;system/lib/*" org.neo4j.consistency.ConsistencyCheckTool c:\tmp\graph.db

In each of the instance above, replace /tmp/graph.db or c:\tmp\graph.db with the actual path of the Neo database.

To tune the check to skip Indexes (the most impactful modification), simply add the following line to conf/neo4j.properties (2.x) or conf/neo4j.conf(3.x), and pass it into the tool on the command line:

consistency_check_indexes=false

Now run the command with the configuration file passed along:

$ java -cp 'lib/*:system/lib/*' org.neo4j.consistency.ConsistencyCheckTool -config conf/neo4j.properties /tmp/foo

There are additional configuration options. They are listed in their 2.x name / 3.x name

consistency_check_property_owners / tools.consistency_checker.check_property_owners:: Perform optional additional checking on property ownership.
This can detect a theoretical inconsistency where a property could be owned by multiple entities.
However, the check is very expensive in time and memory, so it is skipped by default.

consistency_check_label_scan_store / tools.consistency_checker.check_label_scan_store:: Perform checks on the label scan store.
Checking this store is more expensive than checking the native stores, so it may be useful to turn off this check for very large databases.

consistency_check_indexes / tools.consistency_checker.check_indexes:: Perform checks on indexes.
Checking indexes is more expensive than checking the native stores, so it may be useful to turn off this check for very large databases.

consistency_check_execution_order:: Execution order of store cross-checks to be used when running consistency check

consistency_check_report_file: File name for inconsistencies log file. If not specified, logs to a file in the store directory.

See also the Manual Entry on Backup and Consistency Checking