Skip to content

Commit 87bafb4

Browse files
Merge branch 'main' into needless-array-abstract-internal-terms
2 parents 2503c12 + 07cb14e commit 87bafb4

File tree

184 files changed

+2548
-1170
lines changed

Some content is hidden

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

184 files changed

+2548
-1170
lines changed

distribution/tools/keystore-cli/src/main/java/org/elasticsearch/cli/keystore/AddStringKeyStoreCommand.java

+2-10
Original file line numberDiff line numberDiff line change
@@ -19,13 +19,10 @@
1919
import org.elasticsearch.core.CheckedFunction;
2020
import org.elasticsearch.env.Environment;
2121

22-
import java.io.BufferedReader;
2322
import java.io.CharArrayWriter;
2423
import java.io.Closeable;
2524
import java.io.IOException;
26-
import java.io.InputStream;
27-
import java.io.InputStreamReader;
28-
import java.nio.charset.StandardCharsets;
25+
import java.io.Reader;
2926
import java.util.Arrays;
3027
import java.util.List;
3128

@@ -47,11 +44,6 @@ class AddStringKeyStoreCommand extends BaseKeyStoreCommand {
4744
this.arguments = parser.nonOptions("setting names");
4845
}
4946

50-
// pkg private so tests can manipulate
51-
InputStream getStdin() {
52-
return System.in;
53-
}
54-
5547
@Override
5648
protected void executeCommand(Terminal terminal, OptionSet options, Environment env) throws Exception {
5749
final List<String> settings = arguments.values(options);
@@ -64,7 +56,7 @@ protected void executeCommand(Terminal terminal, OptionSet options, Environment
6456
final Closeable closeable;
6557
final CheckedFunction<String, char[], IOException> valueSupplier;
6658
if (options.has(stdinOption)) {
67-
final BufferedReader stdinReader = new BufferedReader(new InputStreamReader(getStdin(), StandardCharsets.UTF_8));
59+
final Reader stdinReader = terminal.getReader();
6860
valueSupplier = s -> {
6961
try (CharArrayWriter writer = new CharArrayWriter()) {
7062
int c;

distribution/tools/keystore-cli/src/test/java/org/elasticsearch/cli/keystore/AddStringKeyStoreCommandTests.java

+9-21
Original file line numberDiff line numberDiff line change
@@ -18,30 +18,20 @@
1818
import org.elasticsearch.common.settings.KeyStoreWrapper;
1919
import org.elasticsearch.env.Environment;
2020

21-
import java.io.ByteArrayInputStream;
2221
import java.io.CharArrayWriter;
23-
import java.io.InputStream;
24-
import java.nio.charset.StandardCharsets;
2522

2623
import static org.hamcrest.Matchers.anyOf;
2724
import static org.hamcrest.Matchers.containsString;
2825
import static org.hamcrest.Matchers.hasToString;
2926

3027
public class AddStringKeyStoreCommandTests extends KeyStoreCommandTestCase {
31-
InputStream input;
32-
3328
@Override
3429
protected Command newCommand() {
3530
return new AddStringKeyStoreCommand() {
3631
@Override
3732
protected Environment createEnv(OptionSet options, ProcessInfo processInfo) throws UserException {
3833
return env;
3934
}
40-
41-
@Override
42-
InputStream getStdin() {
43-
return input;
44-
}
4535
};
4636
}
4737

@@ -167,7 +157,7 @@ public void testStdinShort() throws Exception {
167157
String password = "keystorepassword";
168158
KeyStoreWrapper.create().save(env.configDir(), password.toCharArray());
169159
terminal.addSecretInput(password);
170-
setInput("secret value 1");
160+
terminal.addSecretInput("secret value 1");
171161
execute("-x", "foo");
172162
assertSecureString("foo", "secret value 1", password);
173163
}
@@ -176,7 +166,7 @@ public void testStdinLong() throws Exception {
176166
String password = "keystorepassword";
177167
KeyStoreWrapper.create().save(env.configDir(), password.toCharArray());
178168
terminal.addSecretInput(password);
179-
setInput("secret value 2");
169+
terminal.addSecretInput("secret value 2");
180170
execute("--stdin", "foo");
181171
assertSecureString("foo", "secret value 2", password);
182172
}
@@ -185,7 +175,7 @@ public void testStdinNoInput() throws Exception {
185175
String password = "keystorepassword";
186176
KeyStoreWrapper.create().save(env.configDir(), password.toCharArray());
187177
terminal.addSecretInput(password);
188-
setInput("");
178+
terminal.addSecretInput("");
189179
execute("-x", "foo");
190180
assertSecureString("foo", "", password);
191181
}
@@ -194,7 +184,7 @@ public void testStdinInputWithLineBreaks() throws Exception {
194184
String password = "keystorepassword";
195185
KeyStoreWrapper.create().save(env.configDir(), password.toCharArray());
196186
terminal.addSecretInput(password);
197-
setInput("Typedthisandhitenter\n");
187+
terminal.addSecretInput("Typedthisandhitenter\n");
198188
execute("-x", "foo");
199189
assertSecureString("foo", "Typedthisandhitenter", password);
200190
}
@@ -203,7 +193,7 @@ public void testStdinInputWithCarriageReturn() throws Exception {
203193
String password = "keystorepassword";
204194
KeyStoreWrapper.create().save(env.configDir(), password.toCharArray());
205195
terminal.addSecretInput(password);
206-
setInput("Typedthisandhitenter\r");
196+
terminal.addSecretInput("Typedthisandhitenter\r");
207197
execute("-x", "foo");
208198
assertSecureString("foo", "Typedthisandhitenter", password);
209199
}
@@ -212,7 +202,9 @@ public void testStdinWithMultipleValues() throws Exception {
212202
final String password = "keystorepassword";
213203
KeyStoreWrapper.create().save(env.configDir(), password.toCharArray());
214204
terminal.addSecretInput(password);
215-
setInput("bar1\nbar2\nbar3");
205+
terminal.addSecretInput("bar1");
206+
terminal.addSecretInput("bar2");
207+
terminal.addSecretInput("bar3");
216208
execute(randomFrom("-x", "--stdin"), "foo1", "foo2", "foo3");
217209
assertSecureString("foo1", "bar1", password);
218210
assertSecureString("foo2", "bar2", password);
@@ -228,7 +220,7 @@ public void testAddUtf8String() throws Exception {
228220
for (int i = 0; i < stringSize; i++) {
229221
secretChars.write((char) randomIntBetween(129, 2048));
230222
}
231-
setInput(secretChars.toString());
223+
terminal.addSecretInput(secretChars.toString());
232224
execute("-x", "foo");
233225
assertSecureString("foo", secretChars.toString(), password);
234226
}
@@ -265,8 +257,4 @@ public void testAddToUnprotectedKeystore() throws Exception {
265257
execute("foo");
266258
assertSecureString("foo", "bar", password);
267259
}
268-
269-
void setInput(String inputStr) {
270-
input = new ByteArrayInputStream(inputStr.getBytes(StandardCharsets.UTF_8));
271-
}
272260
}

docs/changelog/125517.yaml

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
pr: 125517
2+
summary: Semantic Text Chunking Indexing Pressure
3+
area: Machine Learning
4+
type: enhancement
5+
issues: []

docs/changelog/126687.yaml

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
pr: 126687
2+
summary: Permit at+jwt typ header value in jwt access tokens
3+
area: Authentication
4+
type: enhancement
5+
issues:
6+
- 119370

docs/changelog/126702.yaml

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
pr: 126702
2+
summary: "Return float[] instead of List<Double> in `valueFetcher`"
3+
area: Search
4+
type: enhancement
5+
issues: []

docs/changelog/126729.yaml

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
pr: 126729
2+
summary: Use terminal reader in keystore add command
3+
area: Infra/CLI
4+
type: bug
5+
issues:
6+
- 98115

docs/changelog/126751.yaml

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
pr: 126751
2+
summary: Allow float settings to be configured with other settings as default
3+
area: Infra/Settings
4+
type: enhancement
5+
issues: []

docs/changelog/126778.yaml

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
pr: 126778
2+
summary: Fix bbq quantization algorithm but for differently distributed components
3+
area: Vector Search
4+
type: bug
5+
issues: []

docs/changelog/126792.yaml

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
pr: 126792
2+
summary: Revert endpoint creation validation for ELSER and E5
3+
area: Machine Learning
4+
type: bug
5+
issues: []

docs/reference/search-connectors/es-connectors-salesforce.md

+5-3
Original file line numberDiff line numberDiff line change
@@ -494,9 +494,11 @@ See [content extraction](/reference/search-connectors/es-connectors-content-extr
494494

495495
Salesforce DLS, added in 8.13.0, does not accomodate specific access controls to specific Salesforce Objects. Instead, if a given user/group can have access to *any* Objects of a given type (`Case`, `Lead`, `Opportunity`, etc), that user/group will appear in the `\_allow_access_control` list for *all* of the Objects of that type. See [https://github.com/elastic/connectors/issues/3028](https://github.com/elastic/connectors/issues/3028) for more details.
496496

497-
Refer to [connector known issues](/release-notes/known-issues.md) for a list of known issues for all connectors.
498-
497+
* **Only first 500 nested entities are ingested**
498+
499+
Some of the entities that Salesforce connector fetches are nested - they are ingested along the parent objects using a `JOIN` query. Examples of such entities are `EmailMessages`, `CaseComments` and `FeedComments`. When Salesforce connector fetches these entities it sets a limit to fetch only first 500 entities per parent object. The only possible workaround for it now is to fork the Connectors repository and modify the code in Salesforce connector to increase these limits.
499500

501+
Refer to [connector known issues](/release-notes/known-issues.md) for a list of known issues for all connectors.
500502

501503
### Security [es-connectors-salesforce-client-security]
502504

@@ -507,4 +509,4 @@ See [connectors security](/reference/search-connectors/es-connectors-security.md
507509

508510
This connector is built with the [Elastic connector framework](https://github.com/elastic/connectors/tree/main).
509511

510-
View the [source code for this connector](https://github.com/elastic/connectors/tree/main/connectors/sources/salesforce.py) (branch *main*, compatible with Elastic *9.0*).
512+
View the [source code for this connector](https://github.com/elastic/connectors/tree/main/connectors/sources/salesforce.py) (branch *main*, compatible with Elastic *9.0*).

docs/release-notes/breaking-changes.md

+8-11
Original file line numberDiff line numberDiff line change
@@ -20,12 +20,12 @@ Aggregations:
2020
Allocation:
2121
* Increase minimum threshold in shard balancer [#115831](https://github.com/elastic/elasticsearch/pull/115831)
2222
* Remove `cluster.routing.allocation.disk.watermark.enable_for_single_data_node` setting [#114207](https://github.com/elastic/elasticsearch/pull/114207)
23-
* Remove cluster state from `/_cluster/reroute` response [#114231](https://github.com/elastic/elasticsearch/pull/114231) (issue: https://github.com/elastic/elasticsearch/issues/88978[#88978])
23+
* Remove cluster state from `/_cluster/reroute` response [#114231](https://github.com/elastic/elasticsearch/pull/114231) (issue: [#88978](https://github.com/elastic/elasticsearch/issues/88978))
2424

2525
Analysis:
2626
* Snowball stemmers have been upgraded [#114146](https://github.com/elastic/elasticsearch/pull/114146)
2727
* The 'german2' stemmer is now an alias for the 'german' snowball stemmer [#113614](https://github.com/elastic/elasticsearch/pull/113614)
28-
* The 'persian' analyzer has stemmer by default [#113482](https://github.com/elastic/elasticsearch/pull/113482) (issue: https://github.com/elastic/elasticsearch/issues/113050[#113050])
28+
* The 'persian' analyzer has stemmer by default [#113482](https://github.com/elastic/elasticsearch/pull/113482) (issue: [#113050](https://github.com/elastic/elasticsearch/issues/113050))
2929
* The Korean dictionary for Nori has been updated [#114124](https://github.com/elastic/elasticsearch/pull/114124)
3030

3131
Authentication:
@@ -35,9 +35,6 @@ will prevent node from starting [#118366](https://github.com/elastic/elasticsear
3535
Cluster Coordination:
3636
* Remove unsupported legacy value for `discovery.type` [#112903](https://github.com/elastic/elasticsearch/pull/112903)
3737

38-
Discovery-Plugins:
39-
* Upgrade `discovery-ec2` to AWS SDK v2 [#122062](https://github.com/elastic/elasticsearch/pull/122062)
40-
4138
EQL:
4239
* Set allow_partial_search_results=true by default [#120267](https://github.com/elastic/elasticsearch/pull/120267)
4340

@@ -56,32 +53,32 @@ Indices APIs:
5653
Infra/Core:
5754
* Change Elasticsearch timeouts to 429 response instead of 5xx [#116026](https://github.com/elastic/elasticsearch/pull/116026)
5855
* Limit `ByteSizeUnit` to 2 decimals [#120142](https://github.com/elastic/elasticsearch/pull/120142)
59-
* Remove `client.type` setting [#118192](https://github.com/elastic/elasticsearch/pull/118192) (issue: https://github.com/elastic/elasticsearch/issues/104574[#104574])
56+
* Remove `client.type` setting [#118192](https://github.com/elastic/elasticsearch/pull/118192) (issue: [#104574](https://github.com/elastic/elasticsearch/issues/104574))
6057
* Remove any references to org.elasticsearch.core.RestApiVersion#V_7 [#118103](https://github.com/elastic/elasticsearch/pull/118103)
6158

6259
Infra/Logging:
63-
* Change `deprecation.elasticsearch` keyword to `elasticsearch.deprecation` [#117933](https://github.com/elastic/elasticsearch/pull/117933) (issue: https://github.com/elastic/elasticsearch/issues/83251[#83251])
64-
* Rename deprecation index template [#125606](https://github.com/elastic/elasticsearch/pull/125606) (issue: https://github.com/elastic/elasticsearch/issues/125445[#125445])
60+
* Change `deprecation.elasticsearch` keyword to `elasticsearch.deprecation` [#117933](https://github.com/elastic/elasticsearch/pull/117933) (issue: [#83251](https://github.com/elastic/elasticsearch/issues/83251))
61+
* Rename deprecation index template [#125606](https://github.com/elastic/elasticsearch/pull/125606) (issue: [#125445](https://github.com/elastic/elasticsearch/issues/125445))
6562

6663
Infra/Metrics:
6764
* Deprecated tracing.apm.* settings got removed. [#119926](https://github.com/elastic/elasticsearch/pull/119926)
6865

6966
Infra/REST API:
70-
* Output a consistent format when generating error json [#90529](https://github.com/elastic/elasticsearch/pull/90529) (issue: https://github.com/elastic/elasticsearch/issues/89387[#89387])
67+
* Output a consistent format when generating error json [#90529](https://github.com/elastic/elasticsearch/pull/90529) (issue: [#89387](https://github.com/elastic/elasticsearch/issues/89387))
7168

7269
Ingest Node:
7370
* Remove `ecs` option on `user_agent` processor [#116077](https://github.com/elastic/elasticsearch/pull/116077)
7471
* Remove ignored fallback option on GeoIP processor [#116112](https://github.com/elastic/elasticsearch/pull/116112)
7572

7673
Logs:
77-
* Conditionally enable logsdb by default for data streams matching with logs-*-* pattern. [#121049](https://github.com/elastic/elasticsearch/pull/121049) (issue: https://github.com/elastic/elasticsearch/issues/106489[#106489])
74+
* Conditionally enable logsdb by default for data streams matching with logs-*-* pattern. [#121049](https://github.com/elastic/elasticsearch/pull/121049) (issue: [#106489](https://github.com/elastic/elasticsearch/issues/106489))
7875

7976
Machine Learning:
8077
* Disable machine learning on macOS x86_64 [#104125](https://github.com/elastic/elasticsearch/pull/104125)
8178

8279
Mapping:
8380
* Remove support for type, fields, `copy_to` and boost in metadata field definition [#118825](https://github.com/elastic/elasticsearch/pull/118825)
84-
* Turn `_source` meta fieldmapper's mode attribute into a no-op [#119072](https://github.com/elastic/elasticsearch/pull/119072) (issue: https://github.com/elastic/elasticsearch/issues/118596[#118596])
81+
* Turn `_source` meta fieldmapper's mode attribute into a no-op [#119072](https://github.com/elastic/elasticsearch/pull/119072) (issue: [#118596](https://github.com/elastic/elasticsearch/issues/118596))
8582

8683
Search:
8784
* Adjust `random_score` default field to `_seq_no` field [#118671](https://github.com/elastic/elasticsearch/pull/118671)

docs/release-notes/deprecations.md

+2-2
Original file line numberDiff line numberDiff line change
@@ -19,13 +19,13 @@ To give you insight into what deprecated features you’re using, {{es}}:
1919
## 9.0.0 [elasticsearch-900-deprecations]
2020

2121
ES|QL:
22-
* Drop support for brackets from METADATA syntax [#119846](https://github.com/elastic/elasticsearch/pull/119846) (issue: {es-issue}115401[#115401])
22+
* Drop support for brackets from METADATA syntax [#119846](https://github.com/elastic/elasticsearch/pull/119846) (issue: [#115401](https://github.com/elastic/elasticsearch/issues/115401))
2323

2424
Ingest Node:
2525
* Fix `_type` deprecation on simulate pipeline API [#116259](https://github.com/elastic/elasticsearch/pull/116259)
2626

2727
Machine Learning:
28-
* Add deprecation warning for flush API [#121667](https://github.com/elastic/elasticsearch/pull/121667) (issue: {es-issue}121506[#121506])
28+
* Add deprecation warning for flush API [#121667](https://github.com/elastic/elasticsearch/pull/121667) (issue: [#121506](https://github.com/elastic/elasticsearch/issues/121506))
2929
* Removing index alias creation for deprecated transforms notification index [#117583](https://github.com/elastic/elasticsearch/pull/117583)
3030
* [Inference API] Deprecate elser service [#113216](https://github.com/elastic/elasticsearch/pull/113216)
3131

0 commit comments

Comments
 (0)