aboutsummaryrefslogtreecommitdiff
path: root/graphx
diff options
context:
space:
mode:
authorAnkur Dave <ankurdave@gmail.com>2014-01-13 21:00:25 -0800
committerAnkur Dave <ankurdave@gmail.com>2014-01-13 21:02:37 -0800
commitc6023bee60cee06b3dd31bb8253da6e07862c13d (patch)
tree16ffd66b3fc91a8022109f7f0cd00930dad0a28f /graphx
parent84d6af80211bbe15777a8d48eb37052b0b6631c4 (diff)
downloadspark-c6023bee60cee06b3dd31bb8253da6e07862c13d.tar.gz
spark-c6023bee60cee06b3dd31bb8253da6e07862c13d.tar.bz2
spark-c6023bee60cee06b3dd31bb8253da6e07862c13d.zip
Fix infinite loop in GraphGenerators.generateRandomEdges
The loop occurred when numEdges < numVertices. This commit fixes it by allowing generateRandomEdges to generate a multigraph.
Diffstat (limited to 'graphx')
-rw-r--r--graphx/src/main/scala/org/apache/spark/graphx/util/GraphGenerators.scala9
1 files changed, 1 insertions, 8 deletions
diff --git a/graphx/src/main/scala/org/apache/spark/graphx/util/GraphGenerators.scala b/graphx/src/main/scala/org/apache/spark/graphx/util/GraphGenerators.scala
index dbea233c34..57422ce3f1 100644
--- a/graphx/src/main/scala/org/apache/spark/graphx/util/GraphGenerators.scala
+++ b/graphx/src/main/scala/org/apache/spark/graphx/util/GraphGenerators.scala
@@ -44,14 +44,7 @@ object GraphGenerators {
def generateRandomEdges(src: Int, numEdges: Int, maxVertexID: Int): Array[Edge[Int]] = {
val rand = new Random()
- var dsts: Set[Int] = Set()
- while (dsts.size < numEdges) {
- val nextDst = rand.nextInt(maxVertexID)
- if (nextDst != src) {
- dsts += nextDst
- }
- }
- dsts.map(dst => Edge[Int](src, dst, 1)).toArray
+ Array.fill(maxVertexID) { Edge[Int](src, rand.nextInt(maxVertexID), 1) }
}
/**