Repository: spark
Updated Branches:
  refs/heads/master cd0ed31ea -> 40168dbe7


[ML][MLLIB] The require condition and message doesn't match in SparseMatrix.

## What changes were proposed in this pull request?
The require condition and message doesn't match, and the condition also should 
be optimized.
Small change.  Please kindly let me know if JIRA required.

## How was this patch tested?
No additional test required.

Author: Peng, Meng <[email protected]>

Closes #14824 from mpjlu/smallChangeForMatrixRequire.


Project: http://git-wip-us.apache.org/repos/asf/spark/repo
Commit: http://git-wip-us.apache.org/repos/asf/spark/commit/40168dbe
Tree: http://git-wip-us.apache.org/repos/asf/spark/tree/40168dbe
Diff: http://git-wip-us.apache.org/repos/asf/spark/diff/40168dbe

Branch: refs/heads/master
Commit: 40168dbe771ae662ed61851a1f3c677dd14fe344
Parents: cd0ed31
Author: Peng, Meng <[email protected]>
Authored: Sat Aug 27 08:46:01 2016 +0100
Committer: Sean Owen <[email protected]>
Committed: Sat Aug 27 08:46:01 2016 +0100

----------------------------------------------------------------------
 .../main/scala/org/apache/spark/ml/linalg/Matrices.scala | 11 +++++++----
 .../scala/org/apache/spark/mllib/linalg/Matrices.scala   | 11 +++++++----
 2 files changed, 14 insertions(+), 8 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/spark/blob/40168dbe/mllib-local/src/main/scala/org/apache/spark/ml/linalg/Matrices.scala
----------------------------------------------------------------------
diff --git 
a/mllib-local/src/main/scala/org/apache/spark/ml/linalg/Matrices.scala 
b/mllib-local/src/main/scala/org/apache/spark/ml/linalg/Matrices.scala
index 0ea687b..f1ecc65 100644
--- a/mllib-local/src/main/scala/org/apache/spark/ml/linalg/Matrices.scala
+++ b/mllib-local/src/main/scala/org/apache/spark/ml/linalg/Matrices.scala
@@ -454,10 +454,13 @@ class SparseMatrix @Since("2.0.0") (
 
   require(values.length == rowIndices.length, "The number of row indices and 
values don't match! " +
     s"values.length: ${values.length}, rowIndices.length: 
${rowIndices.length}")
-  // The Or statement is for the case when the matrix is transposed
-  require(colPtrs.length == numCols + 1 || colPtrs.length == numRows + 1, "The 
length of the " +
-    "column indices should be the number of columns + 1. Currently, 
colPointers.length: " +
-    s"${colPtrs.length}, numCols: $numCols")
+  if (isTransposed) {
+    require(colPtrs.length == numRows + 1,
+      s"Expecting ${numRows + 1} colPtrs when numRows = $numRows but got 
${colPtrs.length}")
+  } else {
+    require(colPtrs.length == numCols + 1,
+      s"Expecting ${numCols + 1} colPtrs when numCols = $numCols but got 
${colPtrs.length}")
+  }
   require(values.length == colPtrs.last, "The last value of colPtrs must equal 
the number of " +
     s"elements. values.length: ${values.length}, colPtrs.last: 
${colPtrs.last}")
 

http://git-wip-us.apache.org/repos/asf/spark/blob/40168dbe/mllib/src/main/scala/org/apache/spark/mllib/linalg/Matrices.scala
----------------------------------------------------------------------
diff --git a/mllib/src/main/scala/org/apache/spark/mllib/linalg/Matrices.scala 
b/mllib/src/main/scala/org/apache/spark/mllib/linalg/Matrices.scala
index e8f3438..4c39cf1 100644
--- a/mllib/src/main/scala/org/apache/spark/mllib/linalg/Matrices.scala
+++ b/mllib/src/main/scala/org/apache/spark/mllib/linalg/Matrices.scala
@@ -572,10 +572,13 @@ class SparseMatrix @Since("1.3.0") (
 
   require(values.length == rowIndices.length, "The number of row indices and 
values don't match! " +
     s"values.length: ${values.length}, rowIndices.length: 
${rowIndices.length}")
-  // The Or statement is for the case when the matrix is transposed
-  require(colPtrs.length == numCols + 1 || colPtrs.length == numRows + 1, "The 
length of the " +
-    "column indices should be the number of columns + 1. Currently, 
colPointers.length: " +
-    s"${colPtrs.length}, numCols: $numCols")
+  if (isTransposed) {
+    require(colPtrs.length == numRows + 1,
+      s"Expecting ${numRows + 1} colPtrs when numRows = $numRows but got 
${colPtrs.length}")
+  } else {
+    require(colPtrs.length == numCols + 1,
+      s"Expecting ${numCols + 1} colPtrs when numCols = $numCols but got 
${colPtrs.length}")
+  }
   require(values.length == colPtrs.last, "The last value of colPtrs must equal 
the number of " +
     s"elements. values.length: ${values.length}, colPtrs.last: 
${colPtrs.last}")
 


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to