diff --git a/integrationtest/backend/elasticsearch/src/test/java/org/hibernate/search/integrationtest/backend/elasticsearch/testsupport/util/ElasticsearchTckBackendFeatures.java b/integrationtest/backend/elasticsearch/src/test/java/org/hibernate/search/integrationtest/backend/elasticsearch/testsupport/util/ElasticsearchTckBackendFeatures.java index 7769bab5090..ba7c265bb5f 100644 --- a/integrationtest/backend/elasticsearch/src/test/java/org/hibernate/search/integrationtest/backend/elasticsearch/testsupport/util/ElasticsearchTckBackendFeatures.java +++ b/integrationtest/backend/elasticsearch/src/test/java/org/hibernate/search/integrationtest/backend/elasticsearch/testsupport/util/ElasticsearchTckBackendFeatures.java @@ -102,9 +102,10 @@ public boolean supportsValuesForDynamicField(Class javaType) { return ! dialect.hasBugForBigIntegerValuesForDynamicField(); } else if ( BigDecimal.class.equals( javaType ) ) { - // For some reason, ES 5.6 sometimes fails to index BigDecimal values + // For some reason, ES 5.6 and 6.x sometimes fails to index BigDecimal values // in dynamic fields. - // See https://hibernate.atlassian.net/browse/HSEARCH-4310. + // See https://hibernate.atlassian.net/browse/HSEARCH-4310, + // https://hibernate.atlassian.net/browse/HSEARCH-4310 return ! dialect.hasBugForBigDecimalValuesForDynamicField(); } else { diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/sort/FieldSortDynamicFieldIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/sort/FieldSortDynamicFieldIT.java index 18e60fe4cbc..e47d69a5ce2 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/sort/FieldSortDynamicFieldIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/sort/FieldSortDynamicFieldIT.java @@ -37,13 +37,16 @@ @RunWith(Parameterized.class) public class FieldSortDynamicFieldIT { - private static final List> supportedFieldTypes = new ArrayList<>(); + private static List> supportedFieldTypes; @Parameterized.Parameters(name = "{0}") public static Object[][] parameters() { + supportedFieldTypes = new ArrayList<>(); List parameters = new ArrayList<>(); for ( FieldTypeDescriptor fieldType : FieldTypeDescriptor.getAll() ) { - if ( fieldType.isFieldSortSupported() ) { + if ( fieldType.isFieldSortSupported() + && TckConfiguration.get().getBackendFeatures() + .supportsValuesForDynamicField( fieldType.getJavaType() ) ) { supportedFieldTypes.add( fieldType ); parameters.add( new Object[] { fieldType } ); } diff --git a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/sort/FieldSortTypeCheckingAndConversionIT.java b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/sort/FieldSortTypeCheckingAndConversionIT.java index 3847bfe3467..0c5411749d5 100644 --- a/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/sort/FieldSortTypeCheckingAndConversionIT.java +++ b/integrationtest/backend/tck/src/main/java/org/hibernate/search/integrationtest/backend/tck/search/sort/FieldSortTypeCheckingAndConversionIT.java @@ -60,10 +60,11 @@ @RunWith(Parameterized.class) public class FieldSortTypeCheckingAndConversionIT { - private static final List> supportedFieldTypes = new ArrayList<>(); + private static List> supportedFieldTypes; @Parameterized.Parameters(name = "{0}") public static Object[][] parameters() { + supportedFieldTypes = new ArrayList<>(); List parameters = new ArrayList<>(); for ( FieldTypeDescriptor fieldType : FieldTypeDescriptor.getAll() ) { if ( fieldType.isFieldSortSupported() ) { diff --git a/util/internal/integrationtest/backend/elasticsearch/src/main/java/org/hibernate/search/util/impl/integrationtest/backend/elasticsearch/dialect/Elasticsearch5TestDialect.java b/util/internal/integrationtest/backend/elasticsearch/src/main/java/org/hibernate/search/util/impl/integrationtest/backend/elasticsearch/dialect/Elasticsearch5TestDialect.java index 57f3ae8501a..d2644a32817 100644 --- a/util/internal/integrationtest/backend/elasticsearch/src/main/java/org/hibernate/search/util/impl/integrationtest/backend/elasticsearch/dialect/Elasticsearch5TestDialect.java +++ b/util/internal/integrationtest/backend/elasticsearch/src/main/java/org/hibernate/search/util/impl/integrationtest/backend/elasticsearch/dialect/Elasticsearch5TestDialect.java @@ -25,11 +25,6 @@ public boolean hasBugForSortMaxOnNegativeFloats() { return true; } - @Override - public boolean hasBugForBigDecimalValuesForDynamicField() { - return true; - } - @Override public boolean supportMoreThan1024Terms() { return false; diff --git a/util/internal/integrationtest/backend/elasticsearch/src/main/java/org/hibernate/search/util/impl/integrationtest/backend/elasticsearch/dialect/Elasticsearch68TestDialect.java b/util/internal/integrationtest/backend/elasticsearch/src/main/java/org/hibernate/search/util/impl/integrationtest/backend/elasticsearch/dialect/Elasticsearch68TestDialect.java index 2e79670a041..a6c049ad8b7 100644 --- a/util/internal/integrationtest/backend/elasticsearch/src/main/java/org/hibernate/search/util/impl/integrationtest/backend/elasticsearch/dialect/Elasticsearch68TestDialect.java +++ b/util/internal/integrationtest/backend/elasticsearch/src/main/java/org/hibernate/search/util/impl/integrationtest/backend/elasticsearch/dialect/Elasticsearch68TestDialect.java @@ -47,6 +47,13 @@ public boolean zonedDateTimeDocValueHasUTCZoneId() { return true; } + @Override + public boolean hasBugForBigDecimalValuesForDynamicField() { + // See https://hibernate.atlassian.net/browse/HSEARCH-4310, + // https://hibernate.atlassian.net/browse/HSEARCH-4310 + return true; + } + @Override public boolean supportsSkipOrLimitingTotalHitCount() { return false;