Ottengo un timeout durante l'interrogazione per profondità 2 utilizzando session.load()
. Sto lavorando con Neo4j OGM 1.1.3 (Tentativo di migrare da Spring Data Neo4j 3.4) . Cercando di caricare un oggetto NodeCarica un oggetto in Neo4j OGM 1.1.3 ogm profondità di 2 molto lento
class Node {
Long id;
String name;
@Relationship(type="NodeToCategory")
Category category;
@Realtionship(type="NodeToChildNode")
Node node
}
class Category {
Long id;
String name;
String color;
Date createdAt;
}
La categoria che è collegato al mio nodo è molto popolare (20.000 nodi hanno la stessa categoria) e quando uso corro session.load(Node.class, 1L, 2)
i tempi di richiesta fuori. Può essere che stia cercando di interrogare per tutte le relazioni della categoria (anche se la mia categoria di modello in Java ignora questa relazione)?
quello che mi aspetterei che si carichi è semplicemente:.
|My Node
| |category
| |child node
| | | category
| | | child node
Che non è una richiesta molto pesante e non dovrebbe timeout (a meno che non si sta caricando i rapporti non necessari
C'è un modo per dire un solo carico di certe relazioni profondamente?
Per esempio vorrei caricare 10 livelli di un albero ma altre informazioni sul mio albero (come la categoria, ruolo che non sono realmente i nodi dell'albero ma semplicemente rappresentano più informazioni) Vorrei voglio solo t o caricali senza le loro relazioni. Quindi vorrei caricare tutti gli oggetti Node e caricare solo altri oggetti lungo la strada senza le loro relazioni.
UPDATE
trovato due questioni aperte che sembrano affrontare questi problemi:
https://github.com/neo4j/neo4j-ogm/issues/55
https://github.com/neo4j/neo4j-ogm/issues/70