spark-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Olivier Blanvillain (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (SPARK-22036) BigDecimal multiplication sometimes returns null
Date Sat, 16 Sep 2017 11:14:00 GMT

     [ https://issues.apache.org/jira/browse/SPARK-22036?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Olivier Blanvillain updated SPARK-22036:
----------------------------------------
    Description: 
The multiplication of two BigDecimal numbers sometimes returns null. This issue we discovered
while doing property testing for the frameless project. Here is a minimal reproduction:

{code:java}
object Main extends App {
  import org.apache.spark.{SparkConf, SparkContext}
  import org.apache.spark.sql.SparkSession
  import spark.implicits._
  val conf = new SparkConf().setMaster("local[*]").setAppName("REPL").set("spark.ui.enabled",
"false")
  val spark = SparkSession.builder().config(conf).appName("REPL").getOrCreate()
  implicit val sqlContext = spark.sqlContext

  case class X2(a: BigDecimal, b: BigDecimal)

  val ds = sqlContext.createDataset(List(X2(BigDecimal(-0.1267333984375), BigDecimal(-1000.1))))

  val result = ds.select(ds("a") * ds("b")).collect.head
  println(result) // [null]
}
{code}


  was:
The multiplication of two BigDecimal numbers sometimes returns null. This issue we discovered
while doing property testing for the frameless project. Here is a minimal reproduction:

{code:scala}
object Main extends App {
  import org.apache.spark.{SparkConf, SparkContext}
  import org.apache.spark.sql.SparkSession
  import spark.implicits._
  val conf = new SparkConf().setMaster("local[*]").setAppName("REPL").set("spark.ui.enabled",
"false")
  val spark = SparkSession.builder().config(conf).appName("REPL").getOrCreate()
  implicit val sqlContext = spark.sqlContext

  case class X2(a: BigDecimal, b: BigDecimal)

  val ds = sqlContext.createDataset(List(X2(BigDecimal(-0.1267333984375), BigDecimal(-1000.1))))

  val result = ds.select(ds("a") * ds("b")).collect.head
  println(result) // [null]
}
{code}



> BigDecimal multiplication sometimes returns null
> ------------------------------------------------
>
>                 Key: SPARK-22036
>                 URL: https://issues.apache.org/jira/browse/SPARK-22036
>             Project: Spark
>          Issue Type: Bug
>          Components: SQL
>    Affects Versions: 2.2.0
>            Reporter: Olivier Blanvillain
>
> The multiplication of two BigDecimal numbers sometimes returns null. This issue we discovered
while doing property testing for the frameless project. Here is a minimal reproduction:
> {code:java}
> object Main extends App {
>   import org.apache.spark.{SparkConf, SparkContext}
>   import org.apache.spark.sql.SparkSession
>   import spark.implicits._
>   val conf = new SparkConf().setMaster("local[*]").setAppName("REPL").set("spark.ui.enabled",
"false")
>   val spark = SparkSession.builder().config(conf).appName("REPL").getOrCreate()
>   implicit val sqlContext = spark.sqlContext
>   case class X2(a: BigDecimal, b: BigDecimal)
>   val ds = sqlContext.createDataset(List(X2(BigDecimal(-0.1267333984375), BigDecimal(-1000.1))))
>   val result = ds.select(ds("a") * ds("b")).collect.head
>   println(result) // [null]
> }
> {code}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@spark.apache.org
For additional commands, e-mail: issues-help@spark.apache.org


Mime
View raw message