-
Notifications
You must be signed in to change notification settings - Fork 177
Description
OpenSearch inherited a limitation that only allows a single plugin to override the core Engine
. This is problematic because at present there are at least two OpenSearch plugins that Override the Engine
under different IndexSettings
cirucmstances; K-NN and CCR. This means CCR will be unable to replicate KNN indices since the Engine will prevent both plugins from being used in the same index.
OpenSearch/#1401 adds a new extension point to EngineConfig
through EnginePlugin
to enable plugins to override the CodecService
instead of overriding the entire Engine. Note this does not fix a current bug in the implementation of the KNNCodec that silently ignores codec modes like best_compression
. That bug should be worked separately and independently of refactoring the Plugin to use the CodecService extension point.
This change should be non-breaking since it simply changes the injection point of the service. Engine behavior remains the same.