Github user zhzhan commented on a diff in the pull request:

    https://github.com/apache/spark/pull/7200#discussion_r33831074
  
    --- Diff: 
sql/hive/src/main/scala/org/apache/spark/sql/hive/orc/OrcFileOperator.scala ---
    @@ -24,30 +24,58 @@ import 
org.apache.hadoop.hive.serde2.objectinspector.StructObjectInspector
     
     import org.apache.spark.Logging
     import org.apache.spark.deploy.SparkHadoopUtil
    +import org.apache.spark.sql.AnalysisException
     import org.apache.spark.sql.hive.HiveMetastoreTypes
     import org.apache.spark.sql.types.StructType
     
    -private[orc] object OrcFileOperator extends Logging{
    -  def getFileReader(pathStr: String, config: Option[Configuration] = None 
): Reader = {
    +private[orc] object OrcFileOperator extends Logging {
    +  // TODO Needs to consider all files when schema evolution is taken into 
account.
    +  def getFileReader(basePath: String, config: Option[Configuration] = 
None): Option[Reader] = {
    +    def isWithNonEmptySchema(path: Path, reader: Reader): Boolean = {
    +      reader.getObjectInspector match {
    +        case oi: StructObjectInspector if oi.getAllStructFieldRefs.size() 
> 0 =>
    +          true
    +        case oi: StructObjectInspector if oi.getAllStructFieldRefs.size() 
== 0 =>
    +          logInfo(
    +            s"ORC file $path has empty schema, it probably contains no 
rows. " +
    +              "Trying to read another ORC file to figure out the schema.")
    +          false
    +        case _ => false
    --- End diff --
    
    In what situation, will the third case happen? If not exist, can we 
collapse the 2nd and 3rd case?


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

---------------------------------------------------------------------
To unsubscribe, e-mail: reviews-unsubscr...@spark.apache.org
For additional commands, e-mail: reviews-h...@spark.apache.org

Reply via email to