3.3.0
Version 3.3.0 Release Notes
Compatible with OpenSearch and OpenSearch Dashboards version 3.3.0
Added
- Expand fetch phase profiling to support inner hits and top hits aggregation phases (#18936)
- [Rule-based Auto-tagging] add the schema for security attributes (#19345)
- Add temporal routing processors for time-based document routing (#18920)
- Implement Query Rewriting Infrastructure (#19060)
- The dynamic mapping parameter supports false_allow_templates (#19065, #19097)
- [Rule-based Auto-tagging] restructure the in-memory trie to store values as a set (#19344)
- Add a toBuilder method in EngineConfig to support easy modification of configs (#19054)
- Add StoreFactory plugin interface for custom Store implementations (#19091)
- Use S3CrtClient for higher throughput while uploading files to S3 (#18800)
- [Rule-based Auto-tagging] bug fix on Update Rule API with multiple attributes (#19497)
- Add a dynamic setting to change skip_cache_factor and min_frequency for querycache (#18351)
- Add overload constructor for Translog to accept Channel Factory as a parameter (#18918)
- Addition of fileCache activeUsage guard rails to DiskThresholdMonitor (#19071)
- Add subdirectory-aware store module with recovery support (#19132)
- [Rule-based Auto-tagging] Modify get rule api to suit nested attributes (#19429)
- [Rule-based Auto-tagging] Add autotagging label resolving logic for multiple attributes (#19486)
- Field collapsing supports search_after (#19261)
- Add a dynamic cluster setting to control the enablement of the merged segment warmer (#18929)
- Publish transport-grpc-spi exposing QueryBuilderProtoConverter and QueryBuilderProtoConverterRegistry (#18949)
- Support system generated search pipeline. (#19128)
- Add
epoch_microsdate format (#14669) - Grok processor supports capturing multiple values for same field name (#18799)
- Add support for search tie-breaking by _shard_doc (#18924)
- Upgrade opensearch-protobufs dependency to 0.13.0 and update transport-grpc module compatibility (#19007)
- Add new extensible method to DocRequest to specify type (#19313)
- [Rule based auto-tagging] Add Rule based auto-tagging IT (#18550)
- Add all-active ingestion as docrep equivalent in pull-based ingestion (#19316)
- Adding logic for histogram aggregation using skiplist (#19130)
- Add skip_list param for date, scaled float and token count fields (#19142)
- Enable skip_list for @timestamp field or index sort field by default (#19480)
- Implement GRPC MatchPhrase, MultiMatch queries (#19449)
- Optimize gRPC transport thread management for improved throughput (#19278)
- Implement GRPC Boolean query and inject registry for all internal query converters (#19391)
- Added precomputation for rare terms aggregation (#18978)
- Implement GRPC Script query (#19455)
- [Search Stats] Add search & star-tree search query failure count metrics (#19210)
- [Star-tree] Support for multi-terms aggregation (#18398)
- Add stream search enabled cluster setting and auto fallback logic (#19506)
- Implement GRPC Exists, Regexp, and Wildcard queries (#19392)
- Implement GRPC GeoBoundingBox, GeoDistance queries (#19451)
- Implement GRPC Ids, Range, and Terms Set queries (#19448)
- Implement GRPC Nested query (#19453)
- Add sub aggregation support for histogram aggregation using skiplist (19438)
- Optimization in String Terms Aggregation query for Large Bucket Counts (#18732)
- New cluster setting search.query.max_query_string_length (#19491)
- Add
StreamNumericTermsAggregatorto allow numeric term aggregation streaming (#19335) - Query planning to determine flush mode for streaming aggregations (#19488)
- Harden the circuit breaker and failure handle logic in query result consumer (#19396)
- Add streaming cardinality aggregator (#19484)
- Disable request cache for streaming aggregation queries (#19520)
- [WLM] add a check to stop workload group deletion having rules (#19502)
Changed
- Refactor
if-elsechains to useJava 17 pattern matching switch expressions(#18965) - Add CompletionStage variants to methods in the Client Interface and default to ActionListener impl (#18998)
- IllegalArgumentException when scroll ID references a node not found in Cluster (#19031)
- Adding ScriptedAvg class to painless spi to allowlist usage from plugins (#19006)
- Make field data cache size setting dynamic and add a default limit (#19152)
- Replace centos:8 with almalinux:8 since centos docker images are deprecated (#19154)
- Add CompletionStage variants to IndicesAdminClient as an alternative to ActionListener (#19161)
- Remove cap on Java version used by forbidden APIs ()
Fixed
- Fix unnecessary refreshes on update preparation failures (#15261)
- Fix NullPointerException in segment replicator (#18997)
- Ensure that plugins that utilize dumpCoverage can write to jacoco.dir when tests.security.manager is enabled (#18983)
- Fix OOM due to large number of shard result buffering (#19066)
- Fix flaky tests in CloseIndexIT by addressing cluster state synchronization issues (#18878)
- [Tiered Caching] Handle query execution exception (#19000)
- Grant access to testclusters dir for tests (#19085)
- Fix assertion error when collapsing search results with concurrent segment search enabled (#19053)
Dependencies
- Bump
com.gradleup.shadow:shadow-gradle-pluginfrom 8.3.5 to 8.3.9 (#19400) - Bump
com.netflix.nebula.ospackage-basefrom 12.0.0 to 12.1.1 (#19019, #19460) - Bump
actions/checkoutfrom 4 to 5 (#19023) - Bump
commons-cli:commons-clifrom 1.9.0 to 1.10.0 (#19021) - Bump
org.jline:jlinefrom 3.30.4 to 3.30.5 (#19013) - Bump
com.github.spotbugs:spotbugs-annotationsfrom 4.9.3 to 4.9.6 (#19015, #19294, , )
Removed
- Enable backward compatibility tests on Mac (#18983)