-
Notifications
You must be signed in to change notification settings - Fork 1.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[BUG] Failure in loading metadata when used with OS plugin implementing IndexStorePlugin #17202
Comments
github-actions
bot
added
the
Indexing:Replication
Issues and PRs related to core replication framework eg segrep
label
Jan 30, 2025
andrross
removed
the
Indexing:Replication
Issues and PRs related to core replication framework eg segrep
label
Jan 31, 2025
We see same error with OpenSearch Version 2.18.0. (Our customer is using Version 2.18.0).
|
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Describe the bug
Opensearch
IndexStorePlugin
allows plugin developers to provide custom implementation oforg.apache.lucene.store.Directory
.Plugin developer can write their own implementation of
Directory.createOutput(String filename, IOContext context)
andDirectory.openInput(String filename, IOContext context)
methods.Portal26 (AWS Partner) builds and sells a plugin for OpenSearch. The index store custom plugin adds encryption at rest for the data written to the file system. We have supported the custom index.store.type=titaniam in the index settings and implemented EncryptedFSDirectory to store the data as encrypted.
Current implementation of
Store.readMetadataSnapshot
is directly creating instance ofNIOFSDirectory
instead of usingDirectoryFactory
provided by IndexStorePlugin. This result inCorruptIndexException
while listing store metadata for shard.Related component
Indexing:Replication
To Reproduce
Can be reproduced with 2 node cluster with number_of_replicas 1.
Steps to reproduce the behavior:
Following warning is shown on one of the nodes
Expected behavior
Metadata listing should use IndexStorePlugin to get the Directory instance.
Store.readMetadataSnapshot
should useDirectoryFactory
provided by the IndexStorePlugin to read the metadata.Additional Details
Plugins
None except the custom Plugin implementing IndexStorePlugin
Host/Environment (please complete the following information):
Additional context
Similar direct access to file system was used in Knn instead of using IndexStorePlugin abstraction. This is fixed now.
opensearch-project/k-NN#1228
The text was updated successfully, but these errors were encountered: