·
26 commits
to main
since this release
2025-03-17 Version 3.0.0-alpha1 Release Notes
[3.0.0]
Breaking Changes
- Upgrade to Lucene 10.1.0 - PR (#16366)
- JDK21 as minimum supported Java runtime (#10745)
- Remove deprecated terms from Java API (#5214)
- JPMS Support (Eliminate top level split packages ) Phase-0 only (#8110)
- Add ThreadContextPermission for stashAndMergeHeaders and stashWithOrigin (#15039)
- Add ThreadContextPermission for markAsSystemContext and allow core to perform the method (#15016)
- Migrate client transports to Apache HttpClient / Core 5.x (#4459)
- Validation changes on the Bulk Index API like enforcing 512 byte _id size limit (#6595)
- Ability to use the node as coordinating node by passing node.roles as empty array (#3412)
- Treat Setting value with empty array string as empty array (#10625)
- Ensure Jackson default maximums introduced in 2.16.0 do not conflict with OpenSearch settings (#11811)
- Setting a maximum depth for nested queries (#11670)
- Fix interchanged formats of total_indexing_buffer_in_bytes and total_indexing_buffer (#17070)
- Cleanup deprecated thread pool settings (#2595)
- Replace "blacklist/whitelist" terminology in Java APIs (#1683)
- Remove deprecated methods from JodaCompatibleZonedDateTime which are called by scripts (#3346)
- List of deprecated code removal in 3.0- partially done (#2773)
- Remove mmap.extensions setting (#9392)
- Remove COMPAT locale provider (#13988)
- Remove transport-nio plugin (#16887)
- Deprecate CamelCase PathHierarchy tokenizer name (#10894)
- Rename Class ending with Plugin to Module under modules dir (#4042)
Added
- Support for HTTP/2 (server-side) (#3847)
- Allow mmap to use new JDK-19 preview APIs in Apache Lucene 9.4+ (#5151)
- Add events correlation engine plugin (#6854)
- Implement on behalf of token passing for extensions (#8679, #10664)
- Provide service accounts tokens to extensions (#9618)
- GHA to verify checklist items completion in PR descriptions (#10800)
- [WLM] Add WLM support for search scroll API (#16981)
- Views, simplify data access and manipulation by providing a virtual layer over one or more indices (#11957)
- Add systemd configurations to strengthen OS core security (#17107)
- Added pull-based Ingestion (APIs, for ingestion source, a Kafka plugin, and IngestionEngine that pulls data from the ingestion source) (#16958)
- Added ConfigurationUtils to core for the ease of configuration parsing #17223
- Add cluster and index level settings to limit the total primary shards per node and per index #17295
- Add execution_hint to cardinality aggregator request (#17312)
- Arrow Flight RPC plugin with Flight server bootstrap logic and client for internode communication (#16962)
- Added offset management for the pull-based Ingestion (#17354)
- Added integ tests for systemd configs (#17410)
- Add filter function for AbstractQueryBuilder, BoolQueryBuilder, ConstantScoreQueryBuilder(#17409)
- [Star Tree] [Search] Resolving keyword & numeric bucket aggregation with metric aggregation using star-tree (#17165)
- Added error handling support for the pull-based ingestion (#17427)
- Added Warm index setting and Updated nomenclature to differentiate between hot and warm tiering implementation (#17490)
- Latency and Memory allocation improvements to Multi Term Aggregation queries (#14993)
- Add logic in master service to optimize performance and retain detailed logging for critical cluster operations. (#14795)
- Add Setting to adjust the primary constraint weights (#16471)
- Introduce a setting to disable download of full cluster state from remote on term mismatch(#16798)
- Added ability to retrieve value from DocValues in a flat_object filed(#16802)
- Improve performace of NumericTermAggregation by avoiding unnecessary sorting(#17252)
- Fix Bug - Handle unsigned long in sorting order assertion of LongHashSet (#17207)
- Implemented computation of segment replication stats at shard level (#17055)
- [Rule Based Auto-tagging] Add in-memory attribute value store (#17342)
Dependencies
- Bump Apache HttpCore5/HttpClient5 dependencies from 5.2.5/5.3.1 to 5.3.1/5.4.1 to support ExtendedSocketOption in HttpAsyncClient (#16757)
- Bumps
jetty
version from 9.4.55.v20240627 to 9.4.57.v20241219 (#17395) - Switch main/3.x to use JDK21 LTS version (#17515)
- Bump
org.awaitility:awaitility
from 4.2.0 to 4.3.0 (#17230, #17439) - Bump
dnsjava:dnsjava
from 3.6.2 to 3.6.3 (#17231) - Bump
com.google.code.gson:gson
from 2.11.0 to 2.12.1 (#17229) - Bump
org.jruby.joni:joni
from 2.2.1 to 2.2.3 (#17136) - Bump
org.apache.ant:ant
from 1.10.14 to 1.10.15 (#17288) - Bump
reactor_netty
from 1.1.26 to 1.1.27 (#17322) - Bump
me.champeau.gradle.japicmp
from 0.4.5 to 0.4.6 (#17375) - Bump
com.google.api.grpc:proto-google-common-protos
from 2.37.1 to 2.52.0 (#17379) - Bump
net.minidev:json-smart
from 2.5.1 to 2.5.2 (#17378) - Bump
com.netflix.nebula.ospackage-base
from 11.10.1 to 11.11.1 (#17374) - Bump
ch.qos.logback:logback-classic
from 1.5.16 to 1.5.17 (#17497) - Bump
software.amazon.awssdk
from 2.20.86 to 2.30.31 (#17396) - Bump
org.jruby.jcodings:jcodings
from 1.0.61 to 1.0.63 (#17560) - Bump
com.azure:azure-storage-blob
from 12.28.1 to 12.29.1 (#17562)
Changed
- Changed locale provider from COMPAT to CLDR (#14345)
- Change http code on create index API with bad input raising NotXContentException from 500 to 400 (#4773)
- Improve summary error message for invalid setting updates (#4792)
- Return 409 Conflict HTTP status instead of 503 on failure to concurrently execute snapshots (#8986)
- Add task completion count in search backpressure stats API (#10028)
- Breaking change: Do not request "search_pipelines" metrics by default in NodesInfoRequest (#12497)
- Use simpler matching logic for source fields when explicit field names (no wildcards or dot-paths) are specified (#17160)
- Refactor
:libs
modulebootstrap
package to eliminate top level split packages for JPMS support (#17117) - Refactor the codebase to eliminate top level split packages for JPMS support (#17153
- Refactor
:server
moduleorg.apacge.lucene
package to eliminate top level split packages for JPMS support (#17241) - Stop minimizing automata used for case-insensitive matches (#17268)
- Refactor the
:server
moduleorg.opensearch.client
toorg.opensearch.transport.client
to eliminate top level split packages for JPMS support (#17272) - Use Lucene
BM25Similarity
as default since theLegacyBM25Similarity
is marked as deprecated (#17306) - Wildcard field index only 3gram of the input data #17349
- Use BC libraries to parse PEM files, increase key length, allow general use of known cryptographic binary extensions, remove unused BC dependencies (#3420)
- Add optional enum set read / write functionality to stream input / output (#17556)
- Convert transport-reactor-netty4 to use gradle version catalog #17233
- Increase force merge threads to 1/8th of cores #17255
- TieredSpilloverCache took-time threshold now guards heap tier as well as disk tier #17190
Deprecated
Removed
- Remove deprecated code to add node name into log pattern of log4j property file (#4568)
- Unused object and import within TransportClusterAllocationExplainAction (#4639)
- Remove LegacyESVersion.V_7_0_* and V_7_1_* Constants (#2768)
- Remove LegacyESVersion.V_7_2_ and V_7_3_ Constants (#4702)
- Always auto release the flood stage block (#4703)
- Remove LegacyESVersion.V_7_4_ and V_7_5_ Constants (#4704)
- Remove Legacy Version support from Snapshot/Restore Service (#4728)
- Remove deprecated serialization logic from pipeline aggs (#4847)
- Remove unused private methods (#4926)
- Remove LegacyESVersion.V_7_8_ and V_7_9_ Constants (#4855)
- Remove LegacyESVersion.V_7_6_ and V_7_7_ Constants (#4837)
- Remove LegacyESVersion.V_7_10_ Constants (#5018)
- Remove Version.V_1_ Constants (#5021)
- Remove custom Map, List and Set collection classes (#6871)
- Remove package org.opensearch.action.support.master (#4856)
- Remove deprecated 'gateway' settings used to defer cluster recovery (#3117)
- Remove FeatureFlags.PLUGGABLE_CACHE as the feature is no longer experimental (#17344)
Fixed
- Fix 'org.apache.hc.core5.http.ParseException: Invalid protocol version' under JDK 16+ (#4827)
- Fix compression support for h2c protocol (#4944)
- Don't over-allocate in HeapBufferedAsyncEntityConsumer in order to consume the response (#9993)
- Add HTTP/2 protocol support to HttpRequest.HttpVersion (#17248)
- Fix missing bucket in terms aggregation with missing value (#17418)
- Fix explain action on query rewrite (#17286)
- Fix visit of inner query for FunctionScoreQueryBuilder (#16776)
- Fix case insensitive and escaped query on wildcard (#16827)
- Fix exists queries on nested flat_object fields throws exception (#16803)
- Add highlighting for wildcard search on
match_only_text
field (#17101) - Fix illegal argument exception when creating a PIT (#16781)
- Fix NPE in node stats due to QueryGroupTasks (#17576)