Try to use GraphAlgoFactory#dijkstra instead.

2011/11/14 Joel Cordeiro <jkorde...@gmail.com>

> Hi there,
>
> I'm having performance issues with Neo4J while using GraphAlgoFactory to
> find a path between two nodes. I want to calculate the cost between the two
> nodes (each relation type has a different cost), with the maximum depth of
> 3 (paths with more length can be discarded). I'm using the findAllPaths
> method, since the findShorthestPath method takes into account the path
> length and not the cost associated to it. But this is not the ideal
> solution, because of the performance issues I'm having.
>
> I'm thinking about using something like the Dijkstra algorithm, but with a
> maximum depth of 3. I already took a look at the Neo4J source code and
> found the class *org.neo4j.graphalgo.impl.shortestpath.Dijkstra, *which I
> have tried to use with limitMaxRelationShipsToTraverse set to 3. Most of
> the times it doesn't found any path, and  throws the exception:
> java.lang.RuntimeException: Trying to decrease to a greater key
> at
>
> org.neo4j.graphalgo.impl.util.FibonacciHeap.decreaseKey(FibonacciHeap.java:318)
> at
>
> org.neo4j.graphalgo.impl.shortestpath.DijkstraPriorityQueueFibonacciImpl.decreaseValue(DijkstraPriorityQueueFibonacciImpl.java:103)
> at
>
> org.neo4j.graphalgo.impl.shortestpath.Dijkstra$DijstraIterator.next(Dijkstra.java:393)
> at
> org.neo4j.graphalgo.impl.shortestpath.Dijkstra.calculate(Dijkstra.java:516)
>
> Is this class appropriate for what I want to accomplish? I also would like
> to know if this is a good solution for the discribed problem, or if there
> is a better solution out there.
>
> Best regards,
> Joel Filipe Antunes Cordeiro
> jkorde...@gmail.com
> j...@student.dei.uc.pt
> _______________________________________________
> Neo4j mailing list
> User@lists.neo4j.org
> https://lists.neo4j.org/mailman/listinfo/user
>



-- 
Mattias Persson, [matt...@neotechnology.com]
Hacker, Neo Technology
www.neotechnology.com
_______________________________________________
Neo4j mailing list
User@lists.neo4j.org
https://lists.neo4j.org/mailman/listinfo/user

Reply via email to