Which version of Neo4j are you using? You use a Set which elminates duplicates. You probably have duplicate neighbourId's that are only 100 distinct ones.
And you close the transaction twice. It is an auto-closable resource so you can remove your manual tx.close() line. Cheers, Michael ---- (michael)-[:SUPPORTS]->(YOU)-[:USE]->(Neo4j) Learn Online, Offline or Read a Book (in Deutsch) We're trading T-shirts for cool Graph Models Am 13.03.2014 um 11:21 schrieb Sotiris Beis <[email protected]>: > I have the following case study. I want to get the neighbors of the certain > node. My function is this one: > public Set<Integer> getNeighborsIds(int nodeId) { > Set<Integer> neighbours = new HashSet<Integer>(); > try (Transaction tx = neo4jGraph.beginTx()) { > Node n = nodeIndex.get("nodeId", nodeId).getSingle(); > for(Relationship relationship : > n.getRelationships(Direction.OUTGOING)) { > Node neighbour = relationship.getEndNode(); > String neighbourId = > (String)neighbour.getProperty("nodeId"); > neighbours.add(Integer.valueOf(neighbourId)); > } > tx.success(); > tx.close(); > } > return neighbours; > } > > I know that this node has 255 neighbors but this function return only 100 > nodes. When I put this line > System.out.println(IteratorUtil.count(n.getRelationships(Direction.OUTGOING))); > > > 4 and 5 line the function returns 255 neighbors. The most strange is that > the above function prints out the value 100. Is this a bug or can anyone > explain this to me? > > Thanks, > Sotiris > > -- > You received this message because you are subscribed to the Google Groups > "Neo4j" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > For more options, visit https://groups.google.com/d/optout. -- You received this message because you are subscribed to the Google Groups "Neo4j" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
