Skip to content

bug(opensearch): OS client fails to parse sitesearch index settings (MissingRequiredPropertyException) in phase 3 #36324

Description

@fabrizzio-dotCMS

Problem Statement

Under ES→OS migration phase 3 (OpenSearch-only), parsing the sitesearch index settings via the OpenSearch Java client fails to deserialize, throwing a MissingRequiredPropertyException:

ContentletIndexAPIImplTest.testSearch <<< ERROR!
java.io.IOException: Failed to parse index settings for: sitesearch_20260625165130
Caused by: com.dotmarketing.business.DotStateException: Failed to parse index settings for: sitesearch_20260625165130
Caused by: org.opensearch.client.util.MissingRequiredPropertyException: Missing required property 'Builder.<variant kind>'

The opensearch-java client cannot build the settings object for the sitesearch index — a deserialization/mapping gap in the OS settings-read path (likely an index-settings shape the OS client builder requires but isn't provided).

Steps to Reproduce

./mvnw verify -pl :dotcms-integration -Dcoreit.test.skip=false \
  -Dopensearch.phase.test=true -Dopensearch.phase=3 \
  -Dit.test=ContentletIndexAPIImplTest

testSearch errors parsing sitesearch_<ts> index settings.

Acceptance Criteria

  • Reading sitesearch (and content) index settings via the OS client succeeds under phase 3.
  • The settings-parse path no longer throws MissingRequiredPropertyException.
  • ContentletIndexAPIImplTest.testSearch passes under phase 3.

dotCMS Version

main (dev / 1.0.0-SNAPSHOT) — ES→OS migration work.

Severity

High

Links

Found via blast-radius experiment in PR #36268 / issue #36266. Related test-decoupling: #36320.

Metadata

Metadata

Labels

No labels
No labels

Type

No fields configured for Bug.

Projects

Status
New

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions