You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@systemml.apache.org by ac...@apache.org on 2016/09/24 05:13:25 UTC
incubator-systemml git commit: [SYSTEMML-956]Casting issue with
scalar assignment in Frame
Repository: incubator-systemml
Updated Branches:
refs/heads/master 410f4179c -> dae9ecaac
[SYSTEMML-956]Casting issue with scalar assignment in Frame
Closes 257
Project: http://git-wip-us.apache.org/repos/asf/incubator-systemml/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-systemml/commit/dae9ecaa
Tree: http://git-wip-us.apache.org/repos/asf/incubator-systemml/tree/dae9ecaa
Diff: http://git-wip-us.apache.org/repos/asf/incubator-systemml/diff/dae9ecaa
Branch: refs/heads/master
Commit: dae9ecaac0b2352b6ea871a2c702ba6dd2217b02
Parents: 410f417
Author: Arvind Surve <ac...@yahoo.com>
Authored: Fri Sep 23 22:12:31 2016 -0700
Committer: Arvind Surve <ac...@yahoo.com>
Committed: Fri Sep 23 22:12:31 2016 -0700
----------------------------------------------------------------------
.../cp/FrameIndexingCPInstruction.java | 3 +--
.../mlcontext/MLContextFrameTest.java | 25 ++++++++------------
.../apache/sysml/api/mlcontext/FrameA.csv.mtd | 2 +-
.../apache/sysml/api/mlcontext/FrameA.ijv.mtd | 2 +-
.../apache/sysml/api/mlcontext/FrameB.csv.mtd | 2 +-
.../apache/sysml/api/mlcontext/FrameB.ijv.mtd | 2 +-
6 files changed, 15 insertions(+), 21 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/dae9ecaa/src/main/java/org/apache/sysml/runtime/instructions/cp/FrameIndexingCPInstruction.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/sysml/runtime/instructions/cp/FrameIndexingCPInstruction.java b/src/main/java/org/apache/sysml/runtime/instructions/cp/FrameIndexingCPInstruction.java
index df37c6e..21b02c7 100644
--- a/src/main/java/org/apache/sysml/runtime/instructions/cp/FrameIndexingCPInstruction.java
+++ b/src/main/java/org/apache/sysml/runtime/instructions/cp/FrameIndexingCPInstruction.java
@@ -20,7 +20,6 @@
package org.apache.sysml.runtime.instructions.cp;
import org.apache.sysml.parser.Expression.DataType;
-import org.apache.sysml.parser.Expression.ValueType;
import org.apache.sysml.runtime.DMLRuntimeException;
import org.apache.sysml.runtime.controlprogram.context.ExecutionContext;
import org.apache.sysml.runtime.matrix.data.FrameBlock;
@@ -71,7 +70,7 @@ public final class FrameIndexingCPInstruction extends IndexingCPInstruction
else { //FRAME<-SCALAR
if(!ixrange.isScalar())
throw new DMLRuntimeException("Invalid index range of scalar leftindexing: "+ixrange.toString()+"." );
- ScalarObject scalar = ec.getScalarInput(input2.getName(), ValueType.DOUBLE, input2.isLiteral());
+ ScalarObject scalar = ec.getScalarInput(input2.getName(), input2.getValueType(), input2.isLiteral());
out = new FrameBlock(lin);
out.set((int)ixrange.rowStart, (int)ixrange.colStart, scalar.getStringValue());
}
http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/dae9ecaa/src/test/java/org/apache/sysml/test/integration/mlcontext/MLContextFrameTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/sysml/test/integration/mlcontext/MLContextFrameTest.java b/src/test/java/org/apache/sysml/test/integration/mlcontext/MLContextFrameTest.java
index df434f1..0c56419 100644
--- a/src/test/java/org/apache/sysml/test/integration/mlcontext/MLContextFrameTest.java
+++ b/src/test/java/org/apache/sysml/test/integration/mlcontext/MLContextFrameTest.java
@@ -42,6 +42,7 @@ import org.apache.sysml.api.mlcontext.FrameFormat;
import org.apache.sysml.api.mlcontext.FrameMetadata;
import org.apache.sysml.api.mlcontext.FrameSchema;
import org.apache.sysml.api.mlcontext.MLContext;
+import org.apache.sysml.api.mlcontext.MLContext.ExplainLevel;
import org.apache.sysml.api.mlcontext.MLResults;
import org.apache.sysml.api.mlcontext.MatrixFormat;
import org.apache.sysml.api.mlcontext.MatrixMetadata;
@@ -82,6 +83,7 @@ public class MLContextFrameTest extends AutomatedTestBase {
if (sc == null)
sc = new JavaSparkContext(conf);
ml = new MLContext(sc);
+ ml.setExplainLevel(ExplainLevel.RECOMPILE_HOPS);
}
@Override
@@ -293,7 +295,7 @@ public class MLContextFrameTest extends AutomatedTestBase {
}
if (script_type == SCRIPT_TYPE.DML)
- script = dml("A=read($A); B=read($B);A[2:3,2:4]=B;C=A[2:3,2:3]").in("$A", fileA, fmA)
+ script = dml("A=read($A); B=read($B);A[2:3,2:4]=B;C=A[2:3,2:3];A[1,1]=234").in("$A", fileA, fmA)
.in("$B", fileB, fmB).out("A").out("C");
else if (script_type == SCRIPT_TYPE.PYDML)
// DO NOT USE ; at the end of any statment, it throws NPE
@@ -309,20 +311,13 @@ public class MLContextFrameTest extends AutomatedTestBase {
//Validate output schema
List<ValueType> lschemaOutA = Arrays.asList(mlResults.getFrameObject("A").getSchema());
List<ValueType> lschemaOutC = Arrays.asList(mlResults.getFrameObject("C").getSchema());
- if(inputType != IO_TYPE.FILE) {
- Assert.assertEquals(ValueType.INT, lschemaOutA.get(0));
- Assert.assertEquals(ValueType.STRING, lschemaOutA.get(1));
- Assert.assertEquals(ValueType.DOUBLE, lschemaOutA.get(2));
- Assert.assertEquals(ValueType.BOOLEAN, lschemaOutA.get(3));
-
- Assert.assertEquals(ValueType.STRING, lschemaOutC.get(0));
- Assert.assertEquals(ValueType.DOUBLE, lschemaOutC.get(1));
- } else {
- for (int i=0; i < lschemaOutA.size(); i++)
- Assert.assertEquals(ValueType.STRING, lschemaOutA.get(i));
- for (int i=0; i < lschemaOutC.size(); i++)
- Assert.assertEquals(ValueType.STRING, lschemaOutC.get(i));
- }
+ Assert.assertEquals(ValueType.INT, lschemaOutA.get(0));
+ Assert.assertEquals(ValueType.STRING, lschemaOutA.get(1));
+ Assert.assertEquals(ValueType.DOUBLE, lschemaOutA.get(2));
+ Assert.assertEquals(ValueType.BOOLEAN, lschemaOutA.get(3));
+
+ Assert.assertEquals(ValueType.STRING, lschemaOutC.get(0));
+ Assert.assertEquals(ValueType.DOUBLE, lschemaOutC.get(1));
if (outputType == IO_TYPE.JAVA_RDD_STR_CSV) {
http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/dae9ecaa/src/test/scripts/org/apache/sysml/api/mlcontext/FrameA.csv.mtd
----------------------------------------------------------------------
diff --git a/src/test/scripts/org/apache/sysml/api/mlcontext/FrameA.csv.mtd b/src/test/scripts/org/apache/sysml/api/mlcontext/FrameA.csv.mtd
index 907e192..6fc4eb2 100644
--- a/src/test/scripts/org/apache/sysml/api/mlcontext/FrameA.csv.mtd
+++ b/src/test/scripts/org/apache/sysml/api/mlcontext/FrameA.csv.mtd
@@ -1,11 +1,11 @@
{
"data_type": "frame",
- "value_type": "string",
"rows": 3,
"cols": 4,
"nnz": -1,
"format": "csv",
"header": false,
+ "schema": "int,string,double,boolean",
"sep": ",",
"description": {
"author": "SystemML"
http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/dae9ecaa/src/test/scripts/org/apache/sysml/api/mlcontext/FrameA.ijv.mtd
----------------------------------------------------------------------
diff --git a/src/test/scripts/org/apache/sysml/api/mlcontext/FrameA.ijv.mtd b/src/test/scripts/org/apache/sysml/api/mlcontext/FrameA.ijv.mtd
index e977408..c5a938c 100644
--- a/src/test/scripts/org/apache/sysml/api/mlcontext/FrameA.ijv.mtd
+++ b/src/test/scripts/org/apache/sysml/api/mlcontext/FrameA.ijv.mtd
@@ -1,11 +1,11 @@
{
"data_type": "frame",
- "value_type": "string",
"rows": 3,
"cols": 4,
"nnz": -1,
"format": "text",
"header": false,
+ "schema": "int,string,double,boolean",
"sep": ",",
"description": {
"author": "SystemML"
http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/dae9ecaa/src/test/scripts/org/apache/sysml/api/mlcontext/FrameB.csv.mtd
----------------------------------------------------------------------
diff --git a/src/test/scripts/org/apache/sysml/api/mlcontext/FrameB.csv.mtd b/src/test/scripts/org/apache/sysml/api/mlcontext/FrameB.csv.mtd
index 729d5db..ad36069 100644
--- a/src/test/scripts/org/apache/sysml/api/mlcontext/FrameB.csv.mtd
+++ b/src/test/scripts/org/apache/sysml/api/mlcontext/FrameB.csv.mtd
@@ -1,11 +1,11 @@
{
"data_type": "frame",
- "value_type": "string",
"rows": 2,
"cols": 3,
"nnz": -1,
"format": "csv",
"header": false,
+ "schema": "string,double,boolean",
"sep": ",",
"description": {
"author": "SystemML"
http://git-wip-us.apache.org/repos/asf/incubator-systemml/blob/dae9ecaa/src/test/scripts/org/apache/sysml/api/mlcontext/FrameB.ijv.mtd
----------------------------------------------------------------------
diff --git a/src/test/scripts/org/apache/sysml/api/mlcontext/FrameB.ijv.mtd b/src/test/scripts/org/apache/sysml/api/mlcontext/FrameB.ijv.mtd
index d8dc5f2..8c8250a 100644
--- a/src/test/scripts/org/apache/sysml/api/mlcontext/FrameB.ijv.mtd
+++ b/src/test/scripts/org/apache/sysml/api/mlcontext/FrameB.ijv.mtd
@@ -1,11 +1,11 @@
{
"data_type": "frame",
- "value_type": "string",
"rows": 2,
"cols": 3,
"nnz": -1,
"format": "text",
"header": false,
+ "schema": "string,double,boolean",
"sep": ",",
"description": {
"author": "SystemML"