FalkorDB / FalkorDB

A super fast Graph Database uses GraphBLAS under the hood for its sparse adjacency matrix graph representation. Our goal is to provide the best Knowledge Graph for LLM (GraphRAG).

Home Page:https://www.falkordb.com/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Graph restored from RDB is not shown on Graph.list

gkorland opened this issue · comments

> graph.list
(empty array)
> graph.query movies "return 1"
1) 1) "1"
2) 1) 1) (integer) 1
3) 1) "Cached execution: 0"
   2) "Query internal execution time: 0.122401 milliseconds"
> graph.list
(empty array)
de61dd7c-fd77-489c-b6e1-38f200cad460.falkordb.io:6379> graph.query movies "Match (a) return a limit 1"
1) 1) "a"
2) 1) 1) 1) 1) "id"
            2) (integer) 0
         2) 1) "labels"
            2) 1) "Person"
         3) 1) "properties"
            2) 1) 1) "name"
                  2) "Al Pacino"
               2) 1) "birthDate"
                  2) "1940-04-25"
3) 1) "Cached execution: 0"
   2) "Query internal execution time: 0.174388 milliseconds"

We can't support the RESTORE command with the replace flag.
This is mostly because of the support of graph virtual keys decoding. decoding virtual key will add to an existing key.
As a result when using RETORE replace the content of the restored key is add to the existing graph, leading to all sort of data inconsistency.

There are several options:

  1. Remove the support of graph virtual keys
  2. Replace RESTORE command with a dedicated new graph command, e.g. GRAPH.RESTORE