rdblue commented on a change in pull request #23266: [SPARK-26313][SQL] move
read related methods from Table to read related mix-in traits
URL: https://github.com/apache/spark/pull/23266#discussion_r240695027
##########
File path:
sql/core/src/main/java/org/apache/spark/sql/sources/v2/SupportsBatchRead.java
##########
@@ -20,14 +20,27 @@
import org.apache.spark.annotation.Evolving;
import org.apache.spark.sql.sources.v2.reader.Scan;
import org.apache.spark.sql.sources.v2.reader.ScanBuilder;
+import org.apache.spark.sql.types.StructType;
/**
- * An empty mix-in interface for {@link Table}, to indicate this table
supports batch scan.
- * <p>
- * If a {@link Table} implements this interface, its {@link
Table#newScanBuilder(DataSourceOptions)}
- * must return a {@link ScanBuilder} that builds {@link Scan} with {@link
Scan#toBatch()}
- * implemented.
- * </p>
+ * A mix-in interface for {@link Table} to provide data reading ability of
batch processing.
*/
@Evolving
-public interface SupportsBatchRead extends Table { }
+public interface SupportsBatchRead extends Table {
+
+ /**
+ * Returns the schema of this table.
+ */
+ StructType schema();
Review comment:
@cloud-fan, in that case, we're talking about a change to how we apply
validation rules. I've proposed a way to customize the validation rules for a
data source, using capabilities.
For example, we could add a capability that instructs Spark to not validate
the schema for a write. I don't think that's very useful, so I think it is more
likely that we would add a capability that instructs Spark to loosen the
validation in some way -- like the one I've already suggested that allows
omitting columns that are optional.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
With regards,
Apache Git Services
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]