From e007688888db7b5bf6bc9ddd9a0e5db278f538ba Mon Sep 17 00:00:00 2001 From: Yanbo Liang Date: Tue, 22 Sep 2015 14:27:47 +0800 Subject: [PATCH 1/2] ML Param validate should print better error information --- mllib/src/main/scala/org/apache/spark/ml/param/params.scala | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/mllib/src/main/scala/org/apache/spark/ml/param/params.scala b/mllib/src/main/scala/org/apache/spark/ml/param/params.scala index de32b7218c277..5c7db18af62e0 100644 --- a/mllib/src/main/scala/org/apache/spark/ml/param/params.scala +++ b/mllib/src/main/scala/org/apache/spark/ml/param/params.scala @@ -65,7 +65,11 @@ class Param[T](val parent: String, val name: String, val doc: String, val isVali */ private[param] def validate(value: T): Unit = { if (!isValid(value)) { - throw new IllegalArgumentException(s"$parent parameter $name given invalid value $value.") + val valueToString = value match { + case v: Array[_] => v.mkString("[", ",", "]") + case _ => value.toString + } + throw new IllegalArgumentException(s"$parent parameter $name given invalid value $valueToString.") } } From d937e87299c76b5c58599cfc85f56c016a32ea1e Mon Sep 17 00:00:00 2001 From: Yanbo Liang Date: Tue, 22 Sep 2015 14:33:12 +0800 Subject: [PATCH 2/2] fix typos --- mllib/src/main/scala/org/apache/spark/ml/param/params.scala | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/mllib/src/main/scala/org/apache/spark/ml/param/params.scala b/mllib/src/main/scala/org/apache/spark/ml/param/params.scala index 5c7db18af62e0..48f6269e57e98 100644 --- a/mllib/src/main/scala/org/apache/spark/ml/param/params.scala +++ b/mllib/src/main/scala/org/apache/spark/ml/param/params.scala @@ -69,7 +69,8 @@ class Param[T](val parent: String, val name: String, val doc: String, val isVali case v: Array[_] => v.mkString("[", ",", "]") case _ => value.toString } - throw new IllegalArgumentException(s"$parent parameter $name given invalid value $valueToString.") + throw new IllegalArgumentException( + s"$parent parameter $name given invalid value $valueToString.") } }