From a231c96cc9a64010db9440d634f1c711ee510c70 Mon Sep 17 00:00:00 2001 From: Bryan Cutler Date: Fri, 21 Aug 2015 13:33:06 -0700 Subject: [PATCH] [SPARK-8400] Added check for positive block size with a note that -1 auto-config is not supported --- .../scala/org/apache/spark/ml/recommendation/ALS.scala | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/mllib/src/main/scala/org/apache/spark/ml/recommendation/ALS.scala b/mllib/src/main/scala/org/apache/spark/ml/recommendation/ALS.scala index fc0f529713e3a..6ce528503d4f4 100644 --- a/mllib/src/main/scala/org/apache/spark/ml/recommendation/ALS.scala +++ b/mllib/src/main/scala/org/apache/spark/ml/recommendation/ALS.scala @@ -234,10 +234,16 @@ class ALS extends Estimator[ALSModel] with ALSParams { def setRank(value: Int): this.type = set(rank, value) /** @group setParam */ - def setNumUserBlocks(value: Int): this.type = set(numUserBlocks, value) + def setNumUserBlocks(value: Int): this.type = { + require(value > 0, "Number of blocks must be > 0, auto-configuring with -1 is not supported.") + set(numUserBlocks, value) + } /** @group setParam */ - def setNumItemBlocks(value: Int): this.type = set(numItemBlocks, value) + def setNumItemBlocks(value: Int): this.type = { + require(value > 0, "Number of blocks must be > 0, auto-configuring with -1 is not supported.") + set(numItemBlocks, value) + } /** @group setParam */ def setImplicitPrefs(value: Boolean): this.type = set(implicitPrefs, value)