From 5cd131fbb76127139a84c680b3d7dff0b60ac2d3 Mon Sep 17 00:00:00 2001 From: marko-bekhta Date: Fri, 13 Dec 2024 08:42:40 +0100 Subject: [PATCH 1/4] HSEARCH-5289 Add Elasticsearch 8.17.0 compatibility --- .../dialect/impl/ElasticsearchDialectFactory.java | 2 +- .../impl/ElasticsearchDialectFactoryTest.java | 12 ++++++++++-- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/dialect/impl/ElasticsearchDialectFactory.java b/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/dialect/impl/ElasticsearchDialectFactory.java index 86e98d96959..d9608b150d6 100644 --- a/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/dialect/impl/ElasticsearchDialectFactory.java +++ b/backend/elasticsearch/src/main/java/org/hibernate/search/backend/elasticsearch/dialect/impl/ElasticsearchDialectFactory.java @@ -196,7 +196,7 @@ private ElasticsearchProtocolDialect createProtocolDialectElasticV7(Elasticsearc } private ElasticsearchProtocolDialect createProtocolDialectElasticV8(ElasticsearchVersion version, int minor) { - if ( minor > 16 ) { + if ( minor > 17 ) { VersionLog.INSTANCE.unknownElasticsearchVersion( version ); } else if ( minor == 0 ) { diff --git a/backend/elasticsearch/src/test/java/org/hibernate/search/backend/elasticsearch/dialect/impl/ElasticsearchDialectFactoryTest.java b/backend/elasticsearch/src/test/java/org/hibernate/search/backend/elasticsearch/dialect/impl/ElasticsearchDialectFactoryTest.java index 92365656d73..72f4e08a7ac 100644 --- a/backend/elasticsearch/src/test/java/org/hibernate/search/backend/elasticsearch/dialect/impl/ElasticsearchDialectFactoryTest.java +++ b/backend/elasticsearch/src/test/java/org/hibernate/search/backend/elasticsearch/dialect/impl/ElasticsearchDialectFactoryTest.java @@ -281,14 +281,22 @@ public static List params() { ElasticsearchDistributionName.ELASTIC, "8.16.0", "8.16.0", Elasticsearch814ModelDialect.class, Elasticsearch81ProtocolDialect.class ), - successWithWarning( + success( ElasticsearchDistributionName.ELASTIC, "8.17", "8.17.0", Elasticsearch814ModelDialect.class, Elasticsearch81ProtocolDialect.class ), - successWithWarning( + success( ElasticsearchDistributionName.ELASTIC, "8.17.0", "8.17.0", Elasticsearch814ModelDialect.class, Elasticsearch81ProtocolDialect.class ), + successWithWarning( + ElasticsearchDistributionName.ELASTIC, "8.18", "8.18.0", + Elasticsearch814ModelDialect.class, Elasticsearch81ProtocolDialect.class + ), + successWithWarning( + ElasticsearchDistributionName.ELASTIC, "8.18.0", "8.18.0", + Elasticsearch814ModelDialect.class, Elasticsearch81ProtocolDialect.class + ), successWithWarning( ElasticsearchDistributionName.ELASTIC, "9.0.0", "9.0.0", Elasticsearch814ModelDialect.class, Elasticsearch81ProtocolDialect.class From 781e0a804a553747fd9393766a46857352733bc1 Mon Sep 17 00:00:00 2001 From: marko-bekhta Date: Fri, 13 Dec 2024 08:48:04 +0100 Subject: [PATCH 2/4] HSEARCH-5289 Test against Elasticsearch 8.17.0 by default --- Jenkinsfile | 3 ++- build/container/search-backend/elastic.Dockerfile | 2 +- build/parents/build/pom.xml | 2 +- ci/dependency-update/Jenkinsfile | 5 ++--- pom.xml | 2 +- 5 files changed, 7 insertions(+), 7 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index 8ed1fe82d25..d3f88286394 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -269,7 +269,8 @@ stage('Configure') { new LocalElasticsearchBuildEnvironment(version: '8.13.4', condition: TestCondition.ON_DEMAND), new LocalElasticsearchBuildEnvironment(version: '8.14.3', condition: TestCondition.ON_DEMAND), new LocalElasticsearchBuildEnvironment(version: '8.15.4', condition: TestCondition.ON_DEMAND), - new LocalElasticsearchBuildEnvironment(version: '8.16.1', condition: TestCondition.BEFORE_MERGE, isDefault: true), + new LocalElasticsearchBuildEnvironment(version: '8.16.1', condition: TestCondition.ON_DEMAND), + new LocalElasticsearchBuildEnvironment(version: '8.17.0', condition: TestCondition.BEFORE_MERGE, isDefault: true), // IMPORTANT: Make sure to update the documentation for any newly supported Elasticsearch versions // See version.org.elasticsearch.compatible.expected.text // and version.org.elasticsearch.compatible.regularly-tested.text in POMs. diff --git a/build/container/search-backend/elastic.Dockerfile b/build/container/search-backend/elastic.Dockerfile index 26d037f90b1..5bfb2fa924c 100644 --- a/build/container/search-backend/elastic.Dockerfile +++ b/build/container/search-backend/elastic.Dockerfile @@ -5,4 +5,4 @@ # * update `version.org.elasticsearch.latest` property in a POM file. # * update the tags for 'elasticsearch-current' and 'elasticsearch-next' builds in ci/dependency-update/Jenkinsfile # -FROM docker.io/elastic/elasticsearch:8.16.1 +FROM docker.io/elastic/elasticsearch:8.17.0 diff --git a/build/parents/build/pom.xml b/build/parents/build/pom.xml index 39dfc3712d6..bdd9367de98 100644 --- a/build/parents/build/pom.xml +++ b/build/parents/build/pom.xml @@ -56,7 +56,7 @@ - 7.10, 7.17 or 8.16 + 7.10, 7.17 or 8.17 diff --git a/ci/dependency-update/Jenkinsfile b/ci/dependency-update/Jenkinsfile index 29a6a695aa6..8258548b92e 100644 --- a/ci/dependency-update/Jenkinsfile +++ b/ci/dependency-update/Jenkinsfile @@ -46,8 +46,7 @@ Map settings() { updateProperties: [], onlyRunTestDependingOn: ['hibernate-search-backend-elasticsearch'], // We want to use the snapshot version of an image from the ES registry since that's where they are publishing their snapshots. - additionalMavenArgs: '-Dtest.lucene.skip=true -Dtest.elasticsearch.run.elastic.image.name=docker.elastic.co/elasticsearch/elasticsearch -Dtest.elasticsearch.run.elastic.image.tag=8.16.2-SNAPSHOT', - // This job won't change the versions in the pom. We are passing the latest Elasticsearch version through an additional maven argument `-D` + additionalMavenArgs: '-Dtest.lucene.skip=true -Dtest.elasticsearch.run.elastic.image.name=docker.elastic.co/elasticsearch/elasticsearch -Dtest.elasticsearch.run.elastic.image.tag=8.17.1-SNAPSHOT', // This job won't change the versions in the pom. We are passing the latest Elasticsearch version through an additional maven argument `-D` skipSourceModifiedCheck: true ] // Targets the next major/minor release of the of Elasticsearch @@ -58,7 +57,7 @@ Map settings() { updateProperties: [], onlyRunTestDependingOn: ['hibernate-search-backend-elasticsearch'], // We want to use the snapshot version of an image from the ES registry since that's where they are publishing their snapshots. - additionalMavenArgs: '-Dtest.lucene.skip=true -Dtest.elasticsearch.run.elastic.image.name=docker.elastic.co/elasticsearch/elasticsearch -Dtest.elasticsearch.run.elastic.image.tag=8.17.0-SNAPSHOT', + additionalMavenArgs: '-Dtest.lucene.skip=true -Dtest.elasticsearch.run.elastic.image.name=docker.elastic.co/elasticsearch/elasticsearch -Dtest.elasticsearch.run.elastic.image.tag=8.18.0-SNAPSHOT', // This job won't change the versions in the pom. We are passing the latest Elasticsearch version through an additional maven argument `-D` skipSourceModifiedCheck: true ] diff --git a/pom.xml b/pom.xml index 565fae8490a..f670e7d4240 100644 --- a/pom.xml +++ b/pom.xml @@ -377,7 +377,7 @@ - 8.16.1 + 8.17.0 elastic From 17c4fbc57d1203f074899f612bbeaa7f7366ff36 Mon Sep 17 00:00:00 2001 From: marko-bekhta Date: Fri, 13 Dec 2024 08:49:53 +0100 Subject: [PATCH 3/4] HSEARCH-5288 Upgrade to Elasticsearch client 8.17.0 --- build/parents/build/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build/parents/build/pom.xml b/build/parents/build/pom.xml index bdd9367de98..49ba1cf61a6 100644 --- a/build/parents/build/pom.xml +++ b/build/parents/build/pom.xml @@ -48,7 +48,7 @@ - 8.16.1 + 8.17.0 ${version.org.elasticsearch.latest} https://www.elastic.co/guide/en/elasticsearch/reference/${parsed-version.org.elasticsearch.compatible.main.majorVersion}.${parsed-version.org.elasticsearch.compatible.main.minorVersion} From d3aadd00c7fdf185b8d68a694af918dd28e3c8ce Mon Sep 17 00:00:00 2001 From: marko-bekhta Date: Fri, 13 Dec 2024 08:51:45 +0100 Subject: [PATCH 4/4] HSEARCH-5290 Test against latest Elasticsearch 7.17.26 --- Jenkinsfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Jenkinsfile b/Jenkinsfile index d3f88286394..15a5f3dc29e 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -251,7 +251,7 @@ stage('Configure') { // so we don't test them // See https://hibernate.atlassian.net/browse/HSEARCH-4340 new LocalElasticsearchBuildEnvironment(version: '7.16.3', condition: TestCondition.ON_DEMAND), - new LocalElasticsearchBuildEnvironment(version: '7.17.25', condition: TestCondition.AFTER_MERGE), + new LocalElasticsearchBuildEnvironment(version: '7.17.26', condition: TestCondition.AFTER_MERGE), // Not testing 8.0 because we know there are problems in 8.0.1 (see https://hibernate.atlassian.net/browse/HSEARCH-4497) // Not testing 8.1-8.6 to make the build quicker. new LocalElasticsearchBuildEnvironment(version: '8.1.3', condition: TestCondition.ON_DEMAND),