-
Notifications
You must be signed in to change notification settings - Fork 480
Description
Description
After a deeper review, it was determined that the core classes underlying the OpenSearch functionality can be isolated into seven main groups:
• Foundation: Low-level classes responsible for communication with Elasticsearch/OpenSearch.
• Core Infrastructure: Fundamental classes responsible for index orchestration.
• Mapping Layer: Transformation layer between the search index and Contentlets.
• Business Core: Core business logic.
• Search Layer: Specialized classes dedicated to search operations.
• High-Level API: Business logic that consumes services from the lower layers.
• Utilities: Supporting and helper logic.
This task consolidates the work required for the Core Infrastructure layer, where two high-complexity classes have been identified:
• ESIndexAPI
• ESContentFactoryImpl
Depends on: #34148
The estimated timeline for completion is 3–4 weeks.
Acceptance Criteria
Both ESIndexAPI and ESContentFactoryImpl must remain fully functional within dotCMS and support operation with both Elasticsearch and OpenSearch instances running in parallel. The system must ensure backward compatibility with Elasticsearch while introducing support for OpenSearch. The selection of the underlying search engine must be controlled through a Feature Flag, where enabling the flag activates OpenSearch, and disabling it preserves the existing Elasticsearch behavior, without requiring code changes outside of configuration.
Priority
None
Additional Context
Metadata
Metadata
Assignees
Labels
Type
Projects
Status