fix: correct FalkorDB cypher.txt import guidance

The no-push 'graphify export falkordb' path advertised
'redis-cli -x GRAPH.QUERY graphify < cypher.txt', but FalkorDB rejects that
with 'query with more than one statement is not supported' - cypher.txt is a
multi-statement Neo4j script. The individual statements ARE valid OpenCypher
(verified by loading them one at a time), only bulk script import is unsupported.

Message + skill docs now say so and point to --push (the verified load path).
This commit is contained in:
Gal Shubeli
2026-06-08 12:59:26 +03:00
committed by Gal Shubeli
parent bf0ace1759
commit 12615226e4
28 changed files with 31 additions and 29 deletions
+4 -2
View File
@@ -3639,8 +3639,10 @@ def main() -> None:
else:
from graphify.export import to_cypher as _to_cypher
_to_cypher(G, str(out_dir / "cypher.txt"))
print(f"cypher.txt written - FalkorDB is OpenCypher-compatible; "
f"import with: redis-cli -x GRAPH.QUERY graphify < {out_dir}/cypher.txt")
print(f"cypher.txt written ({out_dir}/cypher.txt) - statements are OpenCypher. "
f"FalkorDB's GRAPH.QUERY runs one statement at a time (no bulk script "
f"import), so load a graph with: graphify export falkordb --push "
f"falkordb://localhost:6379")
elif cmd == "benchmark":
from graphify.benchmark import run_benchmark, print_benchmark
+1 -1
View File
@@ -30,7 +30,7 @@ Default URI is `bolt://localhost:7687`, default user is `neo4j`. Uses MERGE - sa
### Step 7a - FalkorDB export (only if --falkordb or --falkordb-push flag)
**If `--falkordb`** - generate a Cypher file (FalkorDB is OpenCypher-compatible, so the same `cypher.txt` imports cleanly):
**If `--falkordb`** - generate a Cypher file. The statements are OpenCypher, but FalkorDB's `GRAPH.QUERY` runs one statement at a time (no bulk script import like Neo4j's `cypher-shell`), so prefer `--falkordb-push` to load a graph. Use this only when you want the portable `cypher.txt` artifact:
```bash
graphify export falkordb
+1 -1
View File
@@ -30,7 +30,7 @@ Default URI is `bolt://localhost:7687`, default user is `neo4j`. Uses MERGE - sa
### Step 7a - FalkorDB export (only if --falkordb or --falkordb-push flag)
**If `--falkordb`** - generate a Cypher file (FalkorDB is OpenCypher-compatible, so the same `cypher.txt` imports cleanly):
**If `--falkordb`** - generate a Cypher file. The statements are OpenCypher, but FalkorDB's `GRAPH.QUERY` runs one statement at a time (no bulk script import like Neo4j's `cypher-shell`), so prefer `--falkordb-push` to load a graph. Use this only when you want the portable `cypher.txt` artifact:
```bash
graphify export falkordb
+1 -1
View File
@@ -30,7 +30,7 @@ Default URI is `bolt://localhost:7687`, default user is `neo4j`. Uses MERGE - sa
### Step 7a - FalkorDB export (only if --falkordb or --falkordb-push flag)
**If `--falkordb`** - generate a Cypher file (FalkorDB is OpenCypher-compatible, so the same `cypher.txt` imports cleanly):
**If `--falkordb`** - generate a Cypher file. The statements are OpenCypher, but FalkorDB's `GRAPH.QUERY` runs one statement at a time (no bulk script import like Neo4j's `cypher-shell`), so prefer `--falkordb-push` to load a graph. Use this only when you want the portable `cypher.txt` artifact:
```bash
graphify export falkordb
+1 -1
View File
@@ -30,7 +30,7 @@ Default URI is `bolt://localhost:7687`, default user is `neo4j`. Uses MERGE - sa
### Step 7a - FalkorDB export (only if --falkordb or --falkordb-push flag)
**If `--falkordb`** - generate a Cypher file (FalkorDB is OpenCypher-compatible, so the same `cypher.txt` imports cleanly):
**If `--falkordb`** - generate a Cypher file. The statements are OpenCypher, but FalkorDB's `GRAPH.QUERY` runs one statement at a time (no bulk script import like Neo4j's `cypher-shell`), so prefer `--falkordb-push` to load a graph. Use this only when you want the portable `cypher.txt` artifact:
```bash
graphify export falkordb
@@ -30,7 +30,7 @@ Default URI is `bolt://localhost:7687`, default user is `neo4j`. Uses MERGE - sa
### Step 7a - FalkorDB export (only if --falkordb or --falkordb-push flag)
**If `--falkordb`** - generate a Cypher file (FalkorDB is OpenCypher-compatible, so the same `cypher.txt` imports cleanly):
**If `--falkordb`** - generate a Cypher file. The statements are OpenCypher, but FalkorDB's `GRAPH.QUERY` runs one statement at a time (no bulk script import like Neo4j's `cypher-shell`), so prefer `--falkordb-push` to load a graph. Use this only when you want the portable `cypher.txt` artifact:
```bash
graphify export falkordb
+1 -1
View File
@@ -30,7 +30,7 @@ Default URI is `bolt://localhost:7687`, default user is `neo4j`. Uses MERGE - sa
### Step 7a - FalkorDB export (only if --falkordb or --falkordb-push flag)
**If `--falkordb`** - generate a Cypher file (FalkorDB is OpenCypher-compatible, so the same `cypher.txt` imports cleanly):
**If `--falkordb`** - generate a Cypher file. The statements are OpenCypher, but FalkorDB's `GRAPH.QUERY` runs one statement at a time (no bulk script import like Neo4j's `cypher-shell`), so prefer `--falkordb-push` to load a graph. Use this only when you want the portable `cypher.txt` artifact:
```bash
graphify export falkordb
+1 -1
View File
@@ -30,7 +30,7 @@ Default URI is `bolt://localhost:7687`, default user is `neo4j`. Uses MERGE - sa
### Step 7a - FalkorDB export (only if --falkordb or --falkordb-push flag)
**If `--falkordb`** - generate a Cypher file (FalkorDB is OpenCypher-compatible, so the same `cypher.txt` imports cleanly):
**If `--falkordb`** - generate a Cypher file. The statements are OpenCypher, but FalkorDB's `GRAPH.QUERY` runs one statement at a time (no bulk script import like Neo4j's `cypher-shell`), so prefer `--falkordb-push` to load a graph. Use this only when you want the portable `cypher.txt` artifact:
```bash
graphify export falkordb
+1 -1
View File
@@ -30,7 +30,7 @@ Default URI is `bolt://localhost:7687`, default user is `neo4j`. Uses MERGE - sa
### Step 7a - FalkorDB export (only if --falkordb or --falkordb-push flag)
**If `--falkordb`** - generate a Cypher file (FalkorDB is OpenCypher-compatible, so the same `cypher.txt` imports cleanly):
**If `--falkordb`** - generate a Cypher file. The statements are OpenCypher, but FalkorDB's `GRAPH.QUERY` runs one statement at a time (no bulk script import like Neo4j's `cypher-shell`), so prefer `--falkordb-push` to load a graph. Use this only when you want the portable `cypher.txt` artifact:
```bash
graphify export falkordb
@@ -30,7 +30,7 @@ Default URI is `bolt://localhost:7687`, default user is `neo4j`. Uses MERGE - sa
### Step 7a - FalkorDB export (only if --falkordb or --falkordb-push flag)
**If `--falkordb`** - generate a Cypher file (FalkorDB is OpenCypher-compatible, so the same `cypher.txt` imports cleanly):
**If `--falkordb`** - generate a Cypher file. The statements are OpenCypher, but FalkorDB's `GRAPH.QUERY` runs one statement at a time (no bulk script import like Neo4j's `cypher-shell`), so prefer `--falkordb-push` to load a graph. Use this only when you want the portable `cypher.txt` artifact:
```bash
graphify export falkordb
+1 -1
View File
@@ -30,7 +30,7 @@ Default URI is `bolt://localhost:7687`, default user is `neo4j`. Uses MERGE - sa
### Step 7a - FalkorDB export (only if --falkordb or --falkordb-push flag)
**If `--falkordb`** - generate a Cypher file (FalkorDB is OpenCypher-compatible, so the same `cypher.txt` imports cleanly):
**If `--falkordb`** - generate a Cypher file. The statements are OpenCypher, but FalkorDB's `GRAPH.QUERY` runs one statement at a time (no bulk script import like Neo4j's `cypher-shell`), so prefer `--falkordb-push` to load a graph. Use this only when you want the portable `cypher.txt` artifact:
```bash
graphify export falkordb
+1 -1
View File
@@ -30,7 +30,7 @@ Default URI is `bolt://localhost:7687`, default user is `neo4j`. Uses MERGE - sa
### Step 7a - FalkorDB export (only if --falkordb or --falkordb-push flag)
**If `--falkordb`** - generate a Cypher file (FalkorDB is OpenCypher-compatible, so the same `cypher.txt` imports cleanly):
**If `--falkordb`** - generate a Cypher file. The statements are OpenCypher, but FalkorDB's `GRAPH.QUERY` runs one statement at a time (no bulk script import like Neo4j's `cypher-shell`), so prefer `--falkordb-push` to load a graph. Use this only when you want the portable `cypher.txt` artifact:
```bash
graphify export falkordb
+1 -1
View File
@@ -30,7 +30,7 @@ Default URI is `bolt://localhost:7687`, default user is `neo4j`. Uses MERGE - sa
### Step 7a - FalkorDB export (only if --falkordb or --falkordb-push flag)
**If `--falkordb`** - generate a Cypher file (FalkorDB is OpenCypher-compatible, so the same `cypher.txt` imports cleanly):
**If `--falkordb`** - generate a Cypher file. The statements are OpenCypher, but FalkorDB's `GRAPH.QUERY` runs one statement at a time (no bulk script import like Neo4j's `cypher-shell`), so prefer `--falkordb-push` to load a graph. Use this only when you want the portable `cypher.txt` artifact:
```bash
graphify export falkordb
@@ -30,7 +30,7 @@ Default URI is `bolt://localhost:7687`, default user is `neo4j`. Uses MERGE - sa
### Step 7a - FalkorDB export (only if --falkordb or --falkordb-push flag)
**If `--falkordb`** - generate a Cypher file (FalkorDB is OpenCypher-compatible, so the same `cypher.txt` imports cleanly):
**If `--falkordb`** - generate a Cypher file. The statements are OpenCypher, but FalkorDB's `GRAPH.QUERY` runs one statement at a time (no bulk script import like Neo4j's `cypher-shell`), so prefer `--falkordb-push` to load a graph. Use this only when you want the portable `cypher.txt` artifact:
```bash
graphify export falkordb
@@ -30,7 +30,7 @@ Default URI is `bolt://localhost:7687`, default user is `neo4j`. Uses MERGE - sa
### Step 7a - FalkorDB export (only if --falkordb or --falkordb-push flag)
**If `--falkordb`** - generate a Cypher file (FalkorDB is OpenCypher-compatible, so the same `cypher.txt` imports cleanly):
**If `--falkordb`** - generate a Cypher file. The statements are OpenCypher, but FalkorDB's `GRAPH.QUERY` runs one statement at a time (no bulk script import like Neo4j's `cypher-shell`), so prefer `--falkordb-push` to load a graph. Use this only when you want the portable `cypher.txt` artifact:
```bash
graphify export falkordb
@@ -30,7 +30,7 @@ Default URI is `bolt://localhost:7687`, default user is `neo4j`. Uses MERGE - sa
### Step 7a - FalkorDB export (only if --falkordb or --falkordb-push flag)
**If `--falkordb`** - generate a Cypher file (FalkorDB is OpenCypher-compatible, so the same `cypher.txt` imports cleanly):
**If `--falkordb`** - generate a Cypher file. The statements are OpenCypher, but FalkorDB's `GRAPH.QUERY` runs one statement at a time (no bulk script import like Neo4j's `cypher-shell`), so prefer `--falkordb-push` to load a graph. Use this only when you want the portable `cypher.txt` artifact:
```bash
graphify export falkordb
@@ -30,7 +30,7 @@ Default URI is `bolt://localhost:7687`, default user is `neo4j`. Uses MERGE - sa
### Step 7a - FalkorDB export (only if --falkordb or --falkordb-push flag)
**If `--falkordb`** - generate a Cypher file (FalkorDB is OpenCypher-compatible, so the same `cypher.txt` imports cleanly):
**If `--falkordb`** - generate a Cypher file. The statements are OpenCypher, but FalkorDB's `GRAPH.QUERY` runs one statement at a time (no bulk script import like Neo4j's `cypher-shell`), so prefer `--falkordb-push` to load a graph. Use this only when you want the portable `cypher.txt` artifact:
```bash
graphify export falkordb
@@ -30,7 +30,7 @@ Default URI is `bolt://localhost:7687`, default user is `neo4j`. Uses MERGE - sa
### Step 7a - FalkorDB export (only if --falkordb or --falkordb-push flag)
**If `--falkordb`** - generate a Cypher file (FalkorDB is OpenCypher-compatible, so the same `cypher.txt` imports cleanly):
**If `--falkordb`** - generate a Cypher file. The statements are OpenCypher, but FalkorDB's `GRAPH.QUERY` runs one statement at a time (no bulk script import like Neo4j's `cypher-shell`), so prefer `--falkordb-push` to load a graph. Use this only when you want the portable `cypher.txt` artifact:
```bash
graphify export falkordb
@@ -30,7 +30,7 @@ Default URI is `bolt://localhost:7687`, default user is `neo4j`. Uses MERGE - sa
### Step 7a - FalkorDB export (only if --falkordb or --falkordb-push flag)
**If `--falkordb`** - generate a Cypher file (FalkorDB is OpenCypher-compatible, so the same `cypher.txt` imports cleanly):
**If `--falkordb`** - generate a Cypher file. The statements are OpenCypher, but FalkorDB's `GRAPH.QUERY` runs one statement at a time (no bulk script import like Neo4j's `cypher-shell`), so prefer `--falkordb-push` to load a graph. Use this only when you want the portable `cypher.txt` artifact:
```bash
graphify export falkordb
@@ -30,7 +30,7 @@ Default URI is `bolt://localhost:7687`, default user is `neo4j`. Uses MERGE - sa
### Step 7a - FalkorDB export (only if --falkordb or --falkordb-push flag)
**If `--falkordb`** - generate a Cypher file (FalkorDB is OpenCypher-compatible, so the same `cypher.txt` imports cleanly):
**If `--falkordb`** - generate a Cypher file. The statements are OpenCypher, but FalkorDB's `GRAPH.QUERY` runs one statement at a time (no bulk script import like Neo4j's `cypher-shell`), so prefer `--falkordb-push` to load a graph. Use this only when you want the portable `cypher.txt` artifact:
```bash
graphify export falkordb
@@ -30,7 +30,7 @@ Default URI is `bolt://localhost:7687`, default user is `neo4j`. Uses MERGE - sa
### Step 7a - FalkorDB export (only if --falkordb or --falkordb-push flag)
**If `--falkordb`** - generate a Cypher file (FalkorDB is OpenCypher-compatible, so the same `cypher.txt` imports cleanly):
**If `--falkordb`** - generate a Cypher file. The statements are OpenCypher, but FalkorDB's `GRAPH.QUERY` runs one statement at a time (no bulk script import like Neo4j's `cypher-shell`), so prefer `--falkordb-push` to load a graph. Use this only when you want the portable `cypher.txt` artifact:
```bash
graphify export falkordb
@@ -30,7 +30,7 @@ Default URI is `bolt://localhost:7687`, default user is `neo4j`. Uses MERGE - sa
### Step 7a - FalkorDB export (only if --falkordb or --falkordb-push flag)
**If `--falkordb`** - generate a Cypher file (FalkorDB is OpenCypher-compatible, so the same `cypher.txt` imports cleanly):
**If `--falkordb`** - generate a Cypher file. The statements are OpenCypher, but FalkorDB's `GRAPH.QUERY` runs one statement at a time (no bulk script import like Neo4j's `cypher-shell`), so prefer `--falkordb-push` to load a graph. Use this only when you want the portable `cypher.txt` artifact:
```bash
graphify export falkordb
@@ -30,7 +30,7 @@ Default URI is `bolt://localhost:7687`, default user is `neo4j`. Uses MERGE - sa
### Step 7a - FalkorDB export (only if --falkordb or --falkordb-push flag)
**If `--falkordb`** - generate a Cypher file (FalkorDB is OpenCypher-compatible, so the same `cypher.txt` imports cleanly):
**If `--falkordb`** - generate a Cypher file. The statements are OpenCypher, but FalkorDB's `GRAPH.QUERY` runs one statement at a time (no bulk script import like Neo4j's `cypher-shell`), so prefer `--falkordb-push` to load a graph. Use this only when you want the portable `cypher.txt` artifact:
```bash
graphify export falkordb
@@ -30,7 +30,7 @@ Default URI is `bolt://localhost:7687`, default user is `neo4j`. Uses MERGE - sa
### Step 7a - FalkorDB export (only if --falkordb or --falkordb-push flag)
**If `--falkordb`** - generate a Cypher file (FalkorDB is OpenCypher-compatible, so the same `cypher.txt` imports cleanly):
**If `--falkordb`** - generate a Cypher file. The statements are OpenCypher, but FalkorDB's `GRAPH.QUERY` runs one statement at a time (no bulk script import like Neo4j's `cypher-shell`), so prefer `--falkordb-push` to load a graph. Use this only when you want the portable `cypher.txt` artifact:
```bash
graphify export falkordb
@@ -30,7 +30,7 @@ Default URI is `bolt://localhost:7687`, default user is `neo4j`. Uses MERGE - sa
### Step 7a - FalkorDB export (only if --falkordb or --falkordb-push flag)
**If `--falkordb`** - generate a Cypher file (FalkorDB is OpenCypher-compatible, so the same `cypher.txt` imports cleanly):
**If `--falkordb`** - generate a Cypher file. The statements are OpenCypher, but FalkorDB's `GRAPH.QUERY` runs one statement at a time (no bulk script import like Neo4j's `cypher-shell`), so prefer `--falkordb-push` to load a graph. Use this only when you want the portable `cypher.txt` artifact:
```bash
graphify export falkordb
@@ -30,7 +30,7 @@ Default URI is `bolt://localhost:7687`, default user is `neo4j`. Uses MERGE - sa
### Step 7a - FalkorDB export (only if --falkordb or --falkordb-push flag)
**If `--falkordb`** - generate a Cypher file (FalkorDB is OpenCypher-compatible, so the same `cypher.txt` imports cleanly):
**If `--falkordb`** - generate a Cypher file. The statements are OpenCypher, but FalkorDB's `GRAPH.QUERY` runs one statement at a time (no bulk script import like Neo4j's `cypher-shell`), so prefer `--falkordb-push` to load a graph. Use this only when you want the portable `cypher.txt` artifact:
```bash
graphify export falkordb
@@ -30,7 +30,7 @@ Default URI is `bolt://localhost:7687`, default user is `neo4j`. Uses MERGE - sa
### Step 7a - FalkorDB export (only if --falkordb or --falkordb-push flag)
**If `--falkordb`** - generate a Cypher file (FalkorDB is OpenCypher-compatible, so the same `cypher.txt` imports cleanly):
**If `--falkordb`** - generate a Cypher file. The statements are OpenCypher, but FalkorDB's `GRAPH.QUERY` runs one statement at a time (no bulk script import like Neo4j's `cypher-shell`), so prefer `--falkordb-push` to load a graph. Use this only when you want the portable `cypher.txt` artifact:
```bash
graphify export falkordb
@@ -30,7 +30,7 @@ Default URI is `bolt://localhost:7687`, default user is `neo4j`. Uses MERGE - sa
### Step 7a - FalkorDB export (only if --falkordb or --falkordb-push flag)
**If `--falkordb`** - generate a Cypher file (FalkorDB is OpenCypher-compatible, so the same `cypher.txt` imports cleanly):
**If `--falkordb`** - generate a Cypher file. The statements are OpenCypher, but FalkorDB's `GRAPH.QUERY` runs one statement at a time (no bulk script import like Neo4j's `cypher-shell`), so prefer `--falkordb-push` to load a graph. Use this only when you want the portable `cypher.txt` artifact:
```bash
graphify export falkordb