Enum Class EsqlCapabilities.Cap

java.lang.Object
java.lang.Enum<EsqlCapabilities.Cap>
org.elasticsearch.xpack.esql.action.EsqlCapabilities.Cap
All Implemented Interfaces:
Serializable, Comparable<EsqlCapabilities.Cap>, Constable
Enclosing class:
EsqlCapabilities

public static enum EsqlCapabilities.Cap extends Enum<EsqlCapabilities.Cap>
  • Enum Constant Details

    • FN_BIT_LENGTH

      public static final EsqlCapabilities.Cap FN_BIT_LENGTH
      Support for function BIT_LENGTH. Done in #115792
    • FN_BYTE_LENGTH

      public static final EsqlCapabilities.Cap FN_BYTE_LENGTH
      Support for function BYTE_LENGTH.
    • FN_REVERSE

      public static final EsqlCapabilities.Cap FN_REVERSE
      Support for function REVERSE.
    • FN_REVERSE_GRAPHEME_CLUSTERS

      public static final EsqlCapabilities.Cap FN_REVERSE_GRAPHEME_CLUSTERS
      Support for reversing whole grapheme clusters. This is not supported on JDK versions less than 20.
    • FN_CBRT

      public static final EsqlCapabilities.Cap FN_CBRT
      Support for function CBRT. Done in #108574.
    • FN_HYPOT

      public static final EsqlCapabilities.Cap FN_HYPOT
      Support for function HYPOT.
    • FN_MV_APPEND

      public static final EsqlCapabilities.Cap FN_MV_APPEND
      Support for MV_APPEND function. #107001
    • FN_MV_MEDIAN_ABSOLUTE_DEVIATION

      public static final EsqlCapabilities.Cap FN_MV_MEDIAN_ABSOLUTE_DEVIATION
      Support for MV_MEDIAN_ABSOLUTE_DEVIATION function.
    • FN_MV_PERCENTILE

      public static final EsqlCapabilities.Cap FN_MV_PERCENTILE
      Support for MV_PERCENTILE function.
    • FN_IP_PREFIX

      public static final EsqlCapabilities.Cap FN_IP_PREFIX
      Support for function IP_PREFIX.
    • FN_SUBSTRING_EMPTY_NULL

      public static final EsqlCapabilities.Cap FN_SUBSTRING_EMPTY_NULL
      Fix on function SUBSTRING that makes it not return null on empty strings.
    • FN_ROUND_UL_FIXES

      public static final EsqlCapabilities.Cap FN_ROUND_UL_FIXES
      Fixes on function ROUND that avoid it throwing exceptions on runtime for unsigned long cases.
    • FN_SCALB

      public static final EsqlCapabilities.Cap FN_SCALB
      Support for function SCALB.
    • FUNCTIONS_NEVER_EMIT_TEXT

      public static final EsqlCapabilities.Cap FUNCTIONS_NEVER_EMIT_TEXT
      All functions that take TEXT should never emit TEXT, only KEYWORD. #114334
    • INLINESTATS

      public static final EsqlCapabilities.Cap INLINESTATS
      Support for the INLINESTATS syntax.
    • INLINESTATS_V2

      public static final EsqlCapabilities.Cap INLINESTATS_V2
      Support for the expressions in grouping in INLINESTATS syntax.
    • AGG_TOP

      public static final EsqlCapabilities.Cap AGG_TOP
      Support for aggregation function TOP.
    • AGG_MAX_MIN_BOOLEAN_SUPPORT

      public static final EsqlCapabilities.Cap AGG_MAX_MIN_BOOLEAN_SUPPORT
      Support for booleans in aggregations MAX and MIN.
    • AGG_MAX_MIN_IP_SUPPORT

      public static final EsqlCapabilities.Cap AGG_MAX_MIN_IP_SUPPORT
      Support for ips in aggregations MAX and MIN.
    • AGG_MAX_MIN_STRING_SUPPORT

      public static final EsqlCapabilities.Cap AGG_MAX_MIN_STRING_SUPPORT
      Support for strings in aggregations MAX and MIN.
    • AGG_TOP_BOOLEAN_SUPPORT

      public static final EsqlCapabilities.Cap AGG_TOP_BOOLEAN_SUPPORT
      Support for booleans in TOP aggregation.
    • AGG_TOP_IP_SUPPORT

      public static final EsqlCapabilities.Cap AGG_TOP_IP_SUPPORT
      Support for ips in TOP aggregation.
    • AGG_TOP_STRING_SUPPORT

      public static final EsqlCapabilities.Cap AGG_TOP_STRING_SUPPORT
      Support for keyword and text fields in TOP aggregation.
    • AGG_VALUES_SPATIAL

      public static final EsqlCapabilities.Cap AGG_VALUES_SPATIAL
      Expand the VALUES agg to cover spatial types.
    • CASE_MV

      public static final EsqlCapabilities.Cap CASE_MV
      CASE properly handling multivalue conditions.
    • ST_CENTROID_AGG_OPTIMIZED

      public static final EsqlCapabilities.Cap ST_CENTROID_AGG_OPTIMIZED
      Optimization for ST_CENTROID changed some results in cartesian data. #108713
    • METADATA_IGNORED_FIELD

      public static final EsqlCapabilities.Cap METADATA_IGNORED_FIELD
      Support for requesting the "_ignored" metadata field.
    • LOOKUP_V4

      public static final EsqlCapabilities.Cap LOOKUP_V4
      LOOKUP command with - tables using syntax "tables": {"type": [<values>]} - fixed variable shadowing - fixed Join.references(), requiring breaking change to Join serialization
    • REPEAT

      public static final EsqlCapabilities.Cap REPEAT
      Support for requesting the "REPEAT" command.
    • STRING_LITERAL_AUTO_CASTING_TO_DATETIME_ADD_SUB

      public static final EsqlCapabilities.Cap STRING_LITERAL_AUTO_CASTING_TO_DATETIME_ADD_SUB
      Cast string literals to datetime in addition and subtraction when the other side is a date or time interval.
    • IMPLICIT_CASTING_DATE_AND_DATE_NANOS

      public static final EsqlCapabilities.Cap IMPLICIT_CASTING_DATE_AND_DATE_NANOS
      Support implicit casting for union typed fields that are mixed with date and date_nanos type.
    • NAMED_POSITIONAL_PARAMETER

      public static final EsqlCapabilities.Cap NAMED_POSITIONAL_PARAMETER
      Support for named or positional parameters in EsqlQueryRequest.
    • UNION_TYPES

      public static final EsqlCapabilities.Cap UNION_TYPES
      Support multiple field mappings if appropriate conversion function is used (union types)
    • ST_DISTANCE

      public static final EsqlCapabilities.Cap ST_DISTANCE
      Support for function ST_DISTANCE. Done in #108764.
    • ST_EXTENT_AGG

      public static final EsqlCapabilities.Cap ST_EXTENT_AGG
      Support for function ST_EXTENT_AGG.
    • ST_EXTENT_AGG_DOCVALUES

      public static final EsqlCapabilities.Cap ST_EXTENT_AGG_DOCVALUES
      Optimization of ST_EXTENT_AGG with doc-values as IntBlock.
    • SPATIAL_FUNCTIONS_FIX_CRSTYPE_FOLDING

      public static final EsqlCapabilities.Cap SPATIAL_FUNCTIONS_FIX_CRSTYPE_FOLDING
      Fix determination of CRS types in spatial functions when folding.
    • SPATIAL_PREDICATES_SUPPORT_MULTIVALUES

      public static final EsqlCapabilities.Cap SPATIAL_PREDICATES_SUPPORT_MULTIVALUES
      Enable spatial predicate functions to support multi-values. Done in #112063.
    • SPATIAL_DISTANCE_SUPPORTS_MULTIVALUES

      public static final EsqlCapabilities.Cap SPATIAL_DISTANCE_SUPPORTS_MULTIVALUES
      Enable spatial distance function to support multi-values. Done in #114836.
    • SPATIAL_DISTANCE_PUSHDOWN_ENHANCEMENTS

      public static final EsqlCapabilities.Cap SPATIAL_DISTANCE_PUSHDOWN_ENHANCEMENTS
      Support a number of fixes and enhancements to spatial distance pushdown. Done in #112938.
    • SPATIAL_CENTROID_NO_RECORDS

      public static final EsqlCapabilities.Cap SPATIAL_CENTROID_NO_RECORDS
      Fix for spatial centroid when no records are found.
    • GEO_VALIDATION

      public static final EsqlCapabilities.Cap GEO_VALIDATION
      Do validation check on geo_point and geo_shape fields. Done in #128259.
    • ST_ENVELOPE

      public static final EsqlCapabilities.Cap ST_ENVELOPE
      Support ST_ENVELOPE function (and related ST_XMIN, etc.).
    • SPATIAL_GRID

      public static final EsqlCapabilities.Cap SPATIAL_GRID
      Support ST_GEOHASH, ST_GEOTILE and ST_GEOHEX functions
    • GROK_DISSECT_MASKING

      public static final EsqlCapabilities.Cap GROK_DISSECT_MASKING
      Fix to GROK and DISSECT that allows extracting attributes with the same name as the input https://github.com/elastic/elasticsearch/issues/110184
    • DOUBLE_QUOTES_SOURCE_ENCLOSING

      public static final EsqlCapabilities.Cap DOUBLE_QUOTES_SOURCE_ENCLOSING
      Support for quoting index sources in double quotes.
    • AGG_WEIGHTED_AVG

      public static final EsqlCapabilities.Cap AGG_WEIGHTED_AVG
      Support for WEIGHTED_AVG function.
    • UNION_TYPES_AGG_CAST

      public static final EsqlCapabilities.Cap UNION_TYPES_AGG_CAST
      Fix for union-types when aggregating over an inline conversion with casting operator. Done in #110476.
    • FIX_COUNT_PUSHDOWN_FOR_UNION_TYPES

      public static final EsqlCapabilities.Cap FIX_COUNT_PUSHDOWN_FOR_UNION_TYPES
      When pushing down STATS count(field::type) for a union type field, we wrongly used a synthetic attribute name in the query instead of the actual field name. This led to 0 counts instead of the correct result.
    • GROK_VALIDATION

      public static final EsqlCapabilities.Cap GROK_VALIDATION
      Fix to GROK validation in case of multiple fields with same name and different types https://github.com/elastic/elasticsearch/issues/110533
    • UNION_TYPES_INLINE_FIX

      public static final EsqlCapabilities.Cap UNION_TYPES_INLINE_FIX
      Fix for union-types when aggregating over an inline conversion with conversion function. Done in #110652.
    • UNION_TYPES_REMOVE_FIELDS

      public static final EsqlCapabilities.Cap UNION_TYPES_REMOVE_FIELDS
      Fix for union-types when sorting a type-casted field. We changed how we remove synthetic union-types fields.
    • UNION_TYPES_FIX_RENAME_RESOLUTION

      public static final EsqlCapabilities.Cap UNION_TYPES_FIX_RENAME_RESOLUTION
      Fix for union-types when renaming unrelated columns. https://github.com/elastic/elasticsearch/issues/111452
    • RENAME_SEQUENTIAL_PROCESSING

      public static final EsqlCapabilities.Cap RENAME_SEQUENTIAL_PROCESSING
      Execute `RENAME` operations sequentially from left to right, see ESQL: Align RENAME behavior with EVAL for sequential processing #122250
    • RENAME_ALLOW_ASSIGNMENT

      public static final EsqlCapabilities.Cap RENAME_ALLOW_ASSIGNMENT
      Support for assignment in RENAME, besides the use of `AS` keyword.
    • REMOVE_EMPTY_ATTRIBUTE_IN_MERGING_OUTPUT

      public static final EsqlCapabilities.Cap REMOVE_EMPTY_ATTRIBUTE_IN_MERGING_OUTPUT
      Support for removing empty attribute in merging output. See EVAL after STATS produces an empty column #126392
    • RETAIN_AGGREGATE_WHEN_GROUPING

      public static final EsqlCapabilities.Cap RETAIN_AGGREGATE_WHEN_GROUPING
      Support for retain aggregate when grouping. See ES|QL: columns not projected away despite KEEP #126026
    • UNION_TYPES_MISSING_FIELD

      public static final EsqlCapabilities.Cap UNION_TYPES_MISSING_FIELD
      Fix for union-types when some indexes are missing the required field. Done in #111932.
    • UNION_TYPES_NUMERIC_WIDENING

      public static final EsqlCapabilities.Cap UNION_TYPES_NUMERIC_WIDENING
      Fix for widening of short numeric types in union-types. Done in #112610
    • FIX_PARSING_LARGE_NEGATIVE_NUMBERS

      public static final EsqlCapabilities.Cap FIX_PARSING_LARGE_NEGATIVE_NUMBERS
      Fix a parsing issue where numbers below Long.MIN_VALUE threw an exception instead of parsing as doubles. see Parsing large numbers is inconsistent #104323
    • FIX_PRECISION_OF_SCALED_FLOAT_FIELDS

      public static final EsqlCapabilities.Cap FIX_PRECISION_OF_SCALED_FLOAT_FIELDS
      Fix precision of scaled_float field values retrieved from stored source see Slight inconsistency in ESQL using scaled_float field #122547
    • FIX_COUNT_DISTINCT_SOURCE_ERROR

      public static final EsqlCapabilities.Cap FIX_COUNT_DISTINCT_SOURCE_ERROR
      Fix the status code returned when trying to run count_distinct on the _source type (which is not supported). see count_distinct(_source) returns a 500 response
    • RANGEQUERY_FOR_DATETIME

      public static final EsqlCapabilities.Cap RANGEQUERY_FOR_DATETIME
      Use RangeQuery for BinaryComparison on DateTime fields.
    • ENRICH_STRICT_RANGE_TYPES

      public static final EsqlCapabilities.Cap ENRICH_STRICT_RANGE_TYPES
      Enforce strict type checking on ENRICH range types, and warnings for KEYWORD parsing at runtime. Done in #115091.
    • UNIQUE_NAMES

      public static final EsqlCapabilities.Cap UNIQUE_NAMES
      Fix for non-unique attribute names in ROW and logical plans. https://github.com/elastic/elasticsearch/issues/110541
    • FIXED_PUSHDOWN_PAST_PROJECT

      public static final EsqlCapabilities.Cap FIXED_PUSHDOWN_PAST_PROJECT
      Make attributes of GROK/DISSECT adjustable and fix a shadowing bug when pushing them down past PROJECT. https://github.com/elastic/elasticsearch/issues/108008
    • MV_PSERIES_WEIGHTED_SUM

      public static final EsqlCapabilities.Cap MV_PSERIES_WEIGHTED_SUM
      Adds the MV_PSERIES_WEIGHTED_SUM function for converting sorted lists of numbers into a bounded score. This is a generalization of the riemann zeta function but we don't name it that because we don't support complex numbers and don't want to make folks think of mystical number theory things. This is just a weighted sum that is adjacent to magic.
    • MATCH_OPERATOR_COLON

      public static final EsqlCapabilities.Cap MATCH_OPERATOR_COLON
      Support for match operator as a colon. Previous support for match operator as MATCH has been removed
    • NO_META

      public static final EsqlCapabilities.Cap NO_META
      Removing support for the META keyword.
    • COMBINE_BINARY_COMPARISONS

      public static final EsqlCapabilities.Cap COMBINE_BINARY_COMPARISONS
      Add CombineBinaryComparisons rule.
    • DATE_NANOS_TYPE

      public static final EsqlCapabilities.Cap DATE_NANOS_TYPE
      Support for nanosecond dates as a data type
    • TO_DATE_NANOS

      public static final EsqlCapabilities.Cap TO_DATE_NANOS
      Support for to_date_nanos function
    • DATE_NANOS_BINARY_COMPARISON

      public static final EsqlCapabilities.Cap DATE_NANOS_BINARY_COMPARISON
      Support for date nanos type in binary comparisons
    • DATE_NANOS_COMPARE_TO_MILLIS

      public static final EsqlCapabilities.Cap DATE_NANOS_COMPARE_TO_MILLIS
      Support for mixed comparisons between nanosecond and millisecond dates
    • DATE_NANOS_IMPLICIT_CASTING

      public static final EsqlCapabilities.Cap DATE_NANOS_IMPLICIT_CASTING
      Support implicit casting of strings to date nanos
    • LEAST_GREATEST_FOR_DATENANOS

      public static final EsqlCapabilities.Cap LEAST_GREATEST_FOR_DATENANOS
      Support Least and Greatest functions on Date Nanos type
    • DATE_NANOS_DATE_EXTRACT

      public static final EsqlCapabilities.Cap DATE_NANOS_DATE_EXTRACT
      support date extract function for date nanos
    • DATE_NANOS_ADD_SUBTRACT

      public static final EsqlCapabilities.Cap DATE_NANOS_ADD_SUBTRACT
      Support add and subtract on date nanos
    • DATE_TRUNC_DATE_NANOS

      public static final EsqlCapabilities.Cap DATE_TRUNC_DATE_NANOS
      Support for date_trunc function on date nanos type
    • DATE_NANOS_BUCKET

      public static final EsqlCapabilities.Cap DATE_NANOS_BUCKET
      Support date nanos values as the field argument to bucket
    • DATE_NANOS_AGGREGATIONS

      public static final EsqlCapabilities.Cap DATE_NANOS_AGGREGATIONS
      support aggregations on date nanos
    • DATE_NANOS_IN_OPERATOR

      public static final EsqlCapabilities.Cap DATE_NANOS_IN_OPERATOR
      Support the In operator for date nanos
    • DATE_NANOS_DATE_FORMAT

      public static final EsqlCapabilities.Cap DATE_NANOS_DATE_FORMAT
      Support running date format function on nanosecond dates
    • DATE_NANOS_DATE_DIFF

      public static final EsqlCapabilities.Cap DATE_NANOS_DATE_DIFF
      support date diff function on date nanos type, and mixed nanos/millis
    • FIX_DATE_NANOS_LUCENE_PUSHDOWN_BUG

      public static final EsqlCapabilities.Cap FIX_DATE_NANOS_LUCENE_PUSHDOWN_BUG
      Indicates that https://github.com/elastic/elasticsearch/issues/125439 (incorrect lucene push down for date nanos) is fixed
    • FIX_DATE_NANOS_MIXED_RANGE_PUSHDOWN_BUG

      public static final EsqlCapabilities.Cap FIX_DATE_NANOS_MIXED_RANGE_PUSHDOWN_BUG
      Fixes a bug where dates are incorrectly formatted if a where clause compares nanoseconds to both milliseconds and nanoseconds, e.g. WHERE millis > to_datenanos("2023-10-23T12:15:03.360103847") AND millis < to_datetime("2023-10-23T13:53:55.832")
    • DATE_NANOS_LOOKUP_JOIN

      public static final EsqlCapabilities.Cap DATE_NANOS_LOOKUP_JOIN
      Support for date nanos in lookup join. Done in #127962
    • DATE_PARSE_TZ

      public static final EsqlCapabilities.Cap DATE_PARSE_TZ
      DATE_PARSE supports reading timezones
    • LEAST_GREATEST_FOR_DATES

      public static final EsqlCapabilities.Cap LEAST_GREATEST_FOR_DATES
      Support for datetime in least and greatest functions
    • COMBINE_DISJUNCTIVE_CIDRMATCHES

      public static final EsqlCapabilities.Cap COMBINE_DISJUNCTIVE_CIDRMATCHES
      Support CIDRMatch in CombineDisjunctions rule.
    • ASYNC_QUERY_STATUS_HEADERS

      public static final EsqlCapabilities.Cap ASYNC_QUERY_STATUS_HEADERS
      Support sending HTTP headers about the status of an async query.
    • BUCKET_INCLUSIVE_UPPER_BOUND

      public static final EsqlCapabilities.Cap BUCKET_INCLUSIVE_UPPER_BOUND
      Consider the upper bound when computing the interval in BUCKET auto mode.
    • DATE_TRUNC_WITH_ARBITRARY_INTERVALS

      public static final EsqlCapabilities.Cap DATE_TRUNC_WITH_ARBITRARY_INTERVALS
      Enhanced DATE_TRUNC with arbitrary month and year intervals. (#120302)
    • SHORT_ERROR_MESSAGES_FOR_UNSUPPORTED_FIELDS

      public static final EsqlCapabilities.Cap SHORT_ERROR_MESSAGES_FOR_UNSUPPORTED_FIELDS
      Changed error messages for fields with conflicting types in different indices.
    • BUCKET_WHOLE_NUMBER_AS_SPAN

      public static final EsqlCapabilities.Cap BUCKET_WHOLE_NUMBER_AS_SPAN
      Support for the whole number spans in BUCKET function.
    • MIXED_NUMERIC_TYPES_IN_COALESCE

      public static final EsqlCapabilities.Cap MIXED_NUMERIC_TYPES_IN_COALESCE
      Allow mixed numeric types in coalesce
    • SPACE

      public static final EsqlCapabilities.Cap SPACE
      Support for requesting the "SPACE" function.
    • CAST_STRING_LITERAL_TO_TEMPORAL_AMOUNT

      public static final EsqlCapabilities.Cap CAST_STRING_LITERAL_TO_TEMPORAL_AMOUNT
      Support explicit casting from string literal to DATE_PERIOD or TIME_DURATION.
    • CATEGORIZE_V6

      public static final EsqlCapabilities.Cap CATEGORIZE_V6
      Supported the text categorization function "CATEGORIZE".
    • CATEGORIZE_MULTIPLE_GROUPINGS

      public static final EsqlCapabilities.Cap CATEGORIZE_MULTIPLE_GROUPINGS
      Support for multiple groupings in "CATEGORIZE".
    • QSTR_FUNCTION

      public static final EsqlCapabilities.Cap QSTR_FUNCTION
      QSTR function
    • MATCH_FUNCTION

      public static final EsqlCapabilities.Cap MATCH_FUNCTION
      MATCH function
    • KQL_FUNCTION

      public static final EsqlCapabilities.Cap KQL_FUNCTION
      KQL function
    • HASH_FUNCTION

      public static final EsqlCapabilities.Cap HASH_FUNCTION
      Hash function
    • HASH_FUNCTION_ALIASES_V1

      public static final EsqlCapabilities.Cap HASH_FUNCTION_ALIASES_V1
      Hash function aliases such as MD5
    • FIXED_WRONG_IS_NOT_NULL_CHECK_ON_CASE

      public static final EsqlCapabilities.Cap FIXED_WRONG_IS_NOT_NULL_CHECK_ON_CASE
      Don't optimize CASE IS NOT NULL function by not requiring the fields to be not null as well. https://github.com/elastic/elasticsearch/issues/112704
    • DATE_DIFF_YEAR_CALENDARIAL

      public static final EsqlCapabilities.Cap DATE_DIFF_YEAR_CALENDARIAL
      Compute year differences in full calendar years.
    • SORTING_ON_SOURCE_AND_COUNTERS_FORBIDDEN

      public static final EsqlCapabilities.Cap SORTING_ON_SOURCE_AND_COUNTERS_FORBIDDEN
      Fix sorting not allowed on _source and counters.
    • SORT_RETURNING_SOURCE_OK

      public static final EsqlCapabilities.Cap SORT_RETURNING_SOURCE_OK
      Fix SORT when the _source field is not a sort key but is being returned.
    • PER_AGG_FILTERING

      public static final EsqlCapabilities.Cap PER_AGG_FILTERING
      Allow filter per individual aggregation.
    • PER_AGG_FILTERING_ORDS

      public static final EsqlCapabilities.Cap PER_AGG_FILTERING_ORDS
      Fix PER_AGG_FILTERING grouped by ordinals.
    • STD_DEV

      public static final EsqlCapabilities.Cap STD_DEV
      Support for STD_DEV aggregation.
    • FIX_STATS_BY_FOLDABLE_EXPRESSION

      public static final EsqlCapabilities.Cap FIX_STATS_BY_FOLDABLE_EXPRESSION
      Fix for https://github.com/elastic/elasticsearch/issues/114714
    • FUNCTION_STATS

      public static final EsqlCapabilities.Cap FUNCTION_STATS
      Adding stats for functions (stack telemetry)
    • FIX_FILTER_PUSHDOWN_PAST_STATS

      public static final EsqlCapabilities.Cap FIX_FILTER_PUSHDOWN_PAST_STATS
      Fix for an optimization that caused wrong results https://github.com/elastic/elasticsearch/issues/115281
    • STATS_ALIAS_COLLISION_WARNINGS

      public static final EsqlCapabilities.Cap STATS_ALIAS_COLLISION_WARNINGS
      Send warnings on STATS alias collision https://github.com/elastic/elasticsearch/issues/114970
    • SNAPSHOT_TEST_FOR_TELEMETRY

      public static final EsqlCapabilities.Cap SNAPSHOT_TEST_FOR_TELEMETRY
      This enables 60_usage.yml "Basic ESQL usage....snapshot" version test. See also the next capability.
    • NON_SNAPSHOT_TEST_FOR_TELEMETRY

      public static final EsqlCapabilities.Cap NON_SNAPSHOT_TEST_FOR_TELEMETRY
      This enables 60_usage.yml "Basic ESQL usage....non-snapshot" version test. See also the previous capability.
    • NAMED_PARAMETER_FOR_FIELD_AND_FUNCTION_NAMES_SIMPLIFIED_SYNTAX

      public static final EsqlCapabilities.Cap NAMED_PARAMETER_FOR_FIELD_AND_FUNCTION_NAMES_SIMPLIFIED_SYNTAX
      Support simplified syntax for named parameters for field and function names.
    • ADD_LIMIT_INSIDE_MV_EXPAND

      public static final EsqlCapabilities.Cap ADD_LIMIT_INSIDE_MV_EXPAND
      Fix pushdown of LIMIT past MV_EXPAND
    • DELAY_DEBUG_FN

      public static final EsqlCapabilities.Cap DELAY_DEBUG_FN
    • METADATA_FIELDS_REMOTE_TEST

      public static final EsqlCapabilities.Cap METADATA_FIELDS_REMOTE_TEST
      Capability for remote metadata test
    • INDEX_METADATA_FIELD

      public static final EsqlCapabilities.Cap INDEX_METADATA_FIELD
      Support specifically for *just* the _index METADATA field. Used by CsvTests, since that is the only metadata field currently supported.
    • JOIN_PLANNING_V1

      public static final EsqlCapabilities.Cap JOIN_PLANNING_V1
      WIP on Join planning - Introduce BinaryPlan and co - Refactor INLINESTATS and LOOKUP as a JOIN block
    • IMPLICIT_CASTING_STRING_LITERAL_TO_TEMPORAL_AMOUNT

      public static final EsqlCapabilities.Cap IMPLICIT_CASTING_STRING_LITERAL_TO_TEMPORAL_AMOUNT
      Support implicit casting from string literal to DATE_PERIOD or TIME_DURATION.
    • JOIN_LOOKUP_V12

      public static final EsqlCapabilities.Cap JOIN_LOOKUP_V12
      LOOKUP JOIN
    • LOOKUP_JOIN_TEXT

      public static final EsqlCapabilities.Cap LOOKUP_JOIN_TEXT
      LOOKUP JOIN with TEXT fields on the right (right side of the join) (#119473)
    • JOIN_LOOKUP_SKIP_MV

      public static final EsqlCapabilities.Cap JOIN_LOOKUP_SKIP_MV
      LOOKUP JOIN without MV matching (https://github.com/elastic/elasticsearch/issues/118780)
    • JOIN_LOOKUP_SKIP_MV_ON_LOOKUP_KEY

      public static final EsqlCapabilities.Cap JOIN_LOOKUP_SKIP_MV_ON_LOOKUP_KEY
      LOOKUP JOIN without MV matching on lookup index key (https://github.com/elastic/elasticsearch/issues/118780)
    • JOIN_LOOKUP_FIX_LIMIT_PUSHDOWN

      public static final EsqlCapabilities.Cap JOIN_LOOKUP_FIX_LIMIT_PUSHDOWN
      Fix pushing down LIMIT past LOOKUP JOIN in case of multiple matching join keys.
    • FIX_NESTED_FIELDS_NAME_CLASH_IN_INDEXRESOLVER

      public static final EsqlCapabilities.Cap FIX_NESTED_FIELDS_NAME_CLASH_IN_INDEXRESOLVER
      Fix for https://github.com/elastic/elasticsearch/issues/117054
    • FIX_STATS_BY_FOLDABLE_EXPRESSION_2

      public static final EsqlCapabilities.Cap FIX_STATS_BY_FOLDABLE_EXPRESSION_2
      Fix for https://github.com/elastic/elasticsearch/issues/114714, again
    • METADATA_SCORE

      public static final EsqlCapabilities.Cap METADATA_SCORE
      Support the "METADATA _score" directive to enable _score column.
    • TERM_FUNCTION

      public static final EsqlCapabilities.Cap TERM_FUNCTION
      Term function
    • MATCH_ADDITIONAL_TYPES

      public static final EsqlCapabilities.Cap MATCH_ADDITIONAL_TYPES
      Additional types for match function and operator
    • FIXED_REGEX_FOLD

      public static final EsqlCapabilities.Cap FIXED_REGEX_FOLD
      Fix for regex folding with case-insensitive pattern https://github.com/elastic/elasticsearch/issues/118371
    • FULL_TEXT_FUNCTIONS_DISJUNCTIONS

      public static final EsqlCapabilities.Cap FULL_TEXT_FUNCTIONS_DISJUNCTIONS
      Full text functions can be used in disjunctions
    • SEMANTIC_TEXT_FIELD_CAPS

      public static final EsqlCapabilities.Cap SEMANTIC_TEXT_FIELD_CAPS
      Change field caps response for semantic_text fields to be reported as text
    • OPTIONAL_NAMED_ARGUMENT_MAP_FOR_FUNCTION

      public static final EsqlCapabilities.Cap OPTIONAL_NAMED_ARGUMENT_MAP_FOR_FUNCTION
      Support named argument for function in map format.
    • LOOKUP_JOIN_NO_ALIASES

      public static final EsqlCapabilities.Cap LOOKUP_JOIN_NO_ALIASES
      Disabled support for index aliases in lookup joins
    • FULL_TEXT_FUNCTIONS_DISJUNCTIONS_COMPUTE_ENGINE

      public static final EsqlCapabilities.Cap FULL_TEXT_FUNCTIONS_DISJUNCTIONS_COMPUTE_ENGINE
      Full text functions can be used in disjunctions as they are implemented in compute engine
    • MATCH_FUNCTION_OPTIONS

      public static final EsqlCapabilities.Cap MATCH_FUNCTION_OPTIONS
      Support match options in match function
    • QUERY_STRING_FUNCTION_OPTIONS

      public static final EsqlCapabilities.Cap QUERY_STRING_FUNCTION_OPTIONS
      Support options in the query string function.
    • AGGREGATE_METRIC_DOUBLE

      public static final EsqlCapabilities.Cap AGGREGATE_METRIC_DOUBLE
      Support for aggregate_metric_double type
    • AGGREGATE_METRIC_DOUBLE_PARTIAL_SUBMETRICS

      public static final EsqlCapabilities.Cap AGGREGATE_METRIC_DOUBLE_PARTIAL_SUBMETRICS
      Support for partial subset of metrics in aggregate_metric_double type
    • AGGREGATE_METRIC_DOUBLE_RENDERING

      public static final EsqlCapabilities.Cap AGGREGATE_METRIC_DOUBLE_RENDERING
      Support for rendering aggregate_metric_double type
    • AGGREGATE_METRIC_DOUBLE_CONVERT_TO

      public static final EsqlCapabilities.Cap AGGREGATE_METRIC_DOUBLE_CONVERT_TO
      Support for to_aggregate_metric_double function
    • AGGREGATE_METRIC_DOUBLE_SORTING

      public static final EsqlCapabilities.Cap AGGREGATE_METRIC_DOUBLE_SORTING
      Support for sorting when aggregate_metric_doubles are present
    • AGGREGATE_METRIC_DOUBLE_AVG

      public static final EsqlCapabilities.Cap AGGREGATE_METRIC_DOUBLE_AVG
      Support avg with aggregate metric doubles
    • AGGREGATE_METRIC_DOUBLE_SORTING_FIXED

      public static final EsqlCapabilities.Cap AGGREGATE_METRIC_DOUBLE_SORTING_FIXED
      Fixes bug when aggregate metric double is encoded as a single nul value but decoded as AggregateMetricDoubleBlock (expecting 4 values) in TopN.
    • AGGREGATE_METRIC_DOUBLE_MV_EXPAND

      public static final EsqlCapabilities.Cap AGGREGATE_METRIC_DOUBLE_MV_EXPAND
      Stop erroring out when trying to apply MV_EXPAND on aggregate metric double.
    • CHANGE_POINT

      public static final EsqlCapabilities.Cap CHANGE_POINT
      Support change point detection "CHANGE_POINT".
    • REMOVE_REDUNDANT_SORT

      public static final EsqlCapabilities.Cap REMOVE_REDUNDANT_SORT
      Fix for https://github.com/elastic/elasticsearch/issues/120817 and https://github.com/elastic/elasticsearch/issues/120803 Support for queries that have multiple SORTs that cannot become TopN
    • SUPPORT_PARTIAL_RESULTS

      public static final EsqlCapabilities.Cap SUPPORT_PARTIAL_RESULTS
      Support partial_results
    • RERANK

      public static final EsqlCapabilities.Cap RERANK
      Support for RERANK command
    • COMPLETION

      public static final EsqlCapabilities.Cap COMPLETION
      Support for COMPLETION command
    • MIXED_NUMERIC_TYPES_IN_CASE_GREATEST_LEAST

      public static final EsqlCapabilities.Cap MIXED_NUMERIC_TYPES_IN_CASE_GREATEST_LEAST
      Allow mixed numeric types in conditional functions - case, greatest and least
    • STARTS_WITH_ENDS_WITH_LUCENE_PUSHDOWN

      public static final EsqlCapabilities.Cap STARTS_WITH_ENDS_WITH_LUCENE_PUSHDOWN
      Lucene query pushdown to StartsWith and EndsWith functions. This capability was created to avoid receiving wrong warnings from old nodes in mixed clusters
    • FULL_TEXT_FUNCTIONS_DISJUNCTIONS_SCORE

      public static final EsqlCapabilities.Cap FULL_TEXT_FUNCTIONS_DISJUNCTIONS_SCORE
      Full text functions can be scored when being part of a disjunction
    • CASTING_OPERATOR_FOR_DATE

      public static final EsqlCapabilities.Cap CASTING_OPERATOR_FOR_DATE
      Support for the ::date casting operator
    • DOUBLE_PARAMETER_MARKERS_FOR_IDENTIFIERS

      public static final EsqlCapabilities.Cap DOUBLE_PARAMETER_MARKERS_FOR_IDENTIFIERS
      Use double parameter markers to represent field or function names.
    • NON_FULL_TEXT_FUNCTIONS_SCORING

      public static final EsqlCapabilities.Cap NON_FULL_TEXT_FUNCTIONS_SCORING
      Non full text functions do not contribute to score
    • MAKE_NUMBER_OF_CHANNELS_CONSISTENT_WITH_LAYOUT

      public static final EsqlCapabilities.Cap MAKE_NUMBER_OF_CHANNELS_CONSISTENT_WITH_LAYOUT
      Make numberOfChannels consistent with layout in DefaultLayout by removing duplicated ChannelSet.
    • INDEX_COMPONENT_SELECTORS

      public static final EsqlCapabilities.Cap INDEX_COMPONENT_SELECTORS
      Index component selector syntax (my-data-stream-name::failures)
    • FIX_REPLACE_MISSING_FIELD_WITH_NULL_DUPLICATE_NAME_ID_IN_LAYOUT

      public static final EsqlCapabilities.Cap FIX_REPLACE_MISSING_FIELD_WITH_NULL_DUPLICATE_NAME_ID_IN_LAYOUT
    • FILTER_IN_CONVERTED_NULL

      public static final EsqlCapabilities.Cap FILTER_IN_CONVERTED_NULL
      Support for filter in converted null. See ESQL: Fix `NULL` handling in `IN` clause #125832
    • REPORT_ORIGINAL_TYPES

      public static final EsqlCapabilities.Cap REPORT_ORIGINAL_TYPES
      The _query API now reports the original types.
    • DOCUMENTS_FOUND_AND_VALUES_LOADED

      public static final EsqlCapabilities.Cap DOCUMENTS_FOUND_AND_VALUES_LOADED
      Are the documents_found and values_loaded fields available in the response and profile?
    • FIX_DOUBLY_RELEASED_NULL_BLOCKS_IN_VALUESOURCEREADER

      public static final EsqlCapabilities.Cap FIX_DOUBLY_RELEASED_NULL_BLOCKS_IN_VALUESOURCEREADER
      When creating constant null blocks in ValuesSourceReaderOperator, we also handed off the ownership of that block - but didn't account for the fact that the caller might close it, leading to double releases in some union type queries. C.f. https://github.com/elastic/elasticsearch/issues/125850
    • LOADING_NON_INDEXED_IP_FIELDS

      public static final EsqlCapabilities.Cap LOADING_NON_INDEXED_IP_FIELDS
      Support loading of ip fields if they are not indexed.
    • FIX_JOIN_MASKING_EVAL

      public static final EsqlCapabilities.Cap FIX_JOIN_MASKING_EVAL
      During resolution (pre-analysis) we have to consider that joins or enriches can override EVALuated values https://github.com/elastic/elasticsearch/issues/126419
    • TO_LOWER_MV

      public static final EsqlCapabilities.Cap TO_LOWER_MV
      Do TO_LOWER and TO_UPPER process all field values?
    • TO_IP_LEADING_ZEROS

      public static final EsqlCapabilities.Cap TO_IP_LEADING_ZEROS
      Support for the leading_zeros named parameter.
    • RESOLVE_GROUPINGS_BEFORE_RESOLVING_REFERENCES_TO_GROUPINGS_IN_AGGREGATIONS

      public static final EsqlCapabilities.Cap RESOLVE_GROUPINGS_BEFORE_RESOLVING_REFERENCES_TO_GROUPINGS_IN_AGGREGATIONS
      Resolve groupings before resolving references to groupings in the aggregations.
    • DROP_AGAIN_WITH_WILDCARD_AFTER_EVAL

      public static final EsqlCapabilities.Cap DROP_AGAIN_WITH_WILDCARD_AFTER_EVAL
      Support for keeping `DROP` attributes when resolving field names. see ES|QL: no matches for pattern #126418
    • DROP_WITH_WILDCARD_AFTER_LOOKUP_JOIN

      public static final EsqlCapabilities.Cap DROP_WITH_WILDCARD_AFTER_LOOKUP_JOIN
      Correctly ask for all fields from lookup indices even when there is e.g. a DROP *field after. See ES|QL: missing columns for wildcard drop after lookup join #129561
    • FIX_JOIN_MASKING_REGEX_EXTRACT

      public static final EsqlCapabilities.Cap FIX_JOIN_MASKING_REGEX_EXTRACT
      During resolution (pre-analysis) we have to consider that joins can override regex extracted values see ES|QL: pruning of JOINs leads to missing fields #127467
    • KEEP_REGEX_EXTRACT_ATTRIBUTES

      public static final EsqlCapabilities.Cap KEEP_REGEX_EXTRACT_ATTRIBUTES
      Avid GROK and DISSECT attributes being removed when resolving fields. see ES|QL: Grok only supports KEYWORD or TEXT values, found expression [type] type [INTEGER] #127468
    • ROUND_TO

      public static final EsqlCapabilities.Cap ROUND_TO
      The ROUND_TO function.
    • DENSE_VECTOR_FIELD_TYPE

      public static final EsqlCapabilities.Cap DENSE_VECTOR_FIELD_TYPE
      Dense vector field type support
    • LUCENE_QUERY_EVALUATOR_QUERY_REWRITE

      public static final EsqlCapabilities.Cap LUCENE_QUERY_EVALUATOR_QUERY_REWRITE
      LuceneQueryEvaluator rewrites the query before executing it in Lucene. This provides support for KQL in a STATS ... BY command that uses a KQL query for filter, for example.
    • TO_LOWER_EMPTY_STRING

      public static final EsqlCapabilities.Cap TO_LOWER_EMPTY_STRING
      Guards a bug fix matching TO_LOWER(f) == "".
    • PARAMETER_FOR_LIMIT

      public static final EsqlCapabilities.Cap PARAMETER_FOR_LIMIT
      Support parameters for LIMIT command.
    • NORMALIZED_LIMIT_ERROR_MESSAGE

      public static final EsqlCapabilities.Cap NORMALIZED_LIMIT_ERROR_MESSAGE
      Changed and normalized the LIMIT error message.
    • ENABLE_LOOKUP_JOIN_ON_ALIASES

      public static final EsqlCapabilities.Cap ENABLE_LOOKUP_JOIN_ON_ALIASES
      Enable support for index aliases in lookup joins
    • UPDATE_LOOKUP_JOIN_ERROR_MESSAGES

      public static final EsqlCapabilities.Cap UPDATE_LOOKUP_JOIN_ERROR_MESSAGES
      Lookup error messages were updated to make them a bit easier to understand.
    • LOOKUP_JOIN_ON_MIXED_NUMERIC_FIELDS

      public static final EsqlCapabilities.Cap LOOKUP_JOIN_ON_MIXED_NUMERIC_FIELDS
      Allow lookup join on mixed numeric fields, among byte, short, int, long, half_float, scaled_float, float and double.
    • KNN_FUNCTION

      public static final EsqlCapabilities.Cap KNN_FUNCTION
      Support knn function
    • MATCH_PHRASE_FUNCTION

      public static final EsqlCapabilities.Cap MATCH_PHRASE_FUNCTION
      MATCH PHRASE function
    • LIKE_WITH_LIST_OF_PATTERNS

      public static final EsqlCapabilities.Cap LIKE_WITH_LIST_OF_PATTERNS
      Support for LIKE operator with a list of patterns
    • LIKE_LIST_ON_INDEX_FIELDS

      public static final EsqlCapabilities.Cap LIKE_LIST_ON_INDEX_FIELDS
    • SAMPLE_V3

      public static final EsqlCapabilities.Cap SAMPLE_V3
      Support for the SAMPLE command
    • PARAMETER_FOR_SAMPLE

      public static final EsqlCapabilities.Cap PARAMETER_FOR_SAMPLE
      Support parameters for SAMPLE command.
    • AGG_SAMPLE

      public static final EsqlCapabilities.Cap AGG_SAMPLE
      Support for the SAMPLE aggregation function
    • NO_PLAIN_STRINGS_IN_LITERALS

      public static final EsqlCapabilities.Cap NO_PLAIN_STRINGS_IN_LITERALS
    • FIX_MV_EXPAND_INCONSISTENT_COLUMN_ORDER

      public static final EsqlCapabilities.Cap FIX_MV_EXPAND_INCONSISTENT_COLUMN_ORDER
      Support for the mv_expand target attribute should be retained in its original position. see ES|QL: inconsistent column order #129000
    • LIKE_ON_INDEX_FIELDS

      public static final EsqlCapabilities.Cap LIKE_ON_INDEX_FIELDS
      Support improved behavior for LIKE operator when used with index fields.
    • NO_BRACKETS_IN_UNQUOTED_INDEX_NAMES

      public static final EsqlCapabilities.Cap NO_BRACKETS_IN_UNQUOTED_INDEX_NAMES
      Forbid usage of brackets in unquoted index and enrich policy names https://github.com/elastic/elasticsearch/issues/130378
    • CORRECT_SKIPPED_SHARDS_COUNT

      public static final EsqlCapabilities.Cap CORRECT_SKIPPED_SHARDS_COUNT
      Support correct counting of skipped shards.
  • Method Details

    • values

      public static EsqlCapabilities.Cap[] values()
      Returns an array containing the constants of this enum class, in the order they are declared.
      Returns:
      an array containing the constants of this enum class, in the order they are declared
    • valueOf

      public static EsqlCapabilities.Cap valueOf(String name)
      Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (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 class has no constant with the specified name
      NullPointerException - if the argument is null
    • isEnabled

      public boolean isEnabled()
    • capabilityName

      public String capabilityName()