Skip to content

Commit a002e1b

Browse files
committed
Merge branch 'main' into map_IllegalArgumentException_to_OpenSearchException
# Conflicts: # CHANGELOG.md
2 parents 07f1f72 + 74912d2 commit a002e1b

File tree

656 files changed

+9735
-2817
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

656 files changed

+9735
-2817
lines changed

.ci/bwcVersions

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,4 +13,5 @@ BWC_VERSION:
1313
- "2.4.1"
1414
- "2.4.2"
1515
- "2.5.0"
16+
- "2.5.1"
1617
- "2.6.0"
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
---
2+
title: '[AUTOCUT] Gradle Check Failure on push to {{ env.branch_name }}'
3+
labels: '>test-failure, bug'
4+
---
5+
6+
Gradle check has failed on push of your commit {{ env.pr_from_sha }}.
7+
Please examine the workflow log {{ env.workflow_url }}.
8+
Is the failure [a flaky test](https://github.com/opensearch-project/OpenSearch/blob/main/DEVELOPER_GUIDE.md#flaky-tests) unrelated to your change?

.github/workflows/backport.yml

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,22 @@ on:
77

88
jobs:
99
backport:
10-
if: ${{ contains(github.event.label.name, 'backport') }}
10+
name: Backport
1111
runs-on: ubuntu-latest
12+
# Only react to merged PRs for security reasons.
13+
# See https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#pull_request_target.
14+
if: >
15+
github.event.pull_request.merged
16+
&& (
17+
github.event.action == 'closed'
18+
|| (
19+
github.event.action == 'labeled'
20+
&& contains(github.event.label.name, 'backport')
21+
)
22+
)
1223
permissions:
1324
contents: write
1425
pull-requests: write
15-
name: Backport
1626
steps:
1727
- name: GitHub App token
1828
id: github_app_token

.github/workflows/dependabot_pr.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,9 +49,9 @@ jobs:
4949
commit_options: '--signoff'
5050

5151
- name: Update the changelog
52-
uses: dangoslen/dependabot-changelog-helper@v1
52+
uses: dangoslen/dependabot-changelog-helper@v2
5353
with:
54-
version: 'Unreleased'
54+
version: 'Unreleased 3.0'
5555

5656
- name: Commit the changes
5757
uses: stefanzweifel/git-auto-commit-action@v4

.github/workflows/gradle-check.yml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ jobs:
1616
permissions:
1717
contents: read # to fetch code (actions/checkout)
1818
pull-requests: write # to create or update comment (peter-evans/create-or-update-comment)
19+
issues: write # To create an issue if check fails on push.
1920

2021
runs-on: ubuntu-latest
2122
timeout-minutes: 130
@@ -40,6 +41,7 @@ jobs:
4041
repo_url="https://github.com/opensearch-project/OpenSearch"
4142
ref_id=$(git rev-parse HEAD)
4243
branch_name=$(git rev-parse --abbrev-ref HEAD)
44+
echo "$branch_name=$branch_name" >> $GITHUB_ENV
4345
echo "pr_from_sha=$ref_id" >> $GITHUB_ENV
4446
echo "pr_from_clone_url=$repo_url" >> $GITHUB_ENV
4547
echo "pr_to_clone_url=$repo_url" >> $GITHUB_ENV
@@ -123,3 +125,12 @@ jobs:
123125
* **CommitID:** ${{ env.pr_from_sha }}
124126
Please examine the workflow log, locate, and copy-paste the failure(s) below, then iterate to green.
125127
Is the failure [a flaky test](https://github.com/opensearch-project/OpenSearch/blob/main/DEVELOPER_GUIDE.md#flaky-tests) unrelated to your change?
128+
129+
- name: Create Issue On Push Failure
130+
if: ${{ github.event_name == 'push' && failure() }}
131+
uses: dblock/create-a-github-issue@v3
132+
env:
133+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
134+
with:
135+
assignees: ${{ github.event.head_commit.author.username }}, ${{ github.triggering_actor }}
136+
filename: .github/ISSUE_TEMPLATE/failed_check.md

.github/workflows/version.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -59,12 +59,12 @@ jobs:
5959
token: ${{ steps.github_app_token.outputs.token }}
6060
base: ${{ env.BASE }}
6161
branch: 'create-pull-request/patch-${{ env.BASE }}'
62-
commit-message: Incremented version to ${{ env.NEXT_VERSION }}
62+
commit-message: Increment version to ${{ env.NEXT_VERSION }}
6363
signoff: true
6464
delete-branch: true
6565
labels: |
6666
autocut
67-
title: '[AUTO] Incremented version to ${{ env.NEXT_VERSION }}.'
67+
title: '[AUTO] Increment version to ${{ env.NEXT_VERSION }}.'
6868
body: |
6969
I've noticed that a new tag ${{ env.TAG }} was pushed, and incremented the version from ${{ env.CURRENT_VERSION }} to ${{ env.NEXT_VERSION }}.
7070
@@ -86,12 +86,12 @@ jobs:
8686
token: ${{ steps.github_app_token.outputs.token }}
8787
base: ${{ env.BASE_X }}
8888
branch: 'create-pull-request/patch-${{ env.BASE_X }}'
89-
commit-message: Added bwc version ${{ env.NEXT_VERSION }}
89+
commit-message: Add bwc version ${{ env.NEXT_VERSION }}
9090
signoff: true
9191
delete-branch: true
9292
labels: |
9393
autocut
94-
title: '[AUTO] [${{ env.BASE_X }}] Added bwc version ${{ env.NEXT_VERSION }}.'
94+
title: '[AUTO] [${{ env.BASE_X }}] Add bwc version ${{ env.NEXT_VERSION }}.'
9595
body: |
9696
I've noticed that a new tag ${{ env.TAG }} was pushed, and added a bwc version ${{ env.NEXT_VERSION }}.
9797
@@ -113,11 +113,11 @@ jobs:
113113
token: ${{ steps.github_app_token.outputs.token }}
114114
base: main
115115
branch: 'create-pull-request/patch-main'
116-
commit-message: Added bwc version ${{ env.NEXT_VERSION }}
116+
commit-message: Add bwc version ${{ env.NEXT_VERSION }}
117117
signoff: true
118118
delete-branch: true
119119
labels: |
120120
autocut
121-
title: '[AUTO] [main] Added bwc version ${{ env.NEXT_VERSION }}.'
121+
title: '[AUTO] [main] Add bwc version ${{ env.NEXT_VERSION }}.'
122122
body: |
123123
I've noticed that a new tag ${{ env.TAG }} was pushed, and added a bwc version ${{ env.NEXT_VERSION }}.

.gitignore

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,10 @@ out/
1313
!.idea/vcs.xml
1414
!.idea/icon.svg
1515

16-
# These files are generated in the main tree by IntelliJ
16+
# These files are generated in the main tree by annotation processors
1717
benchmarks/src/main/generated/*
18+
benchmarks/bin/*
19+
benchmarks/build-eclipse-default/*
1820

1921
# eclipse files
2022
.project

CHANGELOG.md

Lines changed: 37 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -1,44 +1,20 @@
1-
21
# CHANGELOG
3-
## [Unreleased]
4-
### Dependencies
5-
- Bumps `azure-core-http-netty` from 1.12.7 to 1.12.8
6-
7-
82
All notable changes to this project are documented in this file.
93

104
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). See the [CONTRIBUTING guide](./CONTRIBUTING.md#Changelog) for instructions on how to add changelog entries.
115

126
## [Unreleased 3.0]
137
### Added
14-
- Add support of default replica count cluster setting ([#5610](https://github.com/opensearch-project/OpenSearch/pull/5610))
15-
- Hardened token permissions in GitHub workflows ([#4587](https://github.com/opensearch-project/OpenSearch/pull/4587))
168
- Support for HTTP/2 (server-side) ([#3847](https://github.com/opensearch-project/OpenSearch/pull/3847))
179
- Add getter for path field in NestedQueryBuilder ([#4636](https://github.com/opensearch-project/OpenSearch/pull/4636))
18-
- Apply reproducible builds configuration for OpenSearch plugins through gradle plugin ([#4746](https://github.com/opensearch-project/OpenSearch/pull/4746))
19-
- Add project health badges to the README.md ([#4843](https://github.com/opensearch-project/OpenSearch/pull/4843))
20-
- [Test] Add IAE test for deprecated edgeNGram analyzer name ([#5040](https://github.com/opensearch-project/OpenSearch/pull/5040))
2110
- Allow mmap to use new JDK-19 preview APIs in Apache Lucene 9.4+ ([#5151](https://github.com/opensearch-project/OpenSearch/pull/5151))
22-
- Add feature flag for extensions ([#5211](https://github.com/opensearch-project/OpenSearch/pull/5211))
23-
- Support to fail open requests on search shard failures with weighted traffic routing ([#5072](https://github.com/opensearch-project/OpenSearch/pull/5072))
24-
- Added jackson dependency to server ([#5366] (https://github.com/opensearch-project/OpenSearch/pull/5366))
25-
- Adding support to register settings dynamically ([#5495](https://github.com/opensearch-project/OpenSearch/pull/5495))
26-
- Added experimental support for extensions ([#5347](https://github.com/opensearch-project/OpenSearch/pull/5347)), ([#5518](https://github.com/opensearch-project/OpenSearch/pull/5518), ([#5597](https://github.com/opensearch-project/OpenSearch/pull/5597)), ([#5615](https://github.com/opensearch-project/OpenSearch/pull/5615)))
27-
- Add CI bundle pattern to distribution download ([#5348](https://github.com/opensearch-project/OpenSearch/pull/5348))
2811
- Add support for ppc64le architecture ([#5459](https://github.com/opensearch-project/OpenSearch/pull/5459))
29-
- Support versioning for Weighted routing apis([#5255](https://github.com/opensearch-project/OpenSearch/pull/5255))
30-
- Added @gbbafna as an OpenSearch maintainer ([#5668](https://github.com/opensearch-project/OpenSearch/pull/5668))
31-
- Add support for discovered cluster manager and remove local weights ([#5680](https://github.com/opensearch-project/OpenSearch/pull/5680))
32-
- Added support for feature flags in opensearch.yml ([#4959](https://github.com/opensearch-project/OpenSearch/pull/4959))
33-
- Add query for initialized extensions ([#5658](https://github.com/opensearch-project/OpenSearch/pull/5658))
34-
- Revert 'Added jackson dependency to server' and change extension reading ([#5768](https://github.com/opensearch-project/OpenSearch/pull/5768))
3512

3613
### Dependencies
3714
- Bumps `log4j-core` from 2.18.0 to 2.19.0
3815
- Bumps `reactor-netty-http` from 1.0.18 to 1.0.23
39-
- Bumps `jettison` from 1.5.0 to 1.5.1
16+
- Bumps `jettison` from 1.5.0 to 1.5.3
4017
- Bumps `forbiddenapis` from 3.3 to 3.4
41-
- Bumps `gson` from 2.9.0 to 2.10
4218
- Bumps `avro` from 1.11.0 to 1.11.1
4319
- Bumps `woodstox-core` from 6.3.0 to 6.3.1
4420
- Bumps `xmlbeans` from 5.1.0 to 5.1.1 ([#4354](https://github.com/opensearch-project/OpenSearch/pull/4354))
@@ -49,33 +25,27 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
4925
- Bumps `com.diffplug.spotless` from 6.10.0 to 6.11.0 ([#4547](https://github.com/opensearch-project/OpenSearch/pull/4547))
5026
- Bumps `reactor-core` from 3.4.23 to 3.5.1 ([#5604](https://github.com/opensearch-project/OpenSearch/pull/5604))
5127
- Bumps `jempbox` from 1.8.16 to 1.8.17 ([#4550](https://github.com/opensearch-project/OpenSearch/pull/4550))
52-
- Bumps `commons-compress` from 1.21 to 1.22
53-
- Bumps `jcodings` from 1.0.57 to 1.0.58 ([#5233](https://github.com/opensearch-project/OpenSearch/pull/5233))
54-
- Bumps `google-http-client-jackson2` from 1.35.0 to 1.42.3 ([#5234](https://github.com/opensearch-project/OpenSearch/pull/5234))
55-
- Bumps `azure-core` from 1.33.0 to 1.34.0 ([#5235](https://github.com/opensearch-project/OpenSearch/pull/5235))
56-
- Bumps `azure-core-http-netty` from 1.12.4 to 1.12.7 ([#5235](https://github.com/opensearch-project/OpenSearch/pull/5235))
5728
- Bumps `spock-core` from 2.1-groovy-3.0 to 2.3-groovy-3.0 ([#5315](https://github.com/opensearch-project/OpenSearch/pull/5315))
58-
- Bumps `json-schema-validator` from 1.0.69 to 1.0.73 ([#5316](https://github.com/opensearch-project/OpenSearch/pull/5316))
59-
- Bumps `proto-google-common-protos` from 2.8.0 to 2.10.0 ([#5318](https://github.com/opensearch-project/OpenSearch/pull/5318))
6029
- Update to Gradle 7.6 and JDK-19 ([#4973](https://github.com/opensearch-project/OpenSearch/pull/4973))
6130
- Update Apache Lucene to 9.5.0-snapshot-d5cef1c ([#5570](https://github.com/opensearch-project/OpenSearch/pull/5570))
6231
- Bump antlr4 from 4.9.3 to 4.11.1 ([#4546](https://github.com/opensearch-project/OpenSearch/pull/4546))
6332
- Bumps `maven-model` from 3.6.2 to 3.8.6 ([#5599](https://github.com/opensearch-project/OpenSearch/pull/5599))
6433
- Bumps `maxmind-db` from 2.1.0 to 3.0.0 ([#5601](https://github.com/opensearch-project/OpenSearch/pull/5601))
6534
- Bumps `protobuf-java` from 3.21.11 to 3.21.12 ([#5603](https://github.com/opensearch-project/OpenSearch/pull/5603))
66-
- Update nebula-publishing-plugin to 19.2.0 ([#5704](https://github.com/opensearch-project/OpenSearch/pull/5704))
35+
- Bumps `azure-core-http-netty` from 1.12.7 to 1.12.8
36+
- Bumps `wiremock-jre8-standalone` from 2.33.2 to 2.35.0
37+
- Bumps `gson` from 2.10 to 2.10.1
38+
- Bumps `json-schema-validator` from 1.0.73 to 1.0.76
39+
- Bumps `jna` from 5.11.0 to 5.13.0
40+
- Bumps `joni` from 2.1.44 to 2.1.45
6741

6842
### Changed
6943
- [CCR] Add getHistoryOperationsFromTranslog method to fetch the history snapshot from translogs ([#3948](https://github.com/opensearch-project/OpenSearch/pull/3948))
7044
- Relax visibility of the HTTP_CHANNEL_KEY and HTTP_SERVER_CHANNEL_KEY to make it possible for the plugins to access associated Netty4HttpChannel / Netty4HttpServerChannel instance ([#4638](https://github.com/opensearch-project/OpenSearch/pull/4638))
71-
- Use ReplicationFailedException instead of OpensearchException in ReplicationTarget ([#4725](https://github.com/opensearch-project/OpenSearch/pull/4725))
7245
- Migrate client transports to Apache HttpClient / Core 5.x ([#4459](https://github.com/opensearch-project/OpenSearch/pull/4459))
73-
- Support remote translog transfer for request level durability([#4480](https://github.com/opensearch-project/OpenSearch/pull/4480))
7446
- Changed http code on create index API with bad input raising NotXContentException from 500 to 400 ([#4773](https://github.com/opensearch-project/OpenSearch/pull/4773))
7547
- Change http code for DecommissioningFailedException from 500 to 400 ([#5283](https://github.com/opensearch-project/OpenSearch/pull/5283))
76-
- Pre conditions check before updating weighted routing metadata ([#4955](https://github.com/opensearch-project/OpenSearch/pull/4955))
77-
- Gracefully handle concurrent zone decommission action ([#5542](https://github.com/opensearch-project/OpenSearch/pull/5542))
78-
- Improve summary error message for invalid setting updates ([#4792](https://github.com/opensearch-project/OpenSearch/pull/4792))
48+
- Require MediaType in Strings.toString API ([#6009](https://github.com/opensearch-project/OpenSearch/pull/6009))
7949

8050
### Deprecated
8151

@@ -97,28 +67,51 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
9767
### Fixed
9868
- Fix 'org.apache.hc.core5.http.ParseException: Invalid protocol version' under JDK 16+ ([#4827](https://github.com/opensearch-project/OpenSearch/pull/4827))
9969
- Fixed compression support for h2c protocol ([#4944](https://github.com/opensearch-project/OpenSearch/pull/4944))
100-
- Reject bulk requests with invalid actions ([#5299](https://github.com/opensearch-project/OpenSearch/issues/5299))
10170
- Support OpenSSL Provider with default Netty allocator ([#5460](https://github.com/opensearch-project/OpenSearch/pull/5460))
102-
- Increasing timeout of testQuorumRecovery to 90 seconds from 30 ([#5651](https://github.com/opensearch-project/OpenSearch/pull/5651))
103-
- [Segment Replication] Fix for peer recovery ([#5344](https://github.com/opensearch-project/OpenSearch/pull/5344))
104-
- [Test] Renaming PIT tests to IT to fix intermittent test failures ([#5750](https://github.com/opensearch-project/OpenSearch/pull/5750))
10571

10672
### Security
10773

10874
## [Unreleased 2.x]
10975
### Added
76+
- Adding index create block when all nodes have breached high disk watermark ([#5852](https://github.com/opensearch-project/OpenSearch/pull/5852))
77+
- Added cluster manager throttling stats in nodes/stats API ([#5790](https://github.com/opensearch-project/OpenSearch/pull/5790))
78+
- Added support for feature flags in opensearch.yml ([#4959](https://github.com/opensearch-project/OpenSearch/pull/4959))
79+
- Add query for initialized extensions ([#5658](https://github.com/opensearch-project/OpenSearch/pull/5658))
80+
- Add update-index-settings allowlist for searchable snapshot ([#5907](https://github.com/opensearch-project/OpenSearch/pull/5907))
81+
- Replace latches with CompletableFutures for extensions ([#5646](https://github.com/opensearch-project/OpenSearch/pull/5646))
82+
- Add GeoTile and GeoHash Grid aggregations on GeoShapes. ([#5589](https://github.com/opensearch-project/OpenSearch/pull/5589))
83+
- Add support to disallow search request with preference parameter with strict weighted shard routing([#5874](https://github.com/opensearch-project/OpenSearch/pull/5874))
84+
- Added support to apply index create block ([#4603](https://github.com/opensearch-project/OpenSearch/issues/4603))
85+
- Adds support for minimum compatible version for extensions ([#6003](https://github.com/opensearch-project/OpenSearch/pull/6003))
86+
- Add a guardrail to limit maximum number of shard on the cluster ([#6143](https://github.com/opensearch-project/OpenSearch/pull/6143))
87+
- Add cancellation of in-flight SearchTasks based on resource consumption ([#5606](https://github.com/opensearch-project/OpenSearch/pull/5605))
11088

11189
### Dependencies
90+
- Update nebula-publishing-plugin to 19.2.0 ([#5704](https://github.com/opensearch-project/OpenSearch/pull/5704))
91+
- Bumps `reactor-netty` from 1.1.1 to 1.1.2 ([#5878](https://github.com/opensearch-project/OpenSearch/pull/5878))
92+
- OpenJDK Update (January 2023 Patch releases) ([#6074](https://github.com/opensearch-project/OpenSearch/pull/6074))
93+
- Bumps `Mockito` from 4.7.0 to 5.1.0, `ByteBuddy` from 1.12.18 to 1.12.22 ([#6076](https://github.com/opensearch-project/OpenSearch/pull/6076))
94+
- Bumps `joda` from 2.10.13 to 2.12.2 ([#6083](https://github.com/opensearch-project/OpenSearch/pull/6083))
95+
- Upgrade to Lucene 9.5.0 ([#5878](https://github.com/opensearch-project/OpenSearch/pull/6078))
96+
- Bumps `Jackson` from 2.14.1 to 2.14.2 ([#6129](https://github.com/opensearch-project/OpenSearch/pull/6129))
97+
- Bumps `Netty` from 4.1.86.Final to 4.1.87.Final ([#6130](https://github.com/opensearch-project/OpenSearch/pull/6130))
11298

11399
### Changed
100+
- Use ReplicationFailedException instead of OpensearchException in ReplicationTarget ([#4725](https://github.com/opensearch-project/OpenSearch/pull/4725))
101+
- [Refactor] Use local opensearch.common.SetOnce instead of lucene's utility class ([#5947](https://github.com/opensearch-project/OpenSearch/pull/5947))
102+
- Cluster health call to throw decommissioned exception for local decommissioned node([#6008](https://github.com/opensearch-project/OpenSearch/pull/6008))
103+
- [Refactor] core.common to new opensearch-common library ([#5976](https://github.com/opensearch-project/OpenSearch/pull/5976))
114104

115105
### Deprecated
116106

117107
### Removed
118108

119109
### Fixed
110+
- [Segment Replication] Fix for peer recovery ([#5344](https://github.com/opensearch-project/OpenSearch/pull/5344))
111+
- Fix weighted shard routing state across search requests([#6004](https://github.com/opensearch-project/OpenSearch/pull/6004))
112+
- [Segment Replication] Fix bug where inaccurate sequence numbers are sent during replication ([#6122](https://github.com/opensearch-project/OpenSearch/pull/6122))
120113

121114
### Security
122115

123-
[Unreleased 3.0]: https://github.com/opensearch-project/OpenSearch/compare/2.4...HEAD
124-
[Unreleased 2.x]: https://github.com/opensearch-project/OpenSearch/compare/2.4...2.x
116+
[Unreleased 3.0]: https://github.com/opensearch-project/OpenSearch/compare/2.x...HEAD
117+
[Unreleased 2.x]: https://github.com/opensearch-project/OpenSearch/compare/2.5...2.x

0 commit comments

Comments
 (0)