You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@zeppelin.apache.org by fe...@apache.org on 2018/03/19 17:24:49 UTC

zeppelin git commit: ZEPPELIN-3310. Scio interpreter layout is broken

Repository: zeppelin
Updated Branches:
  refs/heads/master 7dc4dbea5 -> 2a5960bd5


ZEPPELIN-3310. Scio interpreter layout is broken

### What is this PR for?
Fix scio interpreter layout. The current scio interpreter layout is broken because there is not a newline between %table part and %text part in this interpreter output.

### What type of PR is it?
[Bug Fix]

### What is the Jira issue?
[ZEPPELIN-3310](https://issues.apache.org/jira/browse/ZEPPELIN-3310)

### How should this be tested?
* CI should pass
* View the snapshot

### Screenshots (if appropriate)
[Before applied this change]
 ![Interceptors Diagram](https://raw.githubusercontent.com/iijima-satoshi/okhttp/master/scio_interpreter_layout_is_broken.png)

[Ater applied this change]
 ![Interceptors Diagram](https://raw.githubusercontent.com/iijima-satoshi/okhttp/master/screenshot_applied_patch.png)

### Questions:
* Does the licenses files need update? No
* Is there breaking changes for older versions? No
* Does this needs documentation? No

Author: iijima_satoshi <ii...@cyberagent.co.jp>

Closes #2854 from iijima-satoshi/fix-scio-interpreter-layout and squashes the following commits:

2b4fd68 [iijima_satoshi] ZEPPELIN-3310. Scio interpreter layout is broken


Project: http://git-wip-us.apache.org/repos/asf/zeppelin/repo
Commit: http://git-wip-us.apache.org/repos/asf/zeppelin/commit/2a5960bd
Tree: http://git-wip-us.apache.org/repos/asf/zeppelin/tree/2a5960bd
Diff: http://git-wip-us.apache.org/repos/asf/zeppelin/diff/2a5960bd

Branch: refs/heads/master
Commit: 2a5960bd50ea29ce7b925a6ac3288c0fd5ae7ddd
Parents: 7dc4dbe
Author: iijima_satoshi <ii...@cyberagent.co.jp>
Authored: Fri Mar 9 19:15:24 2018 +0900
Committer: Felix Cheung <fe...@apache.org>
Committed: Mon Mar 19 10:24:44 2018 -0700

----------------------------------------------------------------------
 .../apache/zeppelin/scio/DisplayHelpers.scala   |   2 +-
 .../zeppelin/scio/DisplayHelpersTest.scala      | 103 +++++++++----------
 2 files changed, 47 insertions(+), 58 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/zeppelin/blob/2a5960bd/scio/src/main/scala/org/apache/zeppelin/scio/DisplayHelpers.scala
----------------------------------------------------------------------
diff --git a/scio/src/main/scala/org/apache/zeppelin/scio/DisplayHelpers.scala b/scio/src/main/scala/org/apache/zeppelin/scio/DisplayHelpers.scala
index 8dee3ab..bfb4f9c 100644
--- a/scio/src/main/scala/org/apache/zeppelin/scio/DisplayHelpers.scala
+++ b/scio/src/main/scala/org/apache/zeppelin/scio/DisplayHelpers.scala
@@ -35,7 +35,7 @@ private[scio] object DisplayHelpers {
   private[scio] val tab = "\t"
   private[scio] val newline = "\n"
   private[scio] val table = "%table"
-  private[scio] val endTable = "%text"
+  private[scio] val endTable = "\n%text"
   private[scio] val rowLimitReachedMsg =
     s"$newline<font color=red>Results are limited to " + maxResults + s" rows.</font>$newline"
   private[scio] val bQSchemaIncomplete =

http://git-wip-us.apache.org/repos/asf/zeppelin/blob/2a5960bd/scio/src/test/scala/org/apache/zeppelin/scio/DisplayHelpersTest.scala
----------------------------------------------------------------------
diff --git a/scio/src/test/scala/org/apache/zeppelin/scio/DisplayHelpersTest.scala b/scio/src/test/scala/org/apache/zeppelin/scio/DisplayHelpersTest.scala
index 6dd05ab..a197faf 100644
--- a/scio/src/test/scala/org/apache/zeppelin/scio/DisplayHelpersTest.scala
+++ b/scio/src/test/scala/org/apache/zeppelin/scio/DisplayHelpersTest.scala
@@ -48,7 +48,8 @@ class DisplayHelpersTest extends FlatSpec with Matchers {
   // -----------------------------------------------------------------------------------------------
 
   private val anyValHeader = s"$table value"
-  private val endTable = DisplayHelpers.endTable
+  private val endTableFooter = DisplayHelpers.endTable.split("\\n").last
+  private val endTableSeq = Seq("", endTableFooter)
 
   "DisplayHelpers" should "support Integer SCollection via AnyVal" in {
     import org.apache.zeppelin.scio.DisplaySCollectionImplicits.ZeppelinSCollection
@@ -60,10 +61,9 @@ class DisplayHelpersTest extends FlatSpec with Matchers {
     o should contain theSameElementsAs Seq(anyValHeader,
                                            "1",
                                            "2",
-                                           "3",
-                                           endTable)
+                                           "3") ++ endTableSeq
     o.head should be(anyValHeader)
-    o.last should be(endTable)
+    o.last should be(endTableFooter)
   }
 
   it should "support Long SCollection via AnyVal" in {
@@ -76,10 +76,9 @@ class DisplayHelpersTest extends FlatSpec with Matchers {
     o should contain theSameElementsAs Seq(anyValHeader,
                                            "1",
                                            "2",
-                                           "3",
-                                           endTable)
+                                           "3") ++ endTableSeq
     o.head should be(anyValHeader)
-    o.last should be(endTable)
+    o.last should be(endTableFooter)
   }
 
   it should "support Double SCollection via AnyVal" in {
@@ -92,10 +91,9 @@ class DisplayHelpersTest extends FlatSpec with Matchers {
     o should contain theSameElementsAs Seq(anyValHeader,
                                            "1.0",
                                            "2.0",
-                                           "3.0",
-                                           endTable)
+                                           "3.0") ++ endTableSeq
     o.head should be(anyValHeader)
-    o.last should be(endTable)
+    o.last should be(endTableFooter)
   }
 
   it should "support Float SCollection via AnyVal" in {
@@ -108,10 +106,9 @@ class DisplayHelpersTest extends FlatSpec with Matchers {
     o should contain theSameElementsAs Seq(anyValHeader,
                                            "1.0",
                                            "2.0",
-                                           "3.0",
-                                           endTable)
+                                           "3.0") ++ endTableSeq
     o.head should be(anyValHeader)
-    o.last should be(endTable)
+    o.last should be(endTableFooter)
   }
 
   it should "support Short SCollection via AnyVal" in {
@@ -124,10 +121,9 @@ class DisplayHelpersTest extends FlatSpec with Matchers {
     o should contain theSameElementsAs Seq(anyValHeader,
                                            "1",
                                            "2",
-                                           "3",
-                                           endTable)
+                                           "3") ++ endTableSeq
     o.head should be(anyValHeader)
-    o.last should be(endTable)
+    o.last should be(endTableFooter)
   }
 
   it should "support Byte SCollection via AnyVal" in {
@@ -140,10 +136,9 @@ class DisplayHelpersTest extends FlatSpec with Matchers {
     o should contain theSameElementsAs Seq(anyValHeader,
                                            "1",
                                            "2",
-                                           "3",
-                                           endTable)
+                                           "3") ++ endTableSeq
     o.head should be(anyValHeader)
-    o.last should be(endTable)
+    o.last should be(endTableFooter)
   }
 
   it should "support Boolean SCollection via AnyVal" in {
@@ -156,10 +151,9 @@ class DisplayHelpersTest extends FlatSpec with Matchers {
     o should contain theSameElementsAs Seq(anyValHeader,
                                            "true",
                                            "false",
-                                           "true",
-                                           endTable)
+                                           "true") ++ endTableSeq
     o.head should be(anyValHeader)
-    o.last should be(endTable)
+    o.last should be(endTableFooter)
   }
 
   it should "support Char SCollection via AnyVal" in {
@@ -172,10 +166,9 @@ class DisplayHelpersTest extends FlatSpec with Matchers {
     o should contain theSameElementsAs Seq(anyValHeader,
                                            "a",
                                            "b",
-                                           "c",
-                                           endTable)
+                                           "c") ++ endTableSeq
     o.head should be(anyValHeader)
-    o.last should be(endTable)
+    o.last should be(endTableFooter)
   }
 
   it should "support SCollection of AnyVal over row limit" in {
@@ -216,10 +209,9 @@ class DisplayHelpersTest extends FlatSpec with Matchers {
     o should contain theSameElementsAs Seq(stringHeader,
                                            "a",
                                            "b",
-                                           "c",
-                                           endTable)
+                                           "c") ++ endTableSeq
     o.head should be (stringHeader)
-    o.last should be (endTable)
+    o.last should be (endTableFooter)
   }
 
   it should "support empty SCollection of String" in {
@@ -259,10 +251,9 @@ class DisplayHelpersTest extends FlatSpec with Matchers {
     }
     o should contain theSameElementsAs Seq(kvHeader,
                                            s"3${tab}4",
-                                           s"1${tab}2",
-                                           endTable)
+                                           s"1${tab}2") ++ endTableSeq
     o.head should be (kvHeader)
-    o.last should be (endTable)
+    o.last should be (endTableFooter)
   }
 
   it should "support KV (str keys) SCollection" in {
@@ -274,10 +265,9 @@ class DisplayHelpersTest extends FlatSpec with Matchers {
     }
     o should contain theSameElementsAs Seq(kvHeader,
                                            s"foo${tab}2",
-                                           s"bar${tab}4",
-                                           endTable)
+                                           s"bar${tab}4") ++ endTableSeq
     o.head should be (kvHeader)
-    o.last should be (endTable)
+    o.last should be (endTableFooter)
   }
 
   it should "support KV (str values) SCollection" in {
@@ -289,10 +279,9 @@ class DisplayHelpersTest extends FlatSpec with Matchers {
     }
     o should contain theSameElementsAs Seq(kvHeader,
                                            s"2${tab}foo",
-                                           s"4${tab}bar",
-                                           endTable)
+                                           s"4${tab}bar") ++ endTableSeq
     o.head should be (kvHeader)
-    o.last should be (endTable)
+    o.last should be (endTableFooter)
   }
 
   it should "support empty KV SCollection" in {
@@ -331,9 +320,9 @@ class DisplayHelpersTest extends FlatSpec with Matchers {
       }
     }
     o should contain theSameElementsAs
-      (Seq(tupleHeader, endTable) ++ Seq.fill(3)(s"1${tab}2${tab}3"))
+      (Seq(tupleHeader) ++ Seq.fill(3)(s"1${tab}2${tab}3") ++ endTableSeq)
     o.head should be(tupleHeader)
-    o.last should be (endTable)
+    o.last should be (endTableFooter)
   }
 
   it should "support SCollection of Tuple of 22" in {
@@ -345,10 +334,10 @@ class DisplayHelpersTest extends FlatSpec with Matchers {
           in.closeAndDisplay()
       }
     }
-    o should contain theSameElementsAs (Seq(tupleHeader, endTable) ++
-      Seq.fill(3)((1 to 21).map(i => s"$i$tab").mkString + "22"))
+    o should contain theSameElementsAs (Seq(tupleHeader) ++
+      Seq.fill(3)((1 to 21).map(i => s"$i$tab").mkString + "22") ++ endTableSeq)
     o.head should be(tupleHeader)
-    o.last should be (endTable)
+    o.last should be (endTableFooter)
   }
 
   it should "support SCollection of Case Class of 22" in {
@@ -360,10 +349,10 @@ class DisplayHelpersTest extends FlatSpec with Matchers {
         in.closeAndDisplay()
       }
     }
-    o should contain theSameElementsAs (Seq(tupleHeader, endTable) ++
-      Seq.fill(3)((1 to 21).map(i => s"$i$tab").mkString + "22"))
+    o should contain theSameElementsAs (Seq(tupleHeader) ++
+      Seq.fill(3)((1 to 21).map(i => s"$i$tab").mkString + "22") ++ endTableSeq)
     o.head should be(tupleHeader)
-    o.last should be (endTable)
+    o.last should be (endTableFooter)
   }
 
   it should "support SCollection of Case Class" in {
@@ -373,10 +362,10 @@ class DisplayHelpersTest extends FlatSpec with Matchers {
         in.closeAndDisplay()
       }
     }
-    o should contain theSameElementsAs (Seq(testCaseClassHeader, endTable) ++
-      Seq.fill(3)(s"1${tab}foo${tab}2.0"))
+    o should contain theSameElementsAs (Seq(testCaseClassHeader) ++
+      Seq.fill(3)(s"1${tab}foo${tab}2.0") ++ endTableSeq)
     o.head should be(testCaseClassHeader)
-    o.last should be (endTable)
+    o.last should be (endTableFooter)
   }
 
   it should "support empty SCollection of Product" in {
@@ -453,10 +442,10 @@ class DisplayHelpersTest extends FlatSpec with Matchers {
         in.closeAndDisplay()
       }
     }
-    o should contain theSameElementsAs (Seq(avroGenericRecordHeader, endTable) ++
-      Seq.fill(3)(s"1${tab}1.0${tab}user1${tab}checking"))
+    o should contain theSameElementsAs (Seq(avroGenericRecordHeader) ++
+      Seq.fill(3)(s"1${tab}1.0${tab}user1${tab}checking") ++ endTableSeq)
     o.head should be(avroGenericRecordHeader)
-    o.last should be (endTable)
+    o.last should be (endTableFooter)
   }
 
   it should "support SCollection of SpecificRecord Avro" in {
@@ -467,10 +456,10 @@ class DisplayHelpersTest extends FlatSpec with Matchers {
         in.closeAndDisplay()
       }
     }
-    o should contain theSameElementsAs (Seq(avroAccountHeader, endTable) ++
-      Seq.fill(3)(s"2${tab}checking${tab}user2${tab}2.0"))
+    o should contain theSameElementsAs (Seq(avroAccountHeader) ++
+      Seq.fill(3)(s"2${tab}checking${tab}user2${tab}2.0") ++ endTableSeq)
     o.head should be(avroAccountHeader)
-    o.last should be (endTable)
+    o.last should be (endTableFooter)
   }
 
   it should "support empty SCollection of SpecificRecord Avro" in {
@@ -541,10 +530,10 @@ class DisplayHelpersTest extends FlatSpec with Matchers {
         in.closeAndDisplay(bQSchema)
       }
     }
-    o should contain theSameElementsAs (Seq(bQHeader, endTable) ++
-      Seq.fill(3)(s"3${tab}3.0${tab}checking${tab}user3"))
+    o should contain theSameElementsAs (Seq(bQHeader) ++
+      Seq.fill(3)(s"3${tab}3.0${tab}checking${tab}user3") ++ endTableSeq)
     o.head should be(bQHeader)
-    o.last should be (endTable)
+    o.last should be (endTableFooter)
   }
 
   it should "print error on empty BQ schema" in {