title: Filter Spark DataFrame by checking if value is in a list, with other criteria
body: <p>As a simplified example, I tried to filter a Spark DataFrame with following code:</p>
  
  <pre><code>val xdf = sqlContext.createDataFrame(Seq(
    ("A", 1), ("B", 2), ("C", 3)
  )).toDF("name", "cnt")
  xdf.filter($"cnt" &gt;1 || $"name" isin ("A","B")).show()
  </code></pre>
  
  <p>Then it errors:</p>
  
  <pre><code>org.apache.spark.sql.AnalysisException: cannot resolve '((cnt &gt; 1) || name)' due to data type mismatch: differing types in '((cnt &gt; 1) || name)' (boolean and string).;
  </code></pre>
  
  <p>What's the right way to do it? It seems to me that it stops reading after <code>name</code> column. Is it a bug in the parser? I'm using Spark 1.5.1</p>