Enum DynamicSchemaFilter.NewColumnsMode
java.lang.Object
java.lang.Enum<DynamicSchemaFilter.NewColumnsMode>
org.apache.drill.exec.physical.impl.scan.v3.schema.DynamicSchemaFilter.NewColumnsMode
- All Implemented Interfaces:
Serializable
,Comparable<DynamicSchemaFilter.NewColumnsMode>
- Enclosing class:
- DynamicSchemaFilter
public static enum DynamicSchemaFilter.NewColumnsMode
extends Enum<DynamicSchemaFilter.NewColumnsMode>
Describes how to handle candidate columns not currently in the
scan schema, which turns out to be a surprisingly complex
question. At the top level, we add columns only if the query
contains a wildcard. But, within maps, there are additional
constraints: we can add new members to a map even if the query
itself does not contain a wildcard.
-
Enum Constant Summary
Enum ConstantDescriptionNew columns are allowed at this level and below.New columns cannot be added at this level, but can be added in maps below this level.No new columns are allowed at this level or in maps below this level. -
Method Summary
Modifier and TypeMethodDescriptionReturns the enum constant of this type with the specified name.static DynamicSchemaFilter.NewColumnsMode[]
values()
Returns an array containing the constants of this enum type, in the order they are declared.
-
Enum Constant Details
-
NONE
No new columns are allowed at this level or in maps below this level. Occurs when the schema is defined or with a strict provided schema. -
ALL
New columns are allowed at this level and below. Occurs in a wildcard projection in which there are no constraints on the columns which can be added. -
CHILD_ONLY
New columns cannot be added at this level, but can be added in maps below this level. Occurs in a query where the projection list is explicit:a, b, m
, and it turns out thatm
is a map. A simplem
projection is logically equivalent tom.*
.This same logic can apply to maps if the project list contains something like
m.a, m.m2
, andm2
turns out to be a map.
-
-
Method Details
-
values
Returns an array containing the constants of this enum type, in the order they are declared.- Returns:
- an array containing the constants of this enum type, in the order they are declared
-
valueOf
Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)- Parameters:
name
- the name of the enum constant to be returned.- Returns:
- the enum constant with the specified name
- Throws:
IllegalArgumentException
- if this enum type has no constant with the specified nameNullPointerException
- if the argument is null
-