Commit 651fe99
Add OpenSearch store support
Implement OpenSearchStore to support Amazon OpenSearch and open-source
OpenSearch deployments. This addresses the incompatibility with the
Elasticsearch client which rejects OpenSearch servers.
Changes:
- Add OpenSearchStore with async/sync variants
- Implement opensearch-py client integration
- Add sanitization strategies for keys and collections
- Include comprehensive test suite
- Support connection via URL or pre-configured client
- Add optional dependency: opensearch-py[async]>=2.0.0
The implementation mirrors the Elasticsearch store architecture but
uses the opensearch-py client library to avoid product detection errors.
Fixes #209
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-authored-by: William Easton <[email protected]>1 parent 7a1780b commit 651fe99
File tree
13 files changed
+1706
-4
lines changed- key-value
- key-value-aio
- src/key_value/aio/stores/opensearch
- tests/stores/opensearch
- key-value-sync
- src/key_value/sync
- code_gen/stores/opensearch
- stores/opensearch
- tests/code_gen/stores/opensearch
13 files changed
+1706
-4
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
40 | 40 | | |
41 | 41 | | |
42 | 42 | | |
| 43 | + | |
43 | 44 | | |
44 | 45 | | |
45 | 46 | | |
| |||
67 | 68 | | |
68 | 69 | | |
69 | 70 | | |
70 | | - | |
| 71 | + | |
71 | 72 | | |
72 | 73 | | |
73 | 74 | | |
| |||
Lines changed: 3 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
0 commit comments