Skip to content

Commit 47b5655

Browse files
committed
Merge remote-tracking branch 'origin/master' into snapshot-lifecycle-management
2 parents e13ebd1 + be39915 commit 47b5655

File tree

83 files changed

+1215
-498
lines changed

Some content is hidden

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

83 files changed

+1215
-498
lines changed

Vagrantfile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -244,7 +244,7 @@ def linux_common(config,
244244
SHELL
245245

246246
config.vm.provision 'jdk-11', type: 'shell', inline: <<-SHELL
247-
curl -sSL https://download.java.net/java/GA/jdk11/9/GPL/openjdk-11.0.2_linux-x64_bin.tar.gz | tar xz -C /opt/
247+
curl -sSL https://download.oracle.com/java/GA/jdk11/9/GPL/openjdk-11.0.2_linux-x64_bin.tar.gz | tar xz -C /opt/
248248
SHELL
249249

250250
# This prevents leftovers from previous tests using the
@@ -405,7 +405,7 @@ def windows_common(config, name)
405405

406406
config.vm.provision 'windows-jdk-11', type: 'shell', inline: <<-SHELL
407407
New-Item -ItemType Directory -Force -Path "C:/java"
408-
Invoke-WebRequest "https://download.java.net/java/GA/jdk11/9/GPL/openjdk-11.0.2_windows-x64_bin.zip" -OutFile "C:/java/jdk-11.zip"
408+
Invoke-WebRequest "https://download.oracle.com/java/GA/jdk11/9/GPL/openjdk-11.0.2_windows-x64_bin.zip" -OutFile "C:/java/jdk-11.zip"
409409
Expand-Archive -Path "C:/java/jdk-11.zip" -DestinationPath "C:/java/"
410410
SHELL
411411

buildSrc/version.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
elasticsearch = 8.0.0
22
lucene = 8.1.0-snapshot-e460356abe
33

4-
bundled_jdk = 12+33
4+
bundled_jdk = 12.0.1+12@69cfe15208a647278a19ef0990eea691
55

66
# optional dependencies
77
spatial4j = 0.7

client/rest-high-level/src/main/java/org/elasticsearch/client/dataframe/transforms/DataFrameTransformConfig.java

Lines changed: 33 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
package org.elasticsearch.client.dataframe.transforms;
2121

2222
import org.elasticsearch.client.dataframe.transforms.pivot.PivotConfig;
23+
import org.elasticsearch.common.Nullable;
2324
import org.elasticsearch.common.ParseField;
2425
import org.elasticsearch.common.Strings;
2526
import org.elasticsearch.common.xcontent.ConstructingObjectParser;
@@ -38,13 +39,15 @@ public class DataFrameTransformConfig implements ToXContentObject {
3839
public static final ParseField ID = new ParseField("id");
3940
public static final ParseField SOURCE = new ParseField("source");
4041
public static final ParseField DEST = new ParseField("dest");
42+
public static final ParseField DESCRIPTION = new ParseField("description");
4143
// types of transforms
4244
public static final ParseField PIVOT_TRANSFORM = new ParseField("pivot");
4345

4446
private final String id;
4547
private final SourceConfig source;
4648
private final DestConfig dest;
4749
private final PivotConfig pivotConfig;
50+
private final String description;
4851

4952
public static final ConstructingObjectParser<DataFrameTransformConfig, Void> PARSER =
5053
new ConstructingObjectParser<>("data_frame_transform", true,
@@ -53,29 +56,47 @@ public class DataFrameTransformConfig implements ToXContentObject {
5356
SourceConfig source = (SourceConfig) args[1];
5457
DestConfig dest = (DestConfig) args[2];
5558
PivotConfig pivotConfig = (PivotConfig) args[3];
56-
return new DataFrameTransformConfig(id, source, dest, pivotConfig);
59+
String description = (String)args[4];
60+
return new DataFrameTransformConfig(id, source, dest, pivotConfig, description);
5761
});
5862

5963
static {
6064
PARSER.declareString(constructorArg(), ID);
6165
PARSER.declareObject(constructorArg(), (p, c) -> SourceConfig.PARSER.apply(p, null), SOURCE);
6266
PARSER.declareObject(constructorArg(), (p, c) -> DestConfig.PARSER.apply(p, null), DEST);
6367
PARSER.declareObject(optionalConstructorArg(), (p, c) -> PivotConfig.fromXContent(p), PIVOT_TRANSFORM);
68+
PARSER.declareString(optionalConstructorArg(), DESCRIPTION);
6469
}
6570

6671
public static DataFrameTransformConfig fromXContent(final XContentParser parser) {
6772
return PARSER.apply(parser, null);
6873
}
6974

75+
/**
76+
* Helper method for previewing a data frame transform configuration
77+
*
78+
* The DataFrameTransformConfig returned from this method should only be used for previewing the resulting data.
79+
*
80+
* A new, valid, DataFrameTransformConfig with an appropriate destination and ID will have to be constructed to create
81+
* the transform.
82+
* @param source Source configuration for gathering the data
83+
* @param pivotConfig Pivot config to preview
84+
* @return A DataFrameTransformConfig to preview, NOTE it will have a {@code null} id, destination and index.
85+
*/
86+
public static DataFrameTransformConfig forPreview(final SourceConfig source, final PivotConfig pivotConfig) {
87+
return new DataFrameTransformConfig(null, source, null, pivotConfig, null);
88+
}
7089

7190
public DataFrameTransformConfig(final String id,
7291
final SourceConfig source,
7392
final DestConfig dest,
74-
final PivotConfig pivotConfig) {
93+
final PivotConfig pivotConfig,
94+
final String description) {
7595
this.id = id;
7696
this.source = source;
7797
this.dest = dest;
7898
this.pivotConfig = pivotConfig;
99+
this.description = description;
79100
}
80101

81102
public String getId() {
@@ -94,6 +115,11 @@ public PivotConfig getPivotConfig() {
94115
return pivotConfig;
95116
}
96117

118+
@Nullable
119+
public String getDescription() {
120+
return description;
121+
}
122+
97123
@Override
98124
public XContentBuilder toXContent(final XContentBuilder builder, final Params params) throws IOException {
99125
builder.startObject();
@@ -109,6 +135,9 @@ public XContentBuilder toXContent(final XContentBuilder builder, final Params pa
109135
if (pivotConfig != null) {
110136
builder.field(PIVOT_TRANSFORM.getPreferredName(), pivotConfig);
111137
}
138+
if (description != null) {
139+
builder.field(DESCRIPTION.getPreferredName(), description);
140+
}
112141
builder.endObject();
113142
return builder;
114143
}
@@ -128,12 +157,13 @@ public boolean equals(Object other) {
128157
return Objects.equals(this.id, that.id)
129158
&& Objects.equals(this.source, that.source)
130159
&& Objects.equals(this.dest, that.dest)
160+
&& Objects.equals(this.description, that.description)
131161
&& Objects.equals(this.pivotConfig, that.pivotConfig);
132162
}
133163

134164
@Override
135165
public int hashCode() {
136-
return Objects.hash(id, source, dest, pivotConfig);
166+
return Objects.hash(id, source, dest, pivotConfig, description);
137167
}
138168

139169
@Override

client/rest-high-level/src/test/java/org/elasticsearch/client/DataFrameTransformIT.java

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -312,7 +312,8 @@ private DataFrameTransformConfig validDataFrameTransformConfig(String id, String
312312
return new DataFrameTransformConfig(id,
313313
new SourceConfig(new String[]{source}, queryConfig),
314314
destConfig,
315-
pivotConfig);
315+
pivotConfig,
316+
"this is a test transform");
316317
}
317318

318319
public void testGetStats() throws Exception {
@@ -329,7 +330,10 @@ public void testGetStats() throws Exception {
329330

330331
String id = "test-get-stats";
331332
DataFrameTransformConfig transform = new DataFrameTransformConfig(id,
332-
new SourceConfig(new String[]{sourceIndex}, queryConfig), new DestConfig("pivot-dest"), pivotConfig);
333+
new SourceConfig(new String[]{sourceIndex}, queryConfig),
334+
new DestConfig("pivot-dest"),
335+
pivotConfig,
336+
"transform for testing stats");
333337

334338
DataFrameClient client = highLevelClient().dataFrame();
335339
AcknowledgedResponse ack = execute(new PutDataFrameTransformRequest(transform), client::putDataFrameTransform,

client/rest-high-level/src/test/java/org/elasticsearch/client/dataframe/PreviewDataFrameTransformRequestTests.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -65,13 +65,12 @@ public void testValidate() {
6565
containsString("preview requires a non-null data frame config"));
6666

6767
// null id and destination is valid
68-
DataFrameTransformConfig config = new DataFrameTransformConfig(null, randomSourceConfig(), null,
69-
PivotConfigTests.randomPivotConfig());
68+
DataFrameTransformConfig config = DataFrameTransformConfig.forPreview(randomSourceConfig(), PivotConfigTests.randomPivotConfig());
7069

7170
assertFalse(new PreviewDataFrameTransformRequest(config).validate().isPresent());
7271

7372
// null source is not valid
74-
config = new DataFrameTransformConfig(null, null, null, PivotConfigTests.randomPivotConfig());
73+
config = new DataFrameTransformConfig(null, null, null, PivotConfigTests.randomPivotConfig(), null);
7574

7675
Optional<ValidationException> error = new PreviewDataFrameTransformRequest(config).validate();
7776
assertTrue(error.isPresent());

client/rest-high-level/src/test/java/org/elasticsearch/client/dataframe/PutDataFrameTransformRequestTests.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ public class PutDataFrameTransformRequestTests extends AbstractXContentTestCase<
4040
public void testValidate() {
4141
assertFalse(createTestInstance().validate().isPresent());
4242

43-
DataFrameTransformConfig config = new DataFrameTransformConfig(null, null, null, PivotConfigTests.randomPivotConfig());
43+
DataFrameTransformConfig config = new DataFrameTransformConfig(null, null, null, PivotConfigTests.randomPivotConfig(), null);
4444

4545
Optional<ValidationException> error = new PutDataFrameTransformRequest(config).validate();
4646
assertTrue(error.isPresent());

client/rest-high-level/src/test/java/org/elasticsearch/client/dataframe/transforms/DataFrameTransformConfigTests.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ public class DataFrameTransformConfigTests extends AbstractXContentTestCase<Data
3737

3838
public static DataFrameTransformConfig randomDataFrameTransformConfig() {
3939
return new DataFrameTransformConfig(randomAlphaOfLengthBetween(1, 10), randomSourceConfig(),
40-
randomDestConfig(), PivotConfigTests.randomPivotConfig());
40+
randomDestConfig(), PivotConfigTests.randomPivotConfig(), randomBoolean() ? null : randomAlphaOfLengthBetween(1, 100));
4141
}
4242

4343
@Override

client/rest-high-level/src/test/java/org/elasticsearch/client/documentation/DataFrameTransformDocumentationIT.java

Lines changed: 11 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -141,7 +141,8 @@ public void testPutDataFrameTransform() throws IOException, InterruptedException
141141
new DataFrameTransformConfig("reviewer-avg-rating", // <1>
142142
sourceConfig, // <2>
143143
new DestConfig("pivot-destination"), // <3>
144-
pivotConfig); // <4>
144+
pivotConfig, // <4>
145+
"This is my test transform"); // <5>
145146
// end::put-data-frame-transform-config
146147

147148
{
@@ -161,7 +162,7 @@ public void testPutDataFrameTransform() throws IOException, InterruptedException
161162
{
162163
DataFrameTransformConfig configWithDifferentId = new DataFrameTransformConfig("reviewer-avg-rating2",
163164
transformConfig.getSource(), transformConfig.getDestination(),
164-
transformConfig.getPivotConfig());
165+
transformConfig.getPivotConfig(), null);
165166
PutDataFrameTransformRequest request = new PutDataFrameTransformRequest(configWithDifferentId);
166167

167168
// tag::put-data-frame-transform-execute-listener
@@ -205,7 +206,7 @@ public void testStartStop() throws IOException, InterruptedException {
205206
PivotConfig pivotConfig = new PivotConfig(groupConfig, aggConfig);
206207

207208
DataFrameTransformConfig transformConfig = new DataFrameTransformConfig("mega-transform",
208-
new SourceConfig(new String[]{"source-data"}, queryConfig), new DestConfig("pivot-dest"), pivotConfig);
209+
new SourceConfig(new String[]{"source-data"}, queryConfig), new DestConfig("pivot-dest"), pivotConfig, null);
209210

210211
client.dataFrame().putDataFrameTransform(new PutDataFrameTransformRequest(transformConfig), RequestOptions.DEFAULT);
211212
transformsToClean.add(transformConfig.getId());
@@ -320,9 +321,9 @@ public void testDeleteDataFrameTransform() throws IOException, InterruptedExcept
320321
PivotConfig pivotConfig = new PivotConfig(groupConfig, aggConfig);
321322

322323
DataFrameTransformConfig transformConfig1 = new DataFrameTransformConfig("mega-transform",
323-
new SourceConfig(new String[]{"source-data"}, queryConfig), new DestConfig("pivot-dest"), pivotConfig);
324+
new SourceConfig(new String[]{"source-data"}, queryConfig), new DestConfig("pivot-dest"), pivotConfig, null);
324325
DataFrameTransformConfig transformConfig2 = new DataFrameTransformConfig("mega-transform2",
325-
new SourceConfig(new String[]{"source-data"}, queryConfig), new DestConfig("pivot-dest2"), pivotConfig);
326+
new SourceConfig(new String[]{"source-data"}, queryConfig), new DestConfig("pivot-dest2"), pivotConfig, null);
326327

327328
client.dataFrame().putDataFrameTransform(new PutDataFrameTransformRequest(transformConfig1), RequestOptions.DEFAULT);
328329
client.dataFrame().putDataFrameTransform(new PutDataFrameTransformRequest(transformConfig2), RequestOptions.DEFAULT);
@@ -386,11 +387,9 @@ public void testPreview() throws IOException, InterruptedException {
386387

387388
// tag::preview-data-frame-transform-request
388389
DataFrameTransformConfig transformConfig =
389-
new DataFrameTransformConfig(null, // <1>
390-
new SourceConfig(new String[]{"source-data"}, queryConfig),
391-
null, // <2>
392-
pivotConfig);
393-
390+
DataFrameTransformConfig.forPreview(
391+
new SourceConfig(new String[]{"source-data"}, queryConfig), // <1>
392+
pivotConfig); // <2>
394393
PreviewDataFrameTransformRequest request =
395394
new PreviewDataFrameTransformRequest(transformConfig); // <3>
396395
// end::preview-data-frame-transform-request
@@ -447,7 +446,7 @@ public void testGetStats() throws IOException, InterruptedException {
447446

448447
String id = "statisitcal-transform";
449448
DataFrameTransformConfig transformConfig = new DataFrameTransformConfig(id,
450-
new SourceConfig(new String[]{"source-data"}, queryConfig), new DestConfig("dest"), pivotConfig);
449+
new SourceConfig(new String[]{"source-data"}, queryConfig), new DestConfig("dest"), pivotConfig, null);
451450
client.dataFrame().putDataFrameTransform(new PutDataFrameTransformRequest(transformConfig), RequestOptions.DEFAULT);
452451

453452
// tag::get-data-frame-transform-stats-request
@@ -526,7 +525,7 @@ public void testGetDataFrameTransform() throws IOException, InterruptedException
526525

527526
DataFrameTransformConfig putTransformConfig = new DataFrameTransformConfig("mega-transform",
528527
new SourceConfig(new String[]{"source-data"}, queryConfig),
529-
new DestConfig("pivot-dest"), pivotConfig);
528+
new DestConfig("pivot-dest"), pivotConfig, null);
530529

531530
RestHighLevelClient client = highLevelClient();
532531
client.dataFrame().putDataFrameTransform(new PutDataFrameTransformRequest(putTransformConfig), RequestOptions.DEFAULT);

distribution/build.gradle

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -224,22 +224,31 @@ xpack.subprojects.findAll { it.parent == xpack }.each { Project xpackModule ->
224224
*****************************************************************************/
225225
// extract the bundled jdk version, broken into elements as: [feature, interim, update, build]
226226
// Note the "patch" version is not yet handled here, as it has not yet been used by java.
227-
Pattern JDK_VERSION = Pattern.compile("(\\d+)(\\.\\d+\\.\\d+)?\\+(\\d+)")
227+
Pattern JDK_VERSION = Pattern.compile("(\\d+)(\\.\\d+\\.\\d+)?\\+(\\d+)@([a-f0-9]{32})?")
228228
Matcher jdkVersionMatcher = JDK_VERSION.matcher(VersionProperties.bundledJdk)
229229
if (jdkVersionMatcher.matches() == false) {
230230
throw new IllegalArgumentException("Malformed jdk version [" + VersionProperties.bundledJdk + "]")
231231
}
232232
String jdkVersion = jdkVersionMatcher.group(1) + (jdkVersionMatcher.group(2) != null ? (jdkVersionMatcher.group(2)) : "")
233233
String jdkMajor = jdkVersionMatcher.group(1)
234234
String jdkBuild = jdkVersionMatcher.group(3)
235+
String hash = jdkVersionMatcher.group(4)
235236

236237
repositories {
238+
// simpler legacy pattern from JDK 9 to JDK 12 that we are advocating to Oracle to bring back
237239
ivy {
238-
url "https://download.java.net"
240+
url "https://download.oracle.com"
239241
patternLayout {
240242
artifact "java/GA/jdk${jdkMajor}/${jdkBuild}/GPL/openjdk-[revision]_[module]-x64_bin.[ext]"
241243
}
242244
}
245+
// current pattern since 12.0.1
246+
ivy {
247+
url "https://download.oracle.com"
248+
patternLayout {
249+
artifact "java/GA/jdk${jdkVersion}/${hash}/${jdkBuild}/GPL/openjdk-[revision]_[module]-x64_bin.[ext]"
250+
}
251+
}
243252
}
244253
for (String platform : ['linux', 'darwin', 'windows']) {
245254
String jdkConfigName = "jdk_${platform}"
Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
#!/bin/bash
22

3-
ES_MAIN_CLASS=org.elasticsearch.plugins.PluginCli \
3+
ES_JAVA_OPTS="--add-opens java.base/sun.security.provider=ALL-UNNAMED $ES_JAVA_OPTS" \
4+
ES_MAIN_CLASS=org.elasticsearch.plugins.PluginCli \
45
ES_ADDITIONAL_CLASSPATH_DIRECTORIES=lib/tools/plugin-cli \
56
"`dirname "$0"`"/elasticsearch-cli \
67
"$@"

0 commit comments

Comments
 (0)