Olivier Girardot created SPARK-7327:
---------------------------------------

             Summary: DataFrame show() method doesn't like empty dataframes
                 Key: SPARK-7327
                 URL: https://issues.apache.org/jira/browse/SPARK-7327
             Project: Spark
          Issue Type: Bug
          Components: SQL
    Affects Versions: 1.3.1
            Reporter: Olivier Girardot
            Priority: Minor


For an empty DataFrame (for exemple after a filter) any call to show() ends up 
with : 

{code}
java.util.MissingFormatWidthException: -0s
        at java.util.Formatter$FormatSpecifier.checkGeneral(Formatter.java:2906)
        at java.util.Formatter$FormatSpecifier.<init>(Formatter.java:2680)
        at java.util.Formatter.parse(Formatter.java:2528)
        at java.util.Formatter.format(Formatter.java:2469)
        at java.util.Formatter.format(Formatter.java:2423)
        at java.lang.String.format(String.java:2790)
        at 
org.apache.spark.sql.DataFrame$$anonfun$showString$2$$anonfun$apply$4.apply(DataFrame.scala:200)
        at 
org.apache.spark.sql.DataFrame$$anonfun$showString$2$$anonfun$apply$4.apply(DataFrame.scala:199)
        at 
scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:244)
        at 
scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:244)
        at 
scala.collection.mutable.ResizableArray$class.foreach(ResizableArray.scala:59)
        at scala.collection.mutable.ArrayBuffer.foreach(ArrayBuffer.scala:47)
        at scala.collection.TraversableLike$class.map(TraversableLike.scala:244)
        at scala.collection.AbstractTraversable.map(Traversable.scala:105)
        at 
org.apache.spark.sql.DataFrame$$anonfun$showString$2.apply(DataFrame.scala:199)
        at 
org.apache.spark.sql.DataFrame$$anonfun$showString$2.apply(DataFrame.scala:198)
        at 
scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:244)
        at 
scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:244)
        at scala.collection.mutable.ArraySeq.foreach(ArraySeq.scala:73)
        at scala.collection.TraversableLike$class.map(TraversableLike.scala:244)
        at scala.collection.AbstractTraversable.map(Traversable.scala:105)
        at org.apache.spark.sql.DataFrame.showString(DataFrame.scala:198)
        at org.apache.spark.sql.DataFrame.show(DataFrame.scala:314)
        at org.apache.spark.sql.DataFrame.show(DataFrame.scala:320)
{code}

If no-one takes it by next friday, I'll fix it, the problem seems to come from 
the colWidths method :
{code}
   // Compute the width of each column
    val colWidths = Array.fill(numCols)(0)
    for (row <- rows) {
      for ((cell, i) <- row.zipWithIndex) {
        colWidths(i) = math.max(colWidths(i), cell.length)
      }
    }
{code}





--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

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

Reply via email to