Enum Class EsqlCapabilities.Cap
- All Implemented Interfaces:
Serializable,Comparable<EsqlCapabilities.Cap>,Constable
- Enclosing class:
EsqlCapabilities
-
Nested Class Summary
Nested classes/interfaces inherited from class java.lang.Enum
Enum.EnumDesc<E extends Enum<E>> -
Enum Constant Summary
Enum ConstantsEnum ConstantDescriptionSupport for the ACOSH function.Fix pushdown of LIMIT past MV_EXPANDSupport timezones in + and - operators.Support for booleans in aggregationsMAXandMIN.Support for ips in aggregationsMAXandMIN.Support for strings in aggregationsMAXandMIN.Accept unsigned longs on MAX and MIN aggregations.Support for the SAMPLE aggregation functionSupport for aggregation functionTOP.Support for booleans inTOPaggregation.Support for ips inTOPaggregation.Support forkeywordandtextfields inTOPaggregation.Make optional the order field in the TOP agg command, and default it to "ASC".Support for the extra "map" field inTOPaggregation.The introduction of theVALUESagg.Accept unsigned longs on VALUES and SAMPLE aggregations.Expand theVALUESagg to cover spatial types.Support for WEIGHTED_AVG function.Support avg as a possible default metric for aggregate_metric_doubleSupport binary operators for aggregate_metric_doubleSupport running all aggregations on aggregate_metric_double using the default metricReturn 0 (instead of null) for count on AMD when there are no rowsEnable aggregate_metric_double in non-snapshot buildsFix for 140670, this allows for type conversion functions with no further computation to be evaluated inside default wrapping _over_time functions.Support query approximation.Support for the ASINH function.Fix for async operator sometimes completing the driver without emitting the stored warningsDoes ESQL support async queries.Support sending HTTP headers about the status of an async query.Fix async headers not being sent on "get" requestsSupport for the ATANH function.Fix attribute equality to respect the name id of the attribute.Support for base conversion in TO_LONG and TO_INTEGERBase64 encoding and decoding functions.Consider the upper bound when computing the interval in BUCKET auto mode.Support for the whole number spans in BUCKET function.CASEfolding with DATE_PERIOD and TIME_DURATION return types.CASEproperly handling multivalue conditions.Adds the ability for theCaseto return values of type TDIGEST, type HISTOGRAM, and type AGGREGATE_METRIC_DOUBLE.Support explicit casting from string literal to DATE_PERIOD or TIME_DURATION.Support for the :: casting operatorSupport for the ::date casting operatorSupport for the::tdigestand::exponential_histogramcasting operators.Support for multiple groupings in "CATEGORIZE".Support for the options field of CATEGORIZE.Supported the text categorization function "CATEGORIZE".Support change point detection "CHANGE_POINT".Support CHANGE_POINT arguments in any orderChunk function.DoesCHUNKprocess all field values?COALESCE function support for dense_vector type.Add CombineBinaryComparisons rule.Support CIDRMatch in CombineDisjunctions rule.Support for COMPLETION commandAdds a conditional block loader for text fields that prefers using the sub-keyword field whenever possible.Support for theCOPY_SIGNfunction.Support correct counting of skipped shards.Cosine vector similarity functionSupport for running the Count aggregation on t-digest and exponential histogram typesSupport metrics counter typesSupport timezones in DATE_DIFF.Compute year differences in full calendar years.Support timezones in DATE_FORMAT and DATE_PARSE.Support add and subtract on date nanossupport aggregations on date nanosSupport for date nanos type in binary comparisonsSupport date nanos values as the field argument to bucketSupport for mixed comparisons between nanosecond and millisecond datessupport date diff function on date nanos type, and mixed nanos/millissupport date extract function for date nanosSupport running date format function on nanosecond datesSupport implicit casting of strings to date nanosSupport theInoperator for date nanosSupport for date nanos in lookup join.Support for nanosecond dates as a data typeOptional options argument for DATE_PARSEDATE_PARSE supports reading timezonesSupport for the DATE_RANGE field type.Exceptions parsing date-times are thrown as IllegalArgumentExceptionSupport for date_trunc function on date nanos typeSupport timezones in DATE_TRUNC and dependent functions.Enhanced DATE_TRUNC with arbitrary month and year intervals.Decay function for custom scoring.Fix conversions for parameters forDECAY.Dense_vector aggregation functionsSupport for dense_vector arithmetic operations (+, -, *, /)Support for dense_vector equality and inequality operators (==, !=).Bit elements dense vector field type support.Byte elements dense vector field type support.Dense vector field type supportSupport for arithmetic operations (+, -, *, /) between dense_vector and scalar valuesDense_vector SUM aggregation functionWhen we disabled some broken optimizations aroundnullable.Are thedocuments_foundandvalues_loadedfields available in the response and profile?Dot product vector similarity functionSupport for dots in FUSE attributesUse double parameter markers to represent field or function names.Support for quoting index sources in double quotes.Support for keeping `DROP` attributes when resolving field names.Correctly ask for all fields from lookup indices even when there is e.g.Alias for calling FIRST (or LAST) and only passing the search field.FORK with remote indicesEnable support for index aliases in lookup joinsEnable support for cross-cluster lookup joins.Enables late materialization on node reduce.Enrich works with dense_vector fieldsSupport for loading values over enrich.Enforce strict type checking on ENRICH range types, and warnings for KEYWORD parsing at runtime.Enables the feature LIMIT n BY expr1, expr2 for retaining at most n docs per group.Enables the SORT | LIMIT n BY expr1, expr2 support, see ESQL_LIMIT_BY for more contextSupport for`WITHOUT` grouping function that excludes specific dimensions from time-series grouping.(Re)Added EXPLAIN commandEXPLAIN command with remote plans (5 columns: cluster, node, role, type, plan)Support for exponential_histogram fields in the state of when it first was released into tech preview.Support for the EXTERNAL command (datasource access).Support for the EXTERNAL command (datasource access).Support for field aliases in mappings.Support for filter in converted null.Make FIRST agg work with null and multi-value fields.Support aggregating on integers in FIRST/LAST.Allow FIRST/LAST aggs to accept DATE/DATE_NANOS in the search field https://github.com/elastic/elasticsearch/issues/142137Add support for counter doubles, ints, and longs in first_ and last_over_timeSupport passing constants and null in the second parameter of FIRST/LAST aggs.ReplaceStatsFilteredOrNullAggWithEvalnow replaces anAggregateFunctionwith null value with anEval.Fix for a bug when surrogating aTOPwith limit 1 and output field.Fix for an ArrayIndexOutOfBoundsException in the aggregation framework when the same field is passed twice.Fix the status code returned when trying to run count_distinct on the _source type (which is not supported).When pushing downSTATS count(field::type)for a union type field, we wrongly used a synthetic attribute name in the query instead of the actual field name.Indicates that https://github.com/elastic/elasticsearch/issues/125439 (incorrect lucene push down for date nanos) is fixedFixes a bug where dates are incorrectly formatted if a where clause compares nanoseconds to both milliseconds and nanoseconds, e.g.Fix for not including metadata _doc_count in the _timeseries column https://github.com/elastic/elasticsearch/issues/143464When creating constant null blocks inValuesSourceReaderOperator, 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.Fix for circular reference in alias chains during PushDownEnrich and aggregate deduplication.Create new block when filtering OrdinalBytesRefBlockFix for an optimization that caused wrong results https://github.com/elastic/elasticsearch/issues/115281Fix folding of coalesce function https://github.com/elastic/elasticsearch/issues/139344Fixes an analysis bug inFORKwithunmapped_fields="nullify".Fix for full-text functions (MATCH, MATCH_PHRASE, :) on constant_keyword fields.Fix for full-text functions failing on renamed fields.Fix for INLINE STATS GROUP BY null being incorrectly pruned by PruneLeftJoinOnNullMatchingField.https://github.com/elastic/elasticsearch/issues/138283During resolution (pre-analysis) we have to consider that joins or enriches can override EVALuated values https://github.com/elastic/elasticsearch/issues/126419During resolution (pre-analysis) we have to consider that joins can override regex extracted values see ES|QL: pruning of JOINs leads to missing fields #127467Allow the merging of the children to useAliases, instead of justReferenceAttributes.Fix LimitOperator truncation with zero columns https://github.com/elastic/elasticsearch/issues/142473Fix for the STATS BY ALL with LIMIT 0.Support for the mv_expand target attribute should be retained in its original position.Fix for https://github.com/elastic/elasticsearch/issues/117054Fix management of plans with no columns https://github.com/elastic/elasticsearch/issues/120272Fix null comparison type check in binary comparisons.Fix a parsing issue where numbers below Long.MIN_VALUE threw an exception instead of parsing as doubles.Fix field caps incorrectly synthesizing object parents under subobjects:false (passthrough) mappers, causing false type conflicts in ES|QL when querying across indices.Fix precision of scaled_float field values retrieved from stored source see Slight inconsistency in ESQL using scaled_float field #122547ReplaceStatsFilteredOrNullAggWithEvalreplaced a stats with false filter with null withPresentorAbsentReplaceAliasingEvalWithProjectdid not fully account for shadowing.SupercedesMAKE_NUMBER_OF_CHANNELS_CONSISTENT_WITH_LAYOUT.Fix full-text functions being rejected after SAMPLE.Create a ScoreOperator only when shard contexts are availableFix for https://github.com/elastic/elasticsearch/issues/114714Fix for https://github.com/elastic/elasticsearch/issues/114714, againFix for ClassCastException in STATS https://github.com/elastic/elasticsearch/issues/133992 https://github.com/elastic/elasticsearch/issues/136598Fix for multi-value constant propagation after GROUP BY.Makes SUM(long) agg return null+warning instead of a 500 overflow.Fix forSUM(null)producing a type mismatch after surrogate expansion.Fix window validation in time-series aggregations when TBUCKET uses a numeric target bucket count.Fix for 141627, TO_IP with leading_zeros=octal generates proper warning and returns null when given invalid input.Fix for KQL/QSTR functions failing when used with unmapped fields in NULLIFY mode.Fixed some profile serialization issuesMake attributes of GROK/DISSECT adjustable and fix a shadowing bug when pushing them down past PROJECT.When resolving renames, consider allAttributes in the plan, not just theReferenceAttributes.Fix for regex folding with case-insensitive pattern https://github.com/elastic/elasticsearch/issues/118371Don't optimize CASE IS NOT NULL function by not requiring the fields to be not null as well.support for MV_CONTAINS function Add MV_CONTAINS function #133099Temporarily forbid the use of an explicit or implicit LIMIT before INLINE STATS.Support for union types in FORKSupport for FORK out of snapshotDeprecated.Full text functions can be used in disjunctionsFull text functions can be used in disjunctions as they are implemented in compute engineFull text functions can be scored when being part of a disjunctionFull text functions in STATSAdding stats for functions (stack telemetry)All functions that take TEXT should never emit TEXT, only KEYWORD.Fixes for multiple functions not serializing their source, and emitting warnings with wrong line number and text.FUSE L2_NORM score normalization supportFUSE commandSupport directIO rescoring and `bfloat16` for `bbq_hnsw` and `bbq_disk`, and `bfloat16` for `hnsw` ans `bbq_flat` index types.Fold in spatial functions should return null for null input.Do validation check on geo_point and geo_shape fields."time_zone" parameter in request body and inSET time_zone="x".Fix to GROK and DISSECT that allows extracting attributes with the same name as the input https://github.com/elastic/elasticsearch/issues/110184Allow multiple patterns for GROK commandFix to GROK validation in case of multiple fields with same name and different types https://github.com/elastic/elasticsearch/issues/110533Support for vector Hamming distance.Catch-and-rethrow determinization complexity errors as 400s rather than 500sHash functionHash function aliases such as MD5Histogram field integrationSupport implicit casting for union typed fields that are mixed with date and date_nanos type.Support implicit casting from string literal to DATE_PERIOD or TIME_DURATION.Support for INCREASE, DELTA timeseries aggregations.Index component selector syntax (my-data-stream-name::failures)Support specifically for *just* the _index METADATA field.Renamed `INLINESTATS` to `INLINE STATS`.Fix double release in inline stats when LocalRelation is reusedFixes https://github.com/elastic/elasticsearch/issues/139359INLINE STATS fix incorrect prunning of null filtering https://github.com/elastic/elasticsearch/pull/135011Added support for having INLINE STATS preceded by a SORT clause, now executable in certain cases.Fix pruning of columns when shadowed in INLINE STATSINLINE STATS supports remote indiceshttps://github.com/elastic/elasticsearch/issues/142219https://github.com/elastic/elasticsearch/issues/136851Support for theINLINESTATSsyntax.Fixes a series of issues with inlinestats which had an incomplete implementation after lookup and inlinestats were refactored.Support for the expressions in grouping inINLINESTATSsyntax.Fix pushing down LIMIT past LOOKUP JOIN in case of multiple matching join keys.LOOKUP JOIN skipping MVs and sending warnings (https://github.com/elastic/elasticsearch/issues/118780)LOOKUP JOINWIP on Join planning - Introduce BinaryPlan and co - Refactor INLINESTATS and LOOKUP as a JOIN blockAvid GROK and DISSECT attributes being removed when resolving fields.KNN function adds support for k and visit_percentage optionsSupport knn functionKQL functionSupport for optional parameters in KQL function (case_insensitive, time_zone, default_field, boost).Support timezones in KQL and QSTR.l1 norm vector similarity functionl2 norm vector similarity functionMake LAST agg work with null and multi-value fields.Support Least and Greatest functions on Date Nanos typeSupport for datetime in least and greatest functionsSupport improved behavior for LIKE operator when used with index fields.Support like/rlike parameters https://github.com/elastic/elasticsearch/issues/131356Support for the LIKE operator with a list of wildcards.Corrects a bug with ENRICH when a shard does not contain an index field and we use LIMIT BY on topTest-only capability since loading a value from a flattened field is possible using the unmapped field infrastructure, but is only supported by full integration tests.Support loading of ip fields if they are not indexed.Disabled support for index aliases in lookup joinsAllow lookup join on boolean expressionsAllow lookup join on mixed numeric fields, among byte, short, int, long, half_float, scaled_float, float and double.Support for lookup join on multiple fields.Fix for lookup join filter pushdown not using semantic equality.Warning when SORT is followed by LOOKUP JOIN which does not preserve order.LOOKUP JOIN with TEXT fields on the right (right side of the join) (#119473)Lookup join with Full Text Function or other Lucene Pushable condition to be applied to the lookup index usedBugfix for lookup join with Full Text FunctionLOOKUP command with - tables using syntax"tables": {"type": [<values>]}- fixed variable shadowing - fixed Join.references(), requiring breaking change to Join serializationLuceneQueryEvaluatorrewrites the query before executing it in Lucene.Make numberOfChannels consistent with layout in DefaultLayout by removing duplicated ChannelSet.Additional types for match function and operatorMATCH functionSupport match options in match functionSupport for the zero_terms_query option in the match function.Support for match operator as a colon.MATCH PHRASE functionSupport for metadata fields.Capability for remote metadata testSupport for requesting the "_ignored" metadata field.Support the "METADATA _score" directive to enable _score column.Support for requesting the "_size" metadata field when the mapper-size plugin is enabled.Support for requesting the "_tier" metadata field.Support for requesting the "_tsid" metadata field.Allow wildcards in FROM METADATA, eg FROM idx METADATA _ind*Deprecated.Support for metrics counter fieldsEnables automatically grouping by all dimension fields in TS mode queriesEnables automatically grouping by all dimension fields in TS mode queries and outputs the _timeseries column with all the dimensions.Support for the METRICS_INFO command.Allow mixed numeric types in conditional functions - case, greatest and leastAllow mixed numeric types in coalesceMMR fixes for constant foldingSupport for the MMR result diversification commandBlocks can be labelled withBlock.MvOrdering.SORTED_ASCENDINGfor optimizations.Adds theMV_PSERIES_WEIGHTED_SUMfunction for converting sorted lists of numbers into a bounded score.Introduction ofMV_SORT,MV_SLICE, andMV_ZIP.Allow qualifiers in attribute names.Support simplified syntax for named parameters for field and function names.Support for named or positional parameters in EsqlQueryRequest.Network direction function.Forbid usage of brackets in unquoted index and enrich policy names https://github.com/elastic/elasticsearch/issues/130378Removing support for theMETAkeyword.From now, Literal only accepts strings as BytesRefs.Non full text functions do not contribute to scoreThis enables 60_usage.yml "Basic ESQL usage....non-snapshot" version test.Changed and normalized the LIMIT error message.Nullify unmapped fields in agg filters likeSTATS agg_fun(field) WHERE field..., even whenAnalyzer.ResolveRefsmarks the field as unresolvable with a custom error message.Fix incorrect detection of unmapped fields in nullify/load mode when unresolved attributes match fields already present in the children's output.Fix for 500 error when querying multiple indices withunmapped_fields="load".Don't nullify aliases for Aggregate groupings.Support for optional fields (might or might not be present in the mappings) using DEFAULT/NULLIFY only.Support for optional fields (might or might not be present in the mappings) using DEFAULT/NULLIFY/LOAD.Support named argument for function in map format.Pack dimension values in TS commandSupport parameters for LIMIT command.Support parameters for SAMPLE command.Parquet and ORC filter pushdown for StartsWith (prefix range predicates).Allow filter per individual aggregation.FixPER_AGG_FILTERINGgrouped by ordinals.Percentile over time and other ts-aggregationsPeriodically emit partial aggregation results when the number of groups exceeds the threshold.Initial support for simple binary comparisons in PromQL.Support for deriving PromQL time buckets from [start, end, buckets] when [step] is omitted.PromQL support in ESQL, in the state it was when first available in non-snapshot builds.Support implicit conversion from an instant selector to a range selector for range-vector functions.Bundle flag for PromQL math functions.Support for nested across-series aggregates in PromQL.Support post-processing STATS commands after PROMQL source commands.PromQL scalar() function support.Support for PromQL time() function.Queries for unmapped fields return no data instead of an error.Support for PromQLwithoutgrouping.Support for pushing down EVAL with SCORE https://github.com/elastic/elasticsearch/issues/133462QSTR functionGuards a fix for the boost parameter in QueryString queriesListing queries and getting information on a specific query.Multivalued query parametersSupport options in the query string function.Use RangeQuery for BinaryComparison on DateTime fields.Fixes reset calculation in rates where partitioning data into multiple slices can lead to incorrect results.Rate and increase calculations use interpolation at the boundaries between time bucketsV3 fixes a bug on how we handle single-value time buckets for INCREASE with the sole value falling onto the bucket boundary.Supports the REGISTERED_DOMAIN command.Fix the planning of| ENRICH _remote:policywhen there's a preceding| LOOKUP JOIN, see java.lang.ClassCastException when combining LOOKUP JOIN and remote ENRICHSupport for removing empty attribute in merging output.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 TopNSupport for assignment in RENAME, besides the use of `AS` keyword.Execute `RENAME` operations sequentially from left to right, see ESQL: Align RENAME behavior with EVAL for sequential processing #122250Support for requesting the "REPEAT" command.The_queryAPI now reports the original types.Support for RERANK commandResolve groupings before resolving references to groupings in the aggregations.Support for retain aggregate when grouping.Allows RLIKE to correctly handle the "empty language" flag, `#`.Support for the RLIKE operator with a list of regexes.TheROUND_TOfunction.Marks the move to the hash(doc) % shard_count routing function.Support for intra-row field references in ROW command.Support for the SAMPLE commandscore functionChange field caps response for semantic_text fields to be reported as textSupport for the SET command.Changed error messages for fields with conflicting types in different indices.This enables 60_usage.yml "Basic ESQL usage....snapshot" version test.FixSORTwhen the_sourcefield is not a sort key but is being returned.Fix sorting not allowed on _source and counters._source field mapping directives: https://www.elastic.co/guide/en/elasticsearch/reference/current/mapping-source-field.htmlSupport for requesting the "SPACE" function.Fix to bug with spatial aggregations not properly supporting the WHERE clause.Fix for spatial centroid when no records are found.Support a number of fixes and enhancements to spatial distance pushdown.Enable spatial distance function to support multi-values.Fix determination of CRS types in spatial functions when folding.Support ST_GEOHASH, ST_GEOTILE and ST_GEOHEX functionsSupport geohash, geotile and geohex in ST_INTERSECTS and ST_DISJOINT.Support geohash, geotile and geohex data types.Changed precision ofgeo_pointandcartesian_pointfields, by loading from source into WKB.Enable spatial predicate functions to support multi-values.Support for loadinggeo_shapeandcartesian_shapefields.Support for spatial aggregationST_CENTROID.Optimization for ST_CENTROID changed some results in cartesian data.Support for ST_CENTROID_AGG aggregation on geo_shape and cartesian_shape fields.Support for ST_CENTROID_AGG aggregation on shapes from doc-values.Support for spatial aggregationST_CONTAINSandST_WITHIN.Support for spatial aggregationST_DISJOINT.Support for functionST_DISTANCE.Support ST_ENVELOPE function (and related ST_XMIN, etc.).Fix ST_ENVELOPE to support multi-values and doc-values.Support for functionST_EXTENT_AGG.Optimization of ST_EXTENT_AGG with doc-values as IntBlock.Allow ST_EXTENT_AGG to gracefully handle missing spatial shapesSupport for spatial aggregationST_INTERSECTS.Support ST_NPOINTS function.Support for spatial simplificationST_SIMPLIFYIntroduction ofST_XandST_Y.Quantize results ofST_XandST_Yand related functionsLucene query pushdown to StartsWith and EndsWith functions.Send warnings on STATS alias collision https://github.com/elastic/elasticsearch/issues/114970Bugfix for STATS {{expression}} WHERE {{condition}} when the expression is replaced by something else on planning e.g.Support forSTD_DEVaggregation.TheGROK,DISSECT,URI_PARTS, andREGISTERED_DOMAINcommands acceptnulltyped parameters and producenullresults.Cast string literals to a desired data type.Cast string literals to a desired data type for IN predicate and more types for BinaryComparison.Cast string literals to datetime in addition and subtraction when the other side is a date or time interval.Support non-correlated subqueries in the FROM clause.Append an implicit limit to unbounded sorts in subqueries in the FROM clause.Prune no-fields in subquery project.Fix for union types when fields have conflicting types between subqueries.Support non-correlated subqueries in the FROM clause without implicit limit.The_queryAPI now gives a cast recommendation if multiple types are found in certain instances.Support partial_resultsSupport for tbucket functionSupport for TBUCKET with numeric bucket count and optional from/to parameters.Support forFIRST_OVER_TIMEandLAST_OVER_TIMEontdigesttype fields.Support forMEDIANaggregation ontdigesttype fields.A bugfix we applied to the HISTOGRAM_PERCENTILE algorithm on the tdigest type.Support for the T-Digest elasticsearch field mapper and ES|QL type when they were released into tech preview.Support for configuring T-Digest elasticsearch field as a time series metric.Support for the literalmsuffix as an alias forminutein temporal amounts.Support for theTEXT_EMBEDDINGfunction for generating dense vector embeddings.Support window durations that are larger than but not exact multiples of the time bucket for time-series aggregations (e.g., rate(counter, 7 minutes) with TBUCKET(5 minutes)).Supporting grouping window in time-series where the window is smaller than the time bucketSupport grouping window in time-series for example: rate(counter, "1m") or avg_over_time(field, "5m")Support for timespan units abbreviationsSupport for to_date_nanos functionTO_DENSE_VECTOR function.Support for theTO_EXPONENTIAL_HISTOGRAMconversion function.Support for theleading_zerosnamed parameter.Guards a bug fix matchingTO_LOWER(f) == "".DoTO_LOWERandTO_UPPERprocess all field values?Support for convertingexponential_histogramfields viaTO_TDIGEST.TOP_SNIPPETS checks that the query is foldableReturns the top snippets for given text content and associated query.A fix allowing theTOP_SNIPPETSfunction to process string config parameters like the other functions.DoesTOP_SNIPPETSprocess all field values?Fix bug with TS command where you can't group on aliases (i.e.Support TS command in non-snapshot buildsImplicit SORT @timestamp DESC for TS queries without STATS or explicit SORT.Support for the TS_INFO command — per-time-series granularity variant of METRICS_INFO.Fix for a bug where if you queried multiple TS indices with a field mapped to different types, the original types/suggested cast sections of the return result would be empty.Permit the data type of a field changing from TEXT to KEYWORD when being grouped on in aggregations on the TS command.Custom error for renamed timestampAdds support for binary operations (such as addition, subtraction, etc.) to the TS|STATS command.Support timezones in the conversion utils and functions, like TO_STRING.Support multiple field mappings if appropriate conversion function is used (union types)Fix for union-types when aggregating over an inline conversion with casting operator.Fix for union-types when renaming unrelated columns.Fix for union-types when aggregating over an inline conversion with conversion function.Fix for union-types when some indexes are missing the required field.Fix for widening of short numeric types in union-types.Fix for union-types when sorting a type-casted field.Fix for resolving union type casts past projections (KEEP) and MV_EXPAND operations.Fix for non-unique attribute names in ROW and logical plans.Support unmapped using the INSIST keyword.Rename theunmapped_fieldsdefault setting from"fail"to"default".Lookup error messages were updated to make them a bit easier to understand.Supports theURI_PARTS) command.URL decoding function.URL encoding function.URL component encoding function.Does the usage information for ESQL contain a histogram oftookvalues?Supports theUSER_AGENTcommand.Support for vector similarity functions pushdownSupport null elements on vector similarity functionsViews crud actions as index actionsFixed a bug where views are incorrectly de-duplicated.Support for views in cluster state (and REST API).Added telemetry for viewsViews with branching (requires subqueries/FORK).Basic Views with no branching (do not need subqueries or FORK). -
Method Summary
Modifier and TypeMethodDescriptionbooleanstatic EsqlCapabilities.CapReturns the enum constant of this class with the specified name.static EsqlCapabilities.Cap[]values()Returns an array containing the constants of this enum class, in the order they are declared.
-
Enum Constant Details
-
MV_SORT
Introduction ofMV_SORT,MV_SLICE, andMV_ZIP. Added in #106095. -
DISABLE_NULLABLE_OPTS
When we disabled some broken optimizations aroundnullable. Fixed in #105691. -
ST_X_Y
Introduction ofST_XandST_Y. Added in #105768. -
ST_X_Y_QUANTIZED
Quantize results ofST_XandST_Yand related functions -
SPATIAL_POINTS_FROM_SOURCE
Changed precision ofgeo_pointandcartesian_pointfields, by loading from source into WKB. Done in #103691. -
SPATIAL_SHAPES
Support for loadinggeo_shapeandcartesian_shapefields. Done in #104269. -
GEO_VALIDATION
Do validation check on geo_point and geo_shape fields. Done in #128259. -
GEO_NULL_LITERALS_FOLDING
Fold in spatial functions should return null for null input. -
ST_CENTROID_AGG
Support for spatial aggregationST_CENTROID. Done in #104269. -
ST_INTERSECTS
Support for spatial aggregationST_INTERSECTS. Done in #104907. -
ST_CONTAINS_WITHIN
Support for spatial aggregationST_CONTAINSandST_WITHIN. Done in #106503. -
ST_DISJOINT
Support for spatial aggregationST_DISJOINT. Done in #107007. -
ST_SIMPLIFY
Support for spatial simplificationST_SIMPLIFY -
AGG_VALUES
The introduction of theVALUESagg. -
AGG_VALUES_SPATIAL
Expand theVALUESagg to cover spatial types. -
AGG_MAX_MIN_UNSIGNED_LONG
Accept unsigned longs on MAX and MIN aggregations. -
AGG_VALUES_SAMPLE_UNSIGNED_LONG
Accept unsigned longs on VALUES and SAMPLE aggregations. -
ASYNC_QUERY
Does ESQL support async queries. -
FROM_OPTIONS
Deprecated.Does ESQL support FROM OPTIONS? -
STRING_LITERAL_AUTO_CASTING
Cast string literals to a desired data type. -
BASE64_DECODE_ENCODE
Base64 encoding and decoding functions. -
CASTING_OPERATOR
Support for the :: casting operator -
CASTING_OPERATOR_FOR_DATE
Support for the ::date casting operator -
CASTING_OPERATOR_FOR_HISTOGRAM_TYPES
Support for the::tdigestand::exponential_histogramcasting operators. -
MV_ORDERING_SORTED_ASCENDING
Blocks can be labelled withBlock.MvOrdering.SORTED_ASCENDINGfor optimizations. -
METRICS_COUNTER_FIELDS
Support for metrics counter fields -
STRING_LITERAL_AUTO_CASTING_EXTENDED
Cast string literals to a desired data type for IN predicate and more types for BinaryComparison. -
METADATA_FIELDS
Support for metadata fields. -
OPTIONAL_FIELDS_NULLIFY_TECH_PREVIEW
Support for optional fields (might or might not be present in the mappings) using DEFAULT/NULLIFY only. Compared toOPTIONAL_FIELDS_V5, this does not enable support for LOAD. -
OPTIONAL_FIELDS_FIX_UNMAPPED_FIELD_DETECTION
Fix incorrect detection of unmapped fields in nullify/load mode when unresolved attributes match fields already present in the children's output. -
OPTIONAL_FIELDS_NULLIFY_SKIP_GROUP_ALIASES
Don't nullify aliases for Aggregate groupings. -
OPTIONAL_FIELDS_DETECT_UNMAPPED_FIELDS_IN_AGG_FILTERS
Nullify unmapped fields in agg filters likeSTATS agg_fun(field) WHERE field..., even whenAnalyzer.ResolveRefsmarks the field as unresolvable with a custom error message. -
OPTIONAL_FIELDS_FIX_UNMAPPED_LOAD_MULTI_INDEX_PATTERN
Fix for 500 error when querying multiple indices withunmapped_fields="load". See https://github.com/elastic/elasticsearch/issues/145555 -
OPTIONAL_FIELDS_V5
Support for optional fields (might or might not be present in the mappings) using DEFAULT/NULLIFY/LOAD. V2: Prevent pushing down filters and sorts to Lucene of potentially unmapped fields. V3: Fix synthetic _source numeric load bug (#143916) V4: Support for union type like resolution for load. V5: Support for rejecting partially unmapped non-keywords unless cast or projected Support for rejecting loading subfields of flattened fields -
INDEX_METADATA_FIELD
Support specifically for *just* the _index METADATA field. Used by CsvTests, since that is the only metadata field currently supported. -
TIMESPAN_ABBREVIATIONS
Support for timespan units abbreviations -
COUNTER_TYPES
Support metrics counter types -
FN_MV_CONTAINS_V1
support for MV_CONTAINS function Add MV_CONTAINS function #133099 -
FUNCTIONS_SOURCE_SERIALIZATION_WARNINGS
Fixes for multiple functions not serializing their source, and emitting warnings with wrong line number and text. -
FUNCTIONS_NEVER_EMIT_TEXT
All functions that take TEXT should never emit TEXT, only KEYWORD. #114334 -
INLINESTATS
Support for theINLINESTATSsyntax. -
INLINESTATS_V2
Support for the expressions in grouping inINLINESTATSsyntax. -
AGG_TOP
Support for aggregation functionTOP. -
AGG_MAX_MIN_BOOLEAN_SUPPORT
Support for booleans in aggregationsMAXandMIN. -
AGG_MAX_MIN_IP_SUPPORT
Support for ips in aggregationsMAXandMIN. -
AGG_MAX_MIN_STRING_SUPPORT
Support for strings in aggregationsMAXandMIN. -
AGG_TOP_BOOLEAN_SUPPORT
Support for booleans inTOPaggregation. -
AGG_TOP_IP_SUPPORT
Support for ips inTOPaggregation. -
AGG_TOP_STRING_SUPPORT
Support forkeywordandtextfields inTOPaggregation. -
AGG_TOP_WITH_OPTIONAL_ORDER_FIELD
Make optional the order field in the TOP agg command, and default it to "ASC". -
AGG_TOP_WITH_OUTPUT_FIELD
Support for the extra "map" field inTOPaggregation. -
FIX_AGG_TOP_WITH_OUTPUT_FIELD_SURROGATE
Fix for a bug when surrogating aTOPwith limit 1 and output field. -
CASE_MV
CASEproperly handling multivalue conditions. -
CASE_FOLD_TEMPORAL_AMOUNT
CASEfolding with DATE_PERIOD and TIME_DURATION return types. -
ENRICH_LOAD
Support for loading values over enrich. This is supported by all versions of ESQL but not the unit test CsvTests. -
LOAD_FLATTENED_FIELD
Test-only capability since loading a value from a flattened field is possible using the unmapped field infrastructure, but is only supported by full integration tests. So this capability is used to disable some tests in CsvTests. -
ST_CENTROID_AGG_OPTIMIZED
Optimization for ST_CENTROID changed some results in cartesian data. #108713 -
METADATA_IGNORED_FIELD
Support for requesting the "_ignored" metadata field. -
LOOKUP_V4
LOOKUP command with - tables using syntax"tables": {"type": [<values>]}- fixed variable shadowing - fixed Join.references(), requiring breaking change to Join serialization -
REPEAT
Support for requesting the "REPEAT" command. -
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
Support implicit casting for union typed fields that are mixed with date and date_nanos type. -
NAMED_POSITIONAL_PARAMETER
Support for named or positional parameters in EsqlQueryRequest. -
UNION_TYPES
Support multiple field mappings if appropriate conversion function is used (union types) -
UNMAPPED_FIELDS
Support unmapped using the INSIST keyword. -
ST_DISTANCE
Support for functionST_DISTANCE. Done in #108764. -
ST_EXTENT_AGG
Support for functionST_EXTENT_AGG. -
ST_EXTENT_AGG_DOCVALUES
Optimization of ST_EXTENT_AGG with doc-values as IntBlock. -
SPATIAL_AGGS_FILTERING
Fix to bug with spatial aggregations not properly supporting the WHERE clause. Fixes #142329. -
SPATIAL_FUNCTIONS_FIX_CRSTYPE_FOLDING
Fix determination of CRS types in spatial functions when folding. -
SPATIAL_PREDICATES_SUPPORT_MULTIVALUES
Enable spatial predicate functions to support multi-values. Done in #112063. -
SPATIAL_DISTANCE_SUPPORTS_MULTIVALUES
Enable spatial distance function to support multi-values. Done in #114836. -
SPATIAL_DISTANCE_PUSHDOWN_ENHANCEMENTS
Support a number of fixes and enhancements to spatial distance pushdown. Done in #112938. -
SPATIAL_CENTROID_NO_RECORDS
Fix for spatial centroid when no records are found. -
ST_CENTROID_AGG_SHAPES
Support for ST_CENTROID_AGG aggregation on geo_shape and cartesian_shape fields. -
ST_CENTROID_AGG_SHAPES_DOC_VALUES
Support for ST_CENTROID_AGG aggregation on shapes from doc-values. -
ST_ENVELOPE
Support ST_ENVELOPE function (and related ST_XMIN, etc.). -
ST_ENVELOPE_MV_FIX
Fix ST_ENVELOPE to support multi-values and doc-values. -
ST_NPOINTS
Support ST_NPOINTS function. -
SPATIAL_GRID
Support ST_GEOHASH, ST_GEOTILE and ST_GEOHEX functions -
SPATIAL_GRID_TYPES
Support geohash, geotile and geohex data types. Done in #129581 -
SPATIAL_GRID_INTERSECTS
Support geohash, geotile and geohex in ST_INTERSECTS and ST_DISJOINT. Done in #133546 -
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
Support for quoting index sources in double quotes. -
AGG_WEIGHTED_AVG
Support for WEIGHTED_AVG function. -
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
When pushing downSTATS 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
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
Fix for union-types when aggregating over an inline conversion with conversion function. Done in #110652. -
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
Fix for union-types when renaming unrelated columns. https://github.com/elastic/elasticsearch/issues/111452 -
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
Support for assignment in RENAME, besides the use of `AS` keyword. -
REMOVE_EMPTY_ATTRIBUTE_IN_MERGING_OUTPUT
Support for removing empty attribute in merging output. See ESQL: EVAL after STATS produces an empty column #126392 -
RETAIN_AGGREGATE_WHEN_GROUPING
Support for retain aggregate when grouping. See ES|QL: columns not projected away despite KEEP #126026 -
UNION_TYPES_MISSING_FIELD
Fix for union-types when some indexes are missing the required field. Done in #111932. -
UNION_TYPES_NUMERIC_WIDENING
Fix for widening of short numeric types in union-types. Done in #112610 -
UNION_TYPES_RESOLVE_PAST_PROJECTIONS
Fix for resolving union type casts past projections (KEEP) and MV_EXPAND operations. Ensures that casting a union type field works correctly when the field has been projected and expanded through MV_EXPAND. See #137923 -
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
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
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
Use RangeQuery for BinaryComparison on DateTime fields. -
ENRICH_STRICT_RANGE_TYPES
Enforce strict type checking on ENRICH range types, and warnings for KEYWORD parsing at runtime. Done in #115091. -
UNIQUE_NAMES
Fix for non-unique attribute names in ROW and logical plans. https://github.com/elastic/elasticsearch/issues/110541 -
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 -
FIXED_PUSHDOWN_PAST_PROJECT_WITH_ATTRIBUTES_RESOLUTION
When resolving renames, consider allAttributes in the plan, not just theReferenceAttributes. -
MV_PSERIES_WEIGHTED_SUM
Adds theMV_PSERIES_WEIGHTED_SUMfunction 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
Support for match operator as a colon. Previous support for match operator as MATCH has been removed -
NO_META
Removing support for theMETAkeyword. -
COMBINE_BINARY_COMPARISONS
Add CombineBinaryComparisons rule. -
DATE_NANOS_TYPE
Support for nanosecond dates as a data type -
TO_DATE_NANOS
Support for to_date_nanos function -
DATE_NANOS_BINARY_COMPARISON
Support for date nanos type in binary comparisons -
DATE_NANOS_COMPARE_TO_MILLIS
Support for mixed comparisons between nanosecond and millisecond dates -
DATE_NANOS_IMPLICIT_CASTING
Support implicit casting of strings to date nanos -
LEAST_GREATEST_FOR_DATENANOS
Support Least and Greatest functions on Date Nanos type -
DATE_NANOS_DATE_EXTRACT
support date extract function for date nanos -
DATE_NANOS_ADD_SUBTRACT
Support add and subtract on date nanos -
DATE_TRUNC_DATE_NANOS
Support for date_trunc function on date nanos type -
DATE_NANOS_BUCKET
Support date nanos values as the field argument to bucket -
DATE_NANOS_AGGREGATIONS
support aggregations on date nanos -
DATE_NANOS_IN_OPERATOR
Support theInoperator for date nanos -
DATE_NANOS_DATE_FORMAT
Support running date format function on nanosecond dates -
DATE_NANOS_DATE_DIFF
support date diff function on date nanos type, and mixed nanos/millis -
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
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
Support for date nanos in lookup join. Done in #127962 -
DATE_PARSE_TZ
DATE_PARSE supports reading timezones -
LEAST_GREATEST_FOR_DATES
Support for datetime in least and greatest functions -
COMBINE_DISJUNCTIVE_CIDRMATCHES
Support CIDRMatch in CombineDisjunctions rule. -
ASYNC_QUERY_STATUS_HEADERS
Support sending HTTP headers about the status of an async query. -
ASYNC_QUERY_STATUS_HEADERS_FIX
Fix async headers not being sent on "get" requests -
BUCKET_INCLUSIVE_UPPER_BOUND
Consider the upper bound when computing the interval in BUCKET auto mode. -
DATE_TRUNC_WITH_ARBITRARY_INTERVALS
Enhanced DATE_TRUNC with arbitrary month and year intervals. (#120302) -
SHORT_ERROR_MESSAGES_FOR_UNSUPPORTED_FIELDS
Changed error messages for fields with conflicting types in different indices. -
BUCKET_WHOLE_NUMBER_AS_SPAN
Support for the whole number spans in BUCKET function. -
MIXED_NUMERIC_TYPES_IN_COALESCE
Allow mixed numeric types in coalesce -
SPACE
Support for requesting the "SPACE" function. -
CAST_STRING_LITERAL_TO_TEMPORAL_AMOUNT
Support explicit casting from string literal to DATE_PERIOD or TIME_DURATION. -
CATEGORIZE_V6
Supported the text categorization function "CATEGORIZE". -
CATEGORIZE_MULTIPLE_GROUPINGS
Support for multiple groupings in "CATEGORIZE". -
QSTR_FUNCTION
QSTR function -
QSTR_FUNCTION_BOOST_FIX
Guards a fix for the boost parameter in QueryString queries -
MATCH_FUNCTION
MATCH function -
KQL_FUNCTION
KQL function -
KQL_FUNCTION_OPTIONS
Support for optional parameters in KQL function (case_insensitive, time_zone, default_field, boost). -
HASH_FUNCTION
Hash function -
HASH_FUNCTION_ALIASES_V1
Hash function aliases such as MD5 -
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
Compute year differences in full calendar years. -
SORTING_ON_SOURCE_AND_COUNTERS_FORBIDDEN
Fix sorting not allowed on _source and counters. -
SORT_RETURNING_SOURCE_OK
FixSORTwhen the_sourcefield is not a sort key but is being returned. -
SOURCE_FIELD_MAPPING
_source field mapping directives: https://www.elastic.co/guide/en/elasticsearch/reference/current/mapping-source-field.html -
FIELD_ALIAS_SUPPORT
Support for field aliases in mappings. Used by tests, since this was feature wasn't always supported by CsvTests. -
PER_AGG_FILTERING
Allow filter per individual aggregation. -
PER_AGG_FILTERING_ORDS
FixPER_AGG_FILTERINGgrouped by ordinals. -
STD_DEV
Support forSTD_DEVaggregation. -
FIX_STATS_BY_FOLDABLE_EXPRESSION
Fix for https://github.com/elastic/elasticsearch/issues/114714 -
FUNCTION_STATS
Adding stats for functions (stack telemetry) -
FIX_FILTER_PUSHDOWN_PAST_STATS
Fix for an optimization that caused wrong results https://github.com/elastic/elasticsearch/issues/115281 -
STATS_ALIAS_COLLISION_WARNINGS
Send warnings on STATS alias collision https://github.com/elastic/elasticsearch/issues/114970 -
SNAPSHOT_TEST_FOR_TELEMETRY_V2
This enables 60_usage.yml "Basic ESQL usage....snapshot" version test. See also the next capability. -
NON_SNAPSHOT_TEST_FOR_TELEMETRY_V2
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_SYNTAXSupport simplified syntax for named parameters for field and function names. -
ADD_LIMIT_INSIDE_MV_EXPAND
Fix pushdown of LIMIT past MV_EXPAND -
DELAY_DEBUG_FN
-
METADATA_FIELDS_REMOTE_TEST
Capability for remote metadata test -
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
Support implicit casting from string literal to DATE_PERIOD or TIME_DURATION. -
JOIN_LOOKUP_V12
LOOKUP JOIN -
LOOKUP_JOIN_TEXT
LOOKUP JOIN with TEXT fields on the right (right side of the join) (#119473) -
JOIN_LOOKUP_SKIP_MV_WARNINGS
LOOKUP JOIN skipping MVs and sending warnings (https://github.com/elastic/elasticsearch/issues/118780) -
ASYNC_OPERATOR_WARNINGS_FIX
Fix for async operator sometimes completing the driver without emitting the stored warnings -
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
Fix for https://github.com/elastic/elasticsearch/issues/117054 -
FIX_STATS_BY_FOLDABLE_EXPRESSION_2
Fix for https://github.com/elastic/elasticsearch/issues/114714, again -
METADATA_SCORE
Support the "METADATA _score" directive to enable _score column. -
MATCH_ADDITIONAL_TYPES
Additional types for match function and operator -
FIXED_REGEX_FOLD
Fix for regex folding with case-insensitive pattern https://github.com/elastic/elasticsearch/issues/118371 -
FULL_TEXT_FUNCTIONS_DISJUNCTIONS
Full text functions can be used in disjunctions -
SEMANTIC_TEXT_FIELD_CAPS
Change field caps response for semantic_text fields to be reported as text -
OPTIONAL_NAMED_ARGUMENT_MAP_FOR_FUNCTION
Support named argument for function in map format. -
LOOKUP_JOIN_NO_ALIASES
Disabled support for index aliases in lookup joins -
FULL_TEXT_FUNCTIONS_DISJUNCTIONS_COMPUTE_ENGINE
Full text functions can be used in disjunctions as they are implemented in compute engine -
MATCH_FUNCTION_OPTIONS
Support match options in match function -
QUERY_STRING_FUNCTION_OPTIONS
Support options in the query string function. -
AGGREGATE_METRIC_DOUBLE_V0
Enable aggregate_metric_double in non-snapshot builds -
AGGREGATE_METRIC_DOUBLE_DEFAULT_METRIC
Support running all aggregations on aggregate_metric_double using the default metric -
AGGREGATE_METRIC_DOUBLE_AVG_AS_DEFAULT_METRIC
Support avg as a possible default metric for aggregate_metric_double -
AGGREGATE_METRIC_DOUBLE_NO_ROWS_COUNT_0
Return 0 (instead of null) for count on AMD when there are no rows -
AGGREGATE_METRIC_DOUBLE_BINARY_OPERATORS
Support binary operators for aggregate_metric_double -
CHANGE_POINT
Support change point detection "CHANGE_POINT". -
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 -
INLINESTATS_V11
Fixes a series of issues with inlinestats which had an incomplete implementation after lookup and inlinestats were refactored. -
INLINE_STATS
Renamed `INLINESTATS` to `INLINE STATS`. -
INLINE_STATS_PRECEEDED_BY_SORT
Added support for having INLINE STATS preceded by a SORT clause, now executable in certain cases. -
SUPPORT_PARTIAL_RESULTS
Support partial_results -
RERANK
Support for RERANK command -
COMPLETION
Support for COMPLETION command -
MIXED_NUMERIC_TYPES_IN_CASE_GREATEST_LEAST
Allow mixed numeric types in conditional functions - case, greatest and least -
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
Full text functions can be scored when being part of a disjunction -
TO_LOWER_MV
DoTO_LOWERandTO_UPPERprocess all field values? -
CHUNK_MV
DoesCHUNKprocess all field values? -
DOUBLE_PARAMETER_MARKERS_FOR_IDENTIFIERS
Use double parameter markers to represent field or function names. -
NON_FULL_TEXT_FUNCTIONS_SCORING
Non full text functions do not contribute to score -
REPORT_ORIGINAL_TYPES
The_queryAPI now reports the original types. -
METRICS_COMMAND
Deprecated.The metrics command -
METRICS_GROUP_BY_ALL
Enables automatically grouping by all dimension fields in TS mode queries -
DOCUMENTS_FOUND_AND_VALUES_LOADED
Are thedocuments_foundandvalues_loadedfields available in the response and profile? -
INDEX_COMPONENT_SELECTORS
Index component selector syntax (my-data-stream-name::failures) -
MAKE_NUMBER_OF_CHANNELS_CONSISTENT_WITH_LAYOUT
Make numberOfChannels consistent with layout in DefaultLayout by removing duplicated ChannelSet. -
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_LAYOUTSupercedesMAKE_NUMBER_OF_CHANNELS_CONSISTENT_WITH_LAYOUT. -
FILTER_IN_CONVERTED_NULL
Support for filter in converted null. See ESQL: Fix `NULL` handling in `IN` clause #125832 -
FIX_DOUBLY_RELEASED_NULL_BLOCKS_IN_VALUESOURCEREADER
When creating constant null blocks inValuesSourceReaderOperator, 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 -
QUERY_MONITORING
Listing queries and getting information on a specific query. -
FORK_V9
Support for FORK out of snapshot -
FORK_UNION_TYPES
Support for union types in FORK -
SUBQUERY_IN_FROM_COMMAND
Support non-correlated subqueries in the FROM clause. -
SUBQUERY_IN_FROM_COMMAND_WITHOUT_IMPLICIT_LIMIT
Support non-correlated subqueries in the FROM clause without implicit limit. -
SUBQUERY_IN_FROM_COMMAND_APPEND_IMPLICIT_LIMIT_TO_UNBOUNDED_SORT_IN_SUBQUERY
public static final EsqlCapabilities.Cap SUBQUERY_IN_FROM_COMMAND_APPEND_IMPLICIT_LIMIT_TO_UNBOUNDED_SORT_IN_SUBQUERYAppend an implicit limit to unbounded sorts in subqueries in the FROM clause. -
SUBQUERY_IN_FROM_COMMAND_PRUNE_NO_FIELDS
Prune no-fields in subquery project. -
SUBQUERY_IN_FROM_COMMAND_UNION_TYPES_CONFLICT_RESOLUTION
Fix for union types when fields have conflicting types between subqueries. https://github.com/elastic/elasticsearch/issues/142499 -
VIEWS_IN_CLUSTER_STATE
Support for views in cluster state (and REST API). -
VIEWS_WITH_NO_BRANCHING
Basic Views with no branching (do not need subqueries or FORK). -
VIEWS_CRUD_AS_INDEX_ACTIONS
Views crud actions as index actions -
VIEWS_WITH_BRANCHING
Views with branching (requires subqueries/FORK). -
VIEWS_TELEMETRY
Added telemetry for views -
VIEWS_DEDUPLICATION_BUGFIX
Fixed a bug where views are incorrectly de-duplicated. -
TO_IP_LEADING_ZEROS
Support for theleading_zerosnamed parameter. -
USAGE_CONTAINS_TOOK
Does the usage information for ESQL contain a histogram oftookvalues? -
LOADING_NON_INDEXED_IP_FIELDS
Support loading of ip fields if they are not indexed. -
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 -
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
Correctly ask for all fields from lookup indices even when there is e.g. aDROP *fieldafter. See ES|QL: missing columns for wildcard drop after lookup join #129561 -
SCORE_FUNCTION
score function -
SAMPLE_V3
Support for the SAMPLE command -
SUGGESTED_CAST
The_queryAPI now gives a cast recommendation if multiple types are found in certain instances. -
TO_LOWER_EMPTY_STRING
Guards a bug fix matchingTO_LOWER(f) == "". -
INCREASE
Support for INCREASE, DELTA timeseries aggregations. -
DELTA_TS_AGG
-
CLAMP_FUNCTIONS
-
RESOLVE_GROUPINGS_BEFORE_RESOLVING_REFERENCES_TO_GROUPINGS_IN_AGGREGATIONS
public static final EsqlCapabilities.Cap RESOLVE_GROUPINGS_BEFORE_RESOLVING_REFERENCES_TO_GROUPINGS_IN_AGGREGATIONSResolve groupings before resolving references to groupings in the aggregations. -
AGG_SAMPLE
Support for the SAMPLE aggregation function -
FULL_TEXT_FUNCTIONS_IN_STATS_WHERE
Full text functions in STATS -
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 -
FIX_JOIN_OUTPUT_MERGING
Allow the merging of the children to useAliases, instead of justReferenceAttributes. -
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
TheROUND_TOfunction. -
COPY_SIGN
Support for theCOPY_SIGNfunction. -
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. -
LUCENE_QUERY_EVALUATOR_QUERY_REWRITE
LuceneQueryEvaluatorrewrites 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. -
PARAMETER_FOR_LIMIT
Support parameters for LIMIT command. -
NORMALIZED_LIMIT_ERROR_MESSAGE
Changed and normalized the LIMIT error message. -
DENSE_VECTOR_FIELD_TYPE_RELEASED
Dense vector field type support -
ENABLE_LOOKUP_JOIN_ON_ALIASES
Enable support for index aliases in lookup joins -
UPDATE_LOOKUP_JOIN_ERROR_MESSAGES
Lookup error messages were updated to make them a bit easier to understand. -
RLIKE_WITH_EMPTY_LANGUAGE_PATTERN
Allows RLIKE to correctly handle the "empty language" flag, `#`. -
ENABLE_LOOKUP_JOIN_ON_REMOTE
Enable support for cross-cluster lookup joins. -
REMOTE_ENRICH_AFTER_LOOKUP_JOIN
Fix the planning of| ENRICH _remote:policywhen there's a preceding| LOOKUP JOIN, see java.lang.ClassCastException when combining LOOKUP JOIN and remote ENRICH -
MATCH_PHRASE_FUNCTION
MATCH PHRASE function -
KNN_FUNCTION_V5
Support knn function -
TEXT_EMBEDDING_FUNCTION
Support for theTEXT_EMBEDDINGfunction for generating dense vector embeddings. -
LIKE_WITH_LIST_OF_PATTERNS
Support for the LIKE operator with a list of wildcards. -
LIKE_LIST_ON_INDEX_FIELDS
-
PARAMETER_FOR_SAMPLE
Support parameters for SAMPLE command. -
NO_PLAIN_STRINGS_IN_LITERALS
From now, Literal only accepts strings as BytesRefs. No java.lang.String anymore. https://github.com/elastic/elasticsearch/issues/129322 -
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 -
SET_COMMAND
Support for the SET command. -
DATE_TRUNC_TIMEZONE_SUPPORT
Support timezones in DATE_TRUNC and dependent functions. -
DATE_DIFF_TIMEZONE_SUPPORT
Support timezones in DATE_DIFF. -
KQL_QSTR_TIMEZONE_SUPPORT
Support timezones in KQL and QSTR. -
TYPE_CONVERSION_TIMEZONE_SUPPORT
Support timezones in the conversion utils and functions, like TO_STRING. -
DATE_FORMAT_DATE_PARSE_TIMEZONE_SUPPORT
Support timezones in DATE_FORMAT and DATE_PARSE. -
ADD_SUB_OPERATOR_TIMEZONE_SUPPORT
Support timezones in + and - operators. -
EXPLAIN
(Re)Added EXPLAIN command -
EXPLAIN_WITH_REMOTE_PLANS
EXPLAIN command with remote plans (5 columns: cluster, node, role, type, plan) -
RLIKE_WITH_LIST_OF_PATTERNS
Support for the RLIKE operator with a list of regexes. -
FUSE_V6
FUSE command -
LIKE_ON_INDEX_FIELDS
Support improved behavior for LIKE operator when used with index fields. -
NO_BRACKETS_IN_UNQUOTED_INDEX_NAMES
Forbid usage of brackets in unquoted index and enrich policy names https://github.com/elastic/elasticsearch/issues/130378 -
COSINE_VECTOR_SIMILARITY_FUNCTION
Cosine vector similarity function -
FIXED_PROFILE_SERIALIZATION
Fixed some profile serialization issues -
LOOKUP_JOIN_ON_MULTIPLE_FIELDS
Support for lookup join on multiple fields. -
DOT_PRODUCT_VECTOR_SIMILARITY_FUNCTION
Dot product vector similarity function -
L1_NORM_VECTOR_SIMILARITY_FUNCTION
l1 norm vector similarity function -
L2_NORM_VECTOR_SIMILARITY_FUNCTION
l2 norm vector similarity function -
CATEGORIZE_OPTIONS
Support for the options field of CATEGORIZE. -
DECAY_FUNCTION
Decay function for custom scoring. -
DECAY_FUNCTION_PARAMETER_CONVERSION
Fix conversions for parameters forDECAY. -
CORRECT_SKIPPED_SHARDS_COUNT
Support correct counting of skipped shards. -
MAGNITUDE_SCALAR_VECTOR_FUNCTION
-
DENSE_VECTOR_FIELD_TYPE_BYTE_ELEMENTS
Byte elements dense vector field type support. -
DENSE_VECTOR_FIELD_TYPE_BIT_ELEMENTS
Bit elements dense vector field type support. -
GENERIC_VECTOR_FORMAT
Support directIO rescoring and `bfloat16` for `bbq_hnsw` and `bbq_disk`, and `bfloat16` for `hnsw` ans `bbq_flat` index types. -
VECTOR_SIMILARITY_FUNCTIONS_SUPPORT_NULL
Support null elements on vector similarity functions -
HAMMING_VECTOR_SIMILARITY_FUNCTION
Support for vector Hamming distance. -
TBUCKET
Support for tbucket function -
NAME_QUALIFIERS
Allow qualifiers in attribute names. -
URL_ENCODE
URL encoding function. -
URL_ENCODE_COMPONENT
URL component encoding function. -
URL_DECODE
URL decoding function. -
LOOKUP_JOIN_ON_BOOLEAN_EXPRESSION
Allow lookup join on boolean expressions -
LOOKUP_JOIN_WITH_FULL_TEXT_FUNCTION
Lookup join with Full Text Function or other Lucene Pushable condition to be applied to the lookup index used -
LOOKUP_JOIN_WITH_FULL_TEXT_FUNCTION_BUGFIX
Bugfix for lookup join with Full Text Function -
ENABLE_FORK_FOR_REMOTE_INDICES_V2
FORK with remote indices -
STATS_WITH_FILTERED_SURROGATE_FIXED
Bugfix for STATS {{expression}} WHERE {{condition}} when the expression is replaced by something else on planning e.g. STATS SUM(1) WHERE x==3 is replaced by STATS MV_SUM(const)*COUNT(*) WHERE x == 3. -
TO_DENSE_VECTOR_FUNCTION
TO_DENSE_VECTOR function. -
COALESCE_DENSE_VECTOR
COALESCE function support for dense_vector type. -
QUERY_PARAMS_MULTI_VALUES
Multivalued query parameters -
FIX_PERCENTILE_PRECISION
-
INLINE_STATS_SUPPORTS_REMOTE
INLINE STATS supports remote indices -
INLINE_STATS_WITH_UNION_TYPES_IN_STUB_RELATION
-
TS_COMMAND_V0
Support TS command in non-snapshot builds -
TS_RENAME_TIMESTAMP_ERROR_MESSAGE
Custom error for renamed timestamp -
FIRST_LAST_OVER_TIME_COUNTER_SUPPORT
Add support for counter doubles, ints, and longs in first_ and last_over_time -
FIX_ALIAS_ID_WHEN_DROP_ALL_AGGREGATES
-
PERCENTILE_OVER_TIME
Percentile over time and other ts-aggregations -
VARIANCE_STDDEV_OVER_TIME
-
TS_LINREG_DERIVATIVE
-
TS_RATE_DATENANOS
-
TS_RATE_DATENANOS_2
-
TS_DERIV_DATENANOS
-
RATE_WITH_INTERPOLATION
Rate and increase calculations use interpolation at the boundaries between time buckets -
RATE_WITH_INTERPOLATION_V2
-
RATE_WITH_INTERPOLATION_V3
V3 fixes a bug on how we handle single-value time buckets for INCREASE with the sole value falling onto the bucket boundary. -
INLINE_STATS_FIX_PRUNING_NULL_FILTER
INLINE STATS fix incorrect prunning of null filtering https://github.com/elastic/elasticsearch/pull/135011 -
INLINE_STATS_FIX_OPTIMIZED_AS_LOCAL_RELATION
-
DENSE_VECTOR_AGG_METRIC_DOUBLE_IF_FNS
-
DENSE_VECTOR_AGG_METRIC_DOUBLE_IF_VERSION
-
FUSE_L2_NORM
FUSE L2_NORM score normalization support -
METADATA_TSID_FIELD
Support for requesting the "_tsid" metadata field. -
TS_PERMIT_TEXT_BECOMING_KEYWORD_WHEN_GROUPED_ON
Permit the data type of a field changing from TEXT to KEYWORD when being grouped on in aggregations on the TS command. -
TS_ORIGINAL_TYPES_BUG_FIXED
Fix for a bug where if you queried multiple TS indices with a field mapped to different types, the original types/suggested cast sections of the return result would be empty. -
FIX_NO_COLUMNS
Fix management of plans with no columns https://github.com/elastic/elasticsearch/issues/120272 -
FIX_LIMIT_TRUNCATION_WITH_ZERO_COLUMNS
Fix LimitOperator truncation with zero columns https://github.com/elastic/elasticsearch/issues/142473 -
DOTS_IN_FUSE
Support for dots in FUSE attributes -
DATE_RANGE_FIELD_TYPE
Support for the DATE_RANGE field type. -
NETWORK_DIRECTION
Network direction function. -
TEMPORAL_AMOUNT_M
Support for the literalmsuffix as an alias forminutein temporal amounts. -
PACK_DIMENSIONS_IN_TS
Pack dimension values in TS command -
EXPONENTIAL_HISTOGRAM_TECH_PREVIEW
Support for exponential_histogram fields in the state of when it first was released into tech preview. -
TDIGEST_TECH_PREVIEW
Support for the T-Digest elasticsearch field mapper and ES|QL type when they were released into tech preview. -
CASE_SUPPORT_FOR_SUMMARY_FIELDS
Adds the ability for theCaseto return values of type TDIGEST, type HISTOGRAM, and type AGGREGATE_METRIC_DOUBLE. -
HISTOGRAM_RELEASE_VERSION
Histogram field integration -
COUNT_OF_HISTOGRAM_TYPES
Support for running the Count aggregation on t-digest and exponential histogram types -
ALLOW_CASTING_IN_DEFAULT_TS_AGGS
Fix for 140670, this allows for type conversion functions with no further computation to be evaluated inside default wrapping _over_time functions. -
FIX_FILTER_ORDINALS
Create new block when filtering OrdinalBytesRefBlock -
GLOBAL_TIMEZONE_PARAMETER_WITH_OUTPUT
"time_zone" parameter in request body and inSET time_zone="x".Originally `GLOBAL_TIMEZONE_PARAMETER`, but changed to "_WITH_OUTPUT" so tests don't fail after formatting the _query output.
-
DATE_PARSE_OPTIONS
Optional options argument for DATE_PARSE -
GROK_MULTI_PATTERN
Allow multiple patterns for GROK command -
INLINE_STATS_PRUNE_COLUMN_FIX
Fix pruning of columns when shadowed in INLINE STATS -
INLINE_STATS_DOUBLE_RELEASE_FIX
Fix double release in inline stats when LocalRelation is reused -
PUSHING_DOWN_EVAL_WITH_SCORE
Support for pushing down EVAL with SCORE https://github.com/elastic/elasticsearch/issues/133462 -
FIX_STATS_CLASSCAST_EXCEPTION
Fix for ClassCastException in STATS https://github.com/elastic/elasticsearch/issues/133992 https://github.com/elastic/elasticsearch/issues/136598 -
ATTRIBUTE_EQUALS_RESPECTS_NAME_ID
Fix attribute equality to respect the name id of the attribute. -
LOOKUP_JOIN_SEMANTIC_FILTER_DEDUP
Fix for lookup join filter pushdown not using semantic equality. This prevents duplicate filters from being pushed down when they are semantically equivalent, causing an infinite loop where BooleanSimplification will simplify the original and duplicate filters, so they'll be pushed down again... -
LOOKUP_JOIN_SORT_WARNING
Warning when SORT is followed by LOOKUP JOIN which does not preserve order. -
FORBID_LIMIT_BEFORE_INLINE_STATS
Temporarily forbid the use of an explicit or implicit LIMIT before INLINE STATS. -
HANDLE_DETERMINIZATION_COMPLEXITY
Catch-and-rethrow determinization complexity errors as 400s rather than 500s -
INLINE_STATS_WITH_NO_COLUMNS
https://github.com/elastic/elasticsearch/issues/136851 -
FIX_MV_CONSTANT_EQUALS_FIELD
-
BASE_CONVERSION
Support for base conversion in TO_LONG and TO_INTEGER -
FIX_REPLACE_ALIASING_EVAL_WITH_PROJECT_SHADOWING
ReplaceAliasingEvalWithProjectdid not fully account for shadowing. https://github.com/elastic/elasticsearch/issues/137019. -
CHUNK_FUNCTION_V2
Chunk function. -
VECTOR_SIMILARITY_FUNCTIONS_PUSHDOWN
Support for vector similarity functions pushdown -
FIX_MV_CONSTANT_COMPARISON_FIELD
-
FULL_TEXT_FUNCTIONS_ACCEPT_NULL_FIELD
-
FIRST_AGG_WITH_NULL_AND_MV_SUPPORT
Make FIRST agg work with null and multi-value fields. -
LAST_AGG_WITH_NULL_AND_MV_SUPPORT
Make LAST agg work with null and multi-value fields. -
FIRST_LAST_AGG_WITH_DATES
Allow FIRST/LAST aggs to accept DATE/DATE_NANOS in the search field https://github.com/elastic/elasticsearch/issues/142137 -
ST_EXTENT_AGG_NULL_SUPPORT
Allow ST_EXTENT_AGG to gracefully handle missing spatial shapes -
TIME_SERIES_WINDOW_V1
Support grouping window in time-series for example: rate(counter, "1m") or avg_over_time(field, "5m") -
TIME_SERIES_WINDOW_SMALLER_THAN_BUCKET
Supporting grouping window in time-series where the window is smaller than the time bucket -
LIKE_PARAMETER_SUPPORT
Support like/rlike parameters https://github.com/elastic/elasticsearch/issues/131356 -
PROMQL_COMMAND_V0
PromQL support in ESQL, in the state it was when first available in non-snapshot builds. -
PROMQL_MATH_V0
Bundle flag for PromQL math functions. -
ACOSH_FUNCTION
Support for the ACOSH function. -
ASINH_FUNCTION
Support for the ASINH function. -
ATANH_FUNCTION
Support for the ATANH function. -
PROMQL_BINARY_COMPARISON_V0
Initial support for simple binary comparisons in PromQL. Only top-level comparisons are supported where the right-hand side is a scalar. -
PROMQL_TIME
Support for PromQL time() function. -
PROMQL_BUCKETS_PARAMETER
Support for deriving PromQL time buckets from [start, end, buckets] when [step] is omitted. -
PROMQL_UNMAPPED_FIELDS_FILTER_NULLS
Queries for unmapped fields return no data instead of an error. Also filters out nulls from results. -
PROMQL_NESTED_AGGREGATES
Support for nested across-series aggregates in PromQL. E.g., avg(sum by (cluster) (rate(foo[5m]))) -
PROMQL_POST_PROCESSING_STATS
Support post-processing STATS commands after PROMQL source commands. -
PROMQL_SCALAR
PromQL scalar() function support. -
PROMQL_IMPLICIT_RANGE_SELECTOR
Support implicit conversion from an instant selector to a range selector for range-vector functions. For example, `rate(metric)` is interpreted as `rate(metric[step])`. -
PROMQL_WITHOUT_GROUPING
Support for PromQLwithoutgrouping. -
ESQL_WITHOUT_GROUPING
Support for`WITHOUT` grouping function that excludes specific dimensions from time-series grouping. -
KNN_FUNCTION_OPTIONS_K_VISIT_PERCENTAGE
KNN function adds support for k and visit_percentage options -
METRICS_GROUP_BY_ALL_WITH_TS_DIMENSIONS
Enables automatically grouping by all dimension fields in TS mode queries and outputs the _timeseries column with all the dimensions. -
FIX_ENRICH_ALIAS_CYCLE_IN_DEDUPLICATE_AGGS
Fix for circular reference in alias chains during PushDownEnrich and aggregate deduplication. Prevents "Potential cycle detected" errors when aliases reference each other. https://github.com/elastic/elasticsearch/issues/138346 -
TOP_SNIPPETS_FUNCTION
Returns the top snippets for given text content and associated query. -
TOP_SNIPPETS_FUNCTION_STRING_CONFIG
A fix allowing theTOP_SNIPPETSfunction to process string config parameters like the other functions. -
TOP_SNIPPETS_MV
DoesTOP_SNIPPETSprocess all field values? -
FIX_STATS_MV_CONSTANT_FOLD
Fix for multi-value constant propagation after GROUP BY. When a multi-value constant (e.g., [1, 2]) is used as GROUP BY key, the aggregation explodes it into single values. Propagating the original multi-value literal after the Aggregate would incorrectly treat the field as still being multi-valued. https://github.com/elastic/elasticsearch/issues/135926 -
FIX_INLINE_STATS_INCORRECT_PRUNNING
https://github.com/elastic/elasticsearch/issues/138283 -
FIX_PRESENT_AND_ABSENT_ON_STATS_WITH_FALSE_FILTER
ReplaceStatsFilteredOrNullAggWithEvalreplaced a stats with false filter with null withPresentorAbsent -
ENABLE_REDUCE_NODE_LATE_MATERIALIZATION
Enables late materialization on node reduce. See also QueryPragmas.NODE_LEVEL_REDUCTION -
FIX_AGG_ON_NULL_BY_REPLACING_WITH_EVAL
ReplaceStatsFilteredOrNullAggWithEvalnow replaces anAggregateFunctionwith null value with anEval. https://github.com/elastic/elasticsearch/issues/137544 -
FIX_SUM_AGG_LONG_OVERFLOW
Makes SUM(long) agg return null+warning instead of a 500 overflow. -
METADATA_TIER_FIELD
Support for requesting the "_tier" metadata field. -
FIX_FOLD_COALESCE
Fix folding of coalesce function https://github.com/elastic/elasticsearch/issues/139344 -
DATE_TIME_EXCEPTIONS_HANDLED
Exceptions parsing date-times are thrown as IllegalArgumentException -
ENRICH_DENSE_VECTOR_BUGFIX
Enrich works with dense_vector fields -
DENSE_VECTOR_ARITHMETIC
Support for dense_vector arithmetic operations (+, -, *, /) -
DENSE_VECTOR_SCALAR_ARITHMETIC
Support for arithmetic operations (+, -, *, /) between dense_vector and scalar values -
DENSE_VECTOR_AGG_FUNCTIONS
Dense_vector aggregation functions -
ROUTING_FUNCTION_UPDATE
Marks the move to the hash(doc) % shard_count routing function. Added in #137062. -
TS_STATS_BINARY_OPS
Adds support for binary operations (such as addition, subtraction, etc.) to the TS|STATS command. -
FIX_INLINE_STATS_GROUP_BY_NULL
Fix for INLINE STATS GROUP BY null being incorrectly pruned by PruneLeftJoinOnNullMatchingField. For INLINE STATS, the right side of the join can be Aggregate or LocalRelation (when optimized). The join key is always the grouping, and since STATS supports GROUP BY null, pruning the join when the join key (grouping) is null would incorrectly change the query results. This fix ensures PruneLeftJoinOnNullMatchingField only applies to LOOKUP JOIN (where right side is EsRelation). https://github.com/elastic/elasticsearch/issues/139887 -
FIX_NULL_COMPARISON_TYPE_CHECK
Fix null comparison type check in binary comparisons. Null should be compatible with any type in binary comparisons. https://github.com/elastic/elasticsearch/issues/140460 -
CONDITIONAL_BLOCK_LOADER_FOR_TEXT_FIELDS
Adds a conditional block loader for text fields that prefers using the sub-keyword field whenever possible. -
METADATA_WILDCARDS
Allow wildcards in FROM METADATA, eg FROM idx METADATA _ind* -
RATE_FIX_RESETS_MULTIPLE_SEGMENTS
Fixes reset calculation in rates where partitioning data into multiple slices can lead to incorrect results. -
APPROXIMATION_V6
Support query approximation. -
FIX_SCORE_OPERATOR_PLANNING
Create a ScoreOperator only when shard contexts are available -
PERIODIC_EMIT_PARTIAL_AGGREGATION_RESULTS
Periodically emit partial aggregation results when the number of groups exceeds the threshold. -
METADATA_SIZE_FIELD
Support for requesting the "_size" metadata field when the mapper-size plugin is enabled. -
FIX_TO_IP_LEADING_ZEROS_OCTAL
Fix for 141627, TO_IP with leading_zeros=octal generates proper warning and returns null when given invalid input. -
TDIGEST_TIME_SERIES_METRIC
Support for configuring T-Digest elasticsearch field as a time series metric. -
TO_EXPONENTIAL_HISTOGRAM
Support for theTO_EXPONENTIAL_HISTOGRAMconversion function. -
TO_TDIGEST_FROM_EXPONENTIAL_HISTOGRAM
Support for convertingexponential_histogramfields viaTO_TDIGEST. -
TDIGEST_MEDIAN
Support forMEDIANaggregation ontdigesttype fields. -
TDIGEST_FIRST_LAST_OVER_TIME
Support forFIRST_OVER_TIMEandLAST_OVER_TIMEontdigesttype fields. -
TDIGEST_PERCENTILES_USE_MERGING_DIGEST
A bugfix we applied to the HISTOGRAM_PERCENTILE algorithm on the tdigest type. We previously were using hybrid-digests by accident and now use a merging digest. -
TS_COMMAND_GROUP_ON_ALIASES
Fix bug with TS command where you can't group on aliases (i.e. `by c = cluster`) -
TS_IMPLICIT_TIMESTAMP_SORT
Implicit SORT @timestamp DESC for TS queries without STATS or explicit SORT. -
INLINE_STATS_DROP_GROUPINGS_FIX
Fixes https://github.com/elastic/elasticsearch/issues/139359 -
MMR_V2
Support for the MMR result diversification command -
URI_PARTS_COMMAND
Supports theURI_PARTS) command. -
METRICS_INFO_COMMAND
Support for the METRICS_INFO command. -
TBUCKET_FROM_TO
Support for TBUCKET with numeric bucket count and optional from/to parameters. -
REGISTERED_DOMAIN_COMMAND
Supports the REGISTERED_DOMAIN command. -
STR_COMMANDS_ACCEPT_NULL
TheGROK,DISSECT,URI_PARTS, andREGISTERED_DOMAINcommands acceptnulltyped parameters and producenullresults. -
EXTERNAL_COMMAND
Support for the EXTERNAL command (datasource access). -
EXTERNAL_CSV_IP_SUPPORT
Support for the EXTERNAL command (datasource access). -
INLINE_STATS_WITH_CONSTANTS
https://github.com/elastic/elasticsearch/issues/142219 -
FIX_AGGREGATION_FRAMEWORK_CHANNELS
Fix for an ArrayIndexOutOfBoundsException in the aggregation framework when the same field is passed twice. https://github.com/elastic/elasticsearch/issues/142180 -
TS_INFO_COMMAND
Support for the TS_INFO command — per-time-series granularity variant of METRICS_INFO. -
DENSE_VECTOR_SUM_FUNCTION
Dense_vector SUM aggregation function -
FIX_AGG_FIRST_LAST_FOLDABLES_IN_SORT_FIELD
Support passing constants and null in the second parameter of FIRST/LAST aggs. -
ROW_FIELD_RESOLUTION
Support for intra-row field references in ROW command. https://github.com/elastic/elasticsearch/issues/140217 -
FIRST_LAST_AGG_ON_INTS
Support aggregating on integers in FIRST/LAST. -
FIX_UNMAPPED_FIELDS_IN_ESRELATION
Fix for KQL/QSTR functions failing when used with unmapped fields in NULLIFY mode. Unmapped fields are now added directly to EsRelation output with NULL type instead of using Eval nodes. https://github.com/elastic/elasticsearch/issues/142968 -
DENSE_VECTOR_EQUALITY
Support for dense_vector equality and inequality operators (==, !=). -
FIX_DISPLAYING_TS_DIMENSIONS_IN_METRICS_GROUP_BY_ALL
Fix for not including metadata _doc_count in the _timeseries column https://github.com/elastic/elasticsearch/issues/143464 -
MATCH_FUNCTION_ZERO_TERMS_QUERY
Support for the zero_terms_query option in the match function. https://github.com/elastic/elasticsearch/issues/143070 -
FIX_FULL_TEXT_FUNCTIONS_ON_RENAMED_FIELDS
Fix for full-text functions failing on renamed fields. https://github.com/elastic/elasticsearch/issues/143859 -
TOP_SNIPPETS_FOLDABLE_QUERY_CHECK
TOP_SNIPPETS checks that the query is foldable -
FIX_FORK_UNMAPPED_NULLIFY
Fixes an analysis bug inFORKwithunmapped_fields="nullify". Preserve existing attributeNameIds so that references from upper plan nodes remain valid after sub-plans are updated. Only genuinely new attributes get fresh NameIds. Keeping the same attributes can have unintended side effects when applying optimizations like constant folding. https://github.com/elastic/elasticsearch/issues/142762 -
FIX_LIMIT_ZERO_IN_STATS_BY_ALL
Fix for the STATS BY ALL with LIMIT 0. https://github.com/elastic/elasticsearch/issues/144024 -
FIX_PASSTHROUGH_FIELD_CAPS_OBJECT_PARENT
Fix field caps incorrectly synthesizing object parents under subobjects:false (passthrough) mappers, causing false type conflicts in ES|QL when querying across indices. https://github.com/elastic/elasticsearch/issues/144179 -
ESQL_LIMIT_BY
Enables the feature LIMIT n BY expr1, expr2 for retaining at most n docs per group. The feature will not work if we had SORT | LIMIT n BY -
ESQL_TOPN_BY
Enables the SORT | LIMIT n BY expr1, expr2 support, see ESQL_LIMIT_BY for more context -
LIMIT_BY_ENRICH_FIX
Corrects a bug with ENRICH when a shard does not contain an index field and we use LIMIT BY on top -
FIX_TBUCKET_TARGET_COUNT_WINDOW_VALIDATION
Fix window validation in time-series aggregations when TBUCKET uses a numeric target bucket count. -
CHANGE_POINT_SUPPORT_NULL_COLUMN
-
MMR_FOLDABLE_QUERY_VECTOR_FIX
MMR fixes for constant folding -
CHANGE_POINT_ARGS_ANY_ORDER
Support CHANGE_POINT arguments in any order -
FIX_DIV_ERROR_MESSAGE
-
AUTO_PARTITION_DOCS_THRESHOLD
-
UNMAPPED_FIELDS_DEFAULT_SETTING_RENAME
Rename theunmapped_fieldsdefault setting from"fail"to"default". See https://github.com/elastic/elasticsearch/issues/144833 -
TIME_SERIES_WINDOW_NON_MULTIPLE
Support window durations that are larger than but not exact multiples of the time bucket for time-series aggregations (e.g., rate(counter, 7 minutes) with TBUCKET(5 minutes)). -
FIX_SUM_OF_NULL_OPTIMIZATION
Fix forSUM(null)producing a type mismatch after surrogate expansion. See https://github.com/elastic/elasticsearch/issues/144914 -
PROPAGATE_EMPTY_RELATION_PAST_JOINS
-
USER_AGENT_COMMAND
Supports theUSER_AGENTcommand. -
FIX_SAMPLE_AFTER_KQL_OR_QSTR
Fix full-text functions being rejected after SAMPLE. -
KEYWORDS_MV_COUNT_AS_SINGLE_VALUE_FIX
-
PARQUET_ORC_STARTS_WITH_PUSHDOWN
Parquet and ORC filter pushdown for StartsWith (prefix range predicates). -
EARLIEST_LATEST_AGGS
Alias for calling FIRST (or LAST) and only passing the search field. The sort field is implicitly set to @timestamp. These are not time series agg functions. -
FIX_FULL_TEXT_FUNCTIONS_ON_CONSTANT_KEYWORD
Fix for full-text functions (MATCH, MATCH_PHRASE, :) on constant_keyword fields. The optimizer no longer replaces their field arguments with literal constants. See https://github.com/elastic/elasticsearch/issues/145570
-
-
Method Details
-
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
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 nameNullPointerException- if the argument is null
-
isEnabled
public boolean isEnabled() -
capabilityName
-