Skip to content

Commit 923ef9f

Browse files
committed
2 parents 9129e1a + 31f23c9 commit 923ef9f

File tree

47 files changed

+1636
-175
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

47 files changed

+1636
-175
lines changed

_about/version-history.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,11 +9,13 @@ permalink: /version-history/
99

1010
OpenSearch version | Release highlights | Release date
1111
:--- | :--- | :---
12-
[3.3.1](https://github.com/opensearch-project/opensearch-build/blob/main/release-notes/opensearch-release-notes-3.3.1.md) | Fixes backward compatibility handling of date fields while maintaining performance optimizations. The `skip_list` parameter is now automatically set to `true` for new `@timestamp` fields created since 3.3.0, while preserving `skip_list=false` for existing indexes with `@timestamp` or index sort date fields. This approach ensures date histogram aggregation performance benefits for new indexes while maintaining compatibility with existing workloads. For a full list of release highlights, see the [Release Notes](https://github.com/opensearch-project/opensearch-build/blob/main/release-notes/opensearch-release-notes-3.3.1.md). | 21 October 2025
12+
[3.3.2](https://github.com/opensearch-project/opensearch-build/blob/main/release-notes/opensearch-release-notes-3.3.2.md) | Includes maintenance changes and bug fixes for the OpenSearch core engine and ML Commons, Neural Search, Skills, k-NN and Security plugins. For a full list of release highlights, see the [Release Notes](https://github.com/opensearch-project/opensearch-build/blob/main/release-notes/opensearch-release-notes-3.3.2.md). | 30 October 2025
13+
[3.3.1](https://github.com/opensearch-project/opensearch-build/blob/main/release-notes/opensearch-release-notes-3.3.1.md) | Fixes backward compatibility handling of date fields while maintaining performance optimizations. The `skip_list` parameter is now automatically set to `true` for new `@timestamp` fields created since 3.3.0, while preserving `skip_list=false` for existing indexes with `@timestamp` or index sort date fields. This approach ensures date histogram aggregation performance benefits for new indexes while maintaining compatibility with existing workloads. For a full list of release highlights, see the [Release Notes](https://github.com/opensearch-project/opensearch-build/blob/main/release-notes/opensearch-release-notes-3.3.1.md). | 22 October 2025
1314
[3.3.0](https://github.com/opensearch-project/opensearch-build/blob/main/release-notes/opensearch-release-notes-3.3.0.md) | Introduces redesigned Discover interface with log analytics and distributed tracing capabilities, and Apache Calcite as default PPL query engine with expanded functions. Makes agentic search and agentic memory APIs generally available for AI applications. Implements Seismic algorithm for neural sparse search performance improvements and processor chains for data transformation pipelines. Expands gRPC support for additional query types and adds experimental streaming with Apache Arrow Flight. Includes workload management enhancements with rule-based auto-tagging and query monitoring capabilities. For a full list of release highlights, see the [Release Notes](https://github.com/opensearch-project/opensearch-build/blob/main/release-notes/opensearch-release-notes-3.3.0.md). | 14 October 2025
1415
[3.2.0](https://github.com/opensearch-project/opensearch-build/blob/main/release-notes/opensearch-release-notes-3.2.0.md) | Updates Search Relevance Workbench. Makes gRPC APIs generally available. Introduces derived source, updates workload management, semantic field, and star tree functionality. Adds experimental Agentic Memory APIs and Job Scheduler APIs. For a full list of release highlights, see the [Release Notes](https://github.com/opensearch-project/opensearch-build/blob/main/release-notes/opensearch-release-notes-3.2.0.md). | 19 August 2025
1516
[3.1.0](https://github.com/opensearch-project/opensearch-build/blob/main/release-notes/opensearch-release-notes-3.1.0.md) | Makes GPU acceleration for vector index builds generally available. Introduces memory-optimized search for Faiss indexes using Lucene HNSW, semantic field type for streamlined semantic search, and Search Relevance Workbench for search quality optimization. Makes star-tree indexes generally available with support for comprehensive query types. Enhances observability with ML Commons metrics integration, custom index support for OpenTelemetry data, and new PPL commands for JSON manipulation. Improves agent management with Update Agent API and persistent MCP tools. Includes security enhancements with immutable user objects and new resource sharing framework. For a full list of release highlights, see the [Release Notes](https://github.com/opensearch-project/opensearch-build/blob/main/release-notes/opensearch-release-notes-3.1.0.md). | 24 June 2025
1617
[3.0.0](https://github.com/opensearch-project/opensearch-build/blob/main/release-notes/opensearch-release-notes-3.0.0.md) | Upgrades to Lucene 10 for improved indexing and vector search. Adds experimental gRPC support and pull-based ingestion from Kafka and Kinesis. Introduces GPU acceleration for vector operations and semantic sentence highlighting. Improves range query performance and hybrid search with z-score normalization. Adds plan-execute-reflect agents and native MCP protocol support for agentic workflows. Enhances security with a new Java agent replacing the Security Manager. Includes PPL query improvements with lookup, join, and subsearch commands. For a full list of release highlights, see the [Release Notes](https://github.com/opensearch-project/opensearch-build/blob/main/release-notes/opensearch-release-notes-3.0.0.md). | 06 May 2025
18+
[2.19.4](https://github.com/opensearch-project/opensearch-build/blob/main/release-notes/opensearch-release-notes-2.19.4.md) | Fixes critical security vulnerabilities across multiple components including ML Commons, Query Insights Dashboards, and SQL. Resolves bugs in Flow Framework multi-tenancy, Security wildcard matching, and Query Insights time validation. Includes extensive CVE fixes and dependency updates across dashboards plugins. For a full list of release highlights, see the [Release Notes](https://github.com/opensearch-project/opensearch-build/blob/main/release-notes/opensearch-release-notes-2.19.4.md). | 06 November 2025
1719
[2.19.3](https://github.com/opensearch-project/opensearch-build/blob/main/release-notes/opensearch-release-notes-2.19.3.md) | Improves Flow Framework with enhanced memory handling and workflow step processing. Fixes several Query Insights and Query Insights Dashboards issues. Implements security updates across multiple components. Updates infrastructure components and documentation across multiple plugins. For a full list of release highlights, see the [Release Notes](https://github.com/opensearch-project/opensearch-build/blob/main/release-notes/opensearch-release-notes-2.19.3.md). | 22 July 2025
1820
[2.19.2](https://github.com/opensearch-project/opensearch-build/blob/main/release-notes/opensearch-release-notes-2.19.2.md) | Improves query insights with better index handling, a new verbose API parameter, and a default index template. Fixes bugs across Query Insights, Observability, Flow Framework, and Dashboards. Includes multiple CVE fixes, test enhancements, and a new PGP key for artifact verification. For a full list of release highlights, see the [Release Notes](https://github.com/opensearch-project/opensearch-build/blob/main/release-notes/opensearch-release-notes-2.19.2.md). | 29 April 2025
1921
[2.19.1](https://github.com/opensearch-project/opensearch-build/blob/main/release-notes/opensearch-release-notes-2.19.1.md) | Adds execution hint for cardinality aggregator. Includes bug fixes for ML Commons, Query Insights Dashboards, and Remote Metadata SDK. Contains maintenance updates for several components. For a full list of release highlights, see the [Release Notes](https://github.com/opensearch-project/opensearch-build/blob/main/release-notes/opensearch-release-notes-2.19.1.md). | 27 February 2025

_analyzers/language-analyzers/index.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ redirect_from:
1313
# Language analyzers
1414

1515
OpenSearch supports the following language analyzers:
16-
`arabic`, `armenian`, `basque`, `bengali`, `brazilian`, `bulgarian`, `catalan`, `czech`, `danish`, `dutch`, `english`, `estonian`, `finnish`, `french`, `galician`, `german`, `greek`, `hindi`, `hungarian`, `indonesian`, `irish`, `italian`, `latvian`, `lithuanian`, `norwegian`, `persian`, `portuguese`, `romanian`, `russian`, `sorani`, `spanish`, `swedish`, `thai`, and `turkish`.
16+
`arabic`, `armenian`, `basque`, `bengali`, `brazilian`, `bulgarian`, `catalan`, `czech`, `danish`, `dutch`, `english`, `estonian`, `finnish`, `french`, `galician`, `german`, `greek`, `hindi`, `hungarian`, `indonesian`, `irish`, `italian`, `latvian`, `lithuanian`, `norwegian`, `persian`, [`polish`]({{site.url}}{{site.baseurl}}/analyzers/language-analyzers/polish/) (requires plugin), `portuguese`, `romanian`, `russian`, `sorani`, `spanish`, `swedish`, `thai`, `turkish`, and [`ukrainian`]({{site.url}}{{site.baseurl}}/analyzers/language-analyzers/ukrainian/) (requires plugin).
1717

1818
To use an analyzer when you map an index, specify the value in your query. For example, to map your index with the French language analyzer, specify the `french` value in the analyzer field:
1919

Lines changed: 126 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,126 @@
1+
---
2+
layout: default
3+
title: Polish
4+
nav_order: 255
5+
parent: Language analyzers
6+
grand_parent: Analyzers
7+
---
8+
9+
# Polish analyzer
10+
11+
The Polish language analyzer (`polish`) provides analysis for Polish text. This analyzer is part of the `analysis-stempel` plugin, which must be installed before use.
12+
13+
## Installing the plugin
14+
15+
Before you can use the Polish analyzer, you must install the `analysis-stempel` plugin by running the following command:
16+
17+
```bash
18+
./bin/opensearch-plugin install analysis-stempel
19+
```
20+
{% include copy.html %}
21+
22+
For more information, see [Additional plugins]({{site.url}}{{site.baseurl}}/install-and-configure/additional-plugins/): Complete list of available OpenSearch plugins.
23+
24+
## Using the Polish analyzer
25+
26+
To use the Polish analyzer when you map an index, specify the `polish` value in the analyzer field:
27+
28+
```json
29+
PUT my-index
30+
{
31+
"mappings": {
32+
"properties": {
33+
"content": {
34+
"type": "text",
35+
"analyzer": "polish"
36+
}
37+
}
38+
}
39+
}
40+
```
41+
{% include copy-curl.html %}
42+
43+
## Configuring a custom Polish analyzer
44+
45+
You can configure a custom Polish analyzer by creating a custom analyzer that uses the Polish stemmer token filter. The default Polish analyzer applies the following analysis chain:
46+
47+
1. **Tokenizer**: `standard`
48+
2. **Token filters**:
49+
- `lowercase`
50+
- `polish_stop` (removes Polish stop words)
51+
- `polish_stem` (applies Polish stemming)
52+
53+
### Example: Custom Polish analyzer
54+
55+
```json
56+
PUT my-polish-index
57+
{
58+
"settings": {
59+
"analysis": {
60+
"analyzer": {
61+
"custom_polish": {
62+
"type": "custom",
63+
"tokenizer": "standard",
64+
"filter": [
65+
"lowercase",
66+
"polish_stop",
67+
"polish_stem"
68+
]
69+
}
70+
}
71+
}
72+
},
73+
"mappings": {
74+
"properties": {
75+
"title": {
76+
"type": "text",
77+
"analyzer": "custom_polish"
78+
},
79+
"content": {
80+
"type": "text",
81+
"analyzer": "polish"
82+
}
83+
}
84+
}
85+
}
86+
```
87+
{% include copy-curl.html %}
88+
89+
## Polish token filters
90+
91+
The `analysis-stempel` plugin provides the following token filters for Polish language processing.
92+
93+
### `polish_stop` token filter
94+
95+
Removes common Polish stop words from the token stream.
96+
97+
### `polish_stem` token filter
98+
99+
Applies Polish-specific stemming rules to reduce words to their root forms using the Stempel stemming algorithm.
100+
101+
## Generated tokens
102+
103+
Use the following request to examine the tokens generated using the analyzer:
104+
105+
```json
106+
POST _analyze
107+
{
108+
"analyzer": "polish",
109+
"text": "Jestem programistą w Polsce i pracuję z OpenSearch"
110+
}
111+
```
112+
{% include copy-curl.html %}
113+
114+
The response contains the generated tokens:
115+
116+
```json
117+
{
118+
"tokens": [
119+
{"token": "jest", "start_offset": 0, "end_offset": 6, "type": "<ALPHANUM>", "position": 0},
120+
{"token": "prograć", "start_offset": 7, "end_offset": 18, "type": "<ALPHANUM>", "position": 1},
121+
{"token": "polsce", "start_offset": 21, "end_offset": 27, "type": "<ALPHANUM>", "position": 3},
122+
{"token": "pracować", "start_offset": 30, "end_offset": 37, "type": "<ALPHANUM>", "position": 5},
123+
{"token": "opensearch", "start_offset": 40, "end_offset": 50, "type": "<ALPHANUM>", "position": 7}
124+
]
125+
}
126+
```
Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,78 @@
1+
---
2+
layout: default
3+
title: Ukrainian
4+
nav_order: 340
5+
parent: Language analyzers
6+
grand_parent: Analyzers
7+
---
8+
9+
# Ukrainian analyzer
10+
11+
The Ukrainian language analyzer (`ukrainian`) provides analysis for Ukrainian text. This analyzer is part of the `analysis-ukrainian` plugin, which must be installed before use.
12+
13+
## Installing the plugin
14+
15+
Before you can use the Ukrainian analyzer, you must install the `analysis-ukrainian` plugin by running the following command:
16+
17+
```bash
18+
./bin/opensearch-plugin install analysis-ukrainian
19+
```
20+
{% include copy.html %}
21+
22+
For more information, see [Additional plugins]({{site.url}}{{site.baseurl}}/install-and-configure/additional-plugins/): Complete list of available OpenSearch plugins.
23+
24+
## Using the Ukrainian analyzer
25+
26+
To use the Ukrainian analyzer when you map an index, specify the `ukrainian` value in the analyzer field:
27+
28+
```json
29+
PUT my-index
30+
{
31+
"mappings": {
32+
"properties": {
33+
"content": {
34+
"type": "text",
35+
"analyzer": "ukrainian"
36+
}
37+
}
38+
}
39+
}
40+
```
41+
{% include copy-curl.html %}
42+
43+
## Ukrainian language processing
44+
45+
The Ukrainian analyzer processes text using the following approach:
46+
47+
1. **Tokenization**: Splits text into individual words.
48+
2. **Stop word removal**: Removes common Ukrainian stop words like "і", "в", "з", "для", "та", and so on.
49+
3. **Morphological analysis**: Generates various word forms and stems for Ukrainian words.
50+
4. **Case normalization**: Handles Ukrainian text appropriately.
51+
52+
The Ukrainian analyzer uses sophisticated morphological analysis that can generate multiple forms of words to improve search recall. Unlike some other language analyzers, the Ukrainian plugin does not expose individual token filters for custom configuration.
53+
54+
## Generated tokens
55+
56+
Use the following request to examine the tokens generated using the analyzer:
57+
58+
```json
59+
POST _analyze
60+
{
61+
"analyzer": "ukrainian",
62+
"text": "Я програміст і працюю з OpenSearch в Україні"
63+
}
64+
```
65+
{% include copy-curl.html %}
66+
67+
The response contains the generated tokens:
68+
69+
```json
70+
{
71+
"tokens": [
72+
{"token": "програміст", "start_offset": 2, "end_offset": 12, "type": "<ALPHANUM>", "position": 1},
73+
{"token": "працювати", "start_offset": 15, "end_offset": 21, "type": "<ALPHANUM>", "position": 3},
74+
{"token": "opensearch", "start_offset": 24, "end_offset": 34, "type": "<ALPHANUM>", "position": 5},
75+
{"token": "Україна", "start_offset": 37, "end_offset": 44, "type": "<ALPHANUM>", "position": 7}
76+
]
77+
}
78+
```

_clients/ruby.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ has_children: false
77

88
# Ruby client
99

10-
The OpenSearch Ruby client allows you to interact with your OpenSearch clusters through Ruby methods rather than HTTP methods and raw JSON. For the client's complete API documentation and additional examples, see the [`opensearch-transport`](https://rubydoc.info/gems/opensearch-transport), [`opensearch-api`](https://rubydoc.info/gems/opensearch-api), [`opensearch-dsl`](https://rubydoc.info/gems/opensearch-dsl), and [`opensearch-ruby`](https://rubydoc.info/gems/opensearch-ruby/) gem documentation.
10+
The OpenSearch Ruby client allows you to interact with your OpenSearch clusters through Ruby methods rather than HTTP methods and raw JSON. For the client's complete API documentation, see the [opensearch-ruby repository](https://github.com/opensearch-project/opensearch-ruby) documentation. For additional examples, see [`opensearch-transport`](https://rubygems.org/gems/opensearch-transport/), [`opensearch-api`](https://rubygems.org/gems/opensearch-api/), [`opensearch-dsl`](https://rubygems.org/gems/opensearch-dsl/), and [`opensearch-ruby`](https://rubygems.org/gems/opensearch-ruby/) gem documentation.
1111

1212
This getting started guide illustrates how to connect to OpenSearch, index documents, and run queries. For the client source code, see the [opensearch-ruby repo](https://github.com/opensearch-project/opensearch-ruby).
1313

_config.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ latesturl: "/latest" # The subpath of the latest version. Used for non-version-s
66
url: "https://docs.opensearch.org" # the base hostname & protocol for your site, e.g. http://example.com
77
permalink: /:path/
88

9-
opensearch_version: '3.3.1'
9+
opensearch_version: '3.3.2'
1010
opensearch_dashboards_version: '3.3.0'
1111
opensearch_major_minor_version: '3.3'
1212
lucene_version: '10_3_1'

_dashboards/management/accelerate-external-data.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ OpenSearch creates a new index from the covering index data. You can use this ne
7777

7878
1. For **Index name**, enter a valid index name. Note that each table can have multiple covering indexes.
7979
2. Choose a **Refresh type**. By default, OpenSearch automatically refreshes the index. Otherwise, you must manually trigger a refresh using a REFRESH statement.
80-
3. Enter a **Checkpoint location**, which is a path for refresh job checkpoints. The location must be a path in a file system compatible with the Hadoop Distributed File System (HDFS). For more information, see [Starting streaming queries](https://spark.apache.org/docs/3.5.1/structured-streaming-programming-guide.html#starting-streaming-queries).
80+
3. Enter a **Checkpoint location**, which is a path for refresh job checkpoints. The location must be a path in a file system compatible with the Hadoop Distributed File System (HDFS). For more information, see [Starting streaming queries](https://spark.apache.org/docs/latest/streaming/apis-on-dataframes-and-datasets.html#starting-streaming-queries).
8181
4. Define the covering index fields by selecting **(add fields here)** under **Covering index definition**.
8282
5. Select **Create acceleration** to apply your covering index settings.
8383
6. View the covering index query details and then click **Run**. OpenSearch adds your index to the left navigation pane.

_dashboards/management/scheduled-query-acceleration.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -106,7 +106,7 @@ When creating indexes using an accelerated query, you can specify the following
106106
|:--- | :--- |
107107
| `auto_refresh` | Enables automatic refresh for the index. If `true`, the index refreshes automatically at the specified interval. If `false`, the refresh operation must be triggered manually using the `REFRESH` statement. Default is `false`. |
108108
| `refresh_interval` | Defines the amount of time between index refresh operations for the index, which determines how frequently new data is ingested into the index. This is applicable only when `auto_refresh` is enabled. The interval determines how frequently new data is integrated and can be specified in formats like `1 minute` or `10 seconds`. For valid time units, see [Time units](#time-units).|
109-
| `scheduler_mode` | Specifies the scheduling mode for auto-refresh (internal or external scheduling). The external scheduler requires a `checkpoint_location` (a path for refresh job checkpoints) for state management. For more information, see [Starting streaming queries](https://spark.apache.org/docs/3.5.1/structured-streaming-programming-guide.html#starting-streaming-queries). Valid values are `internal` and `external`.|
109+
| `scheduler_mode` | Specifies the scheduling mode for auto-refresh (internal or external scheduling). The external scheduler requires a `checkpoint_location` (a path for refresh job checkpoints) for state management. For more information, see [Starting streaming queries](https://spark.apache.org/docs/latest/streaming/apis-on-dataframes-and-datasets.html#starting-streaming-queries). Valid values are `internal` and `external`.|
110110

111111
For more information and additional available parameters, see [Flint index refresh](https://github.com/opensearch-project/opensearch-spark/blob/main/docs/index.md#flint-index-refresh).
112112

0 commit comments

Comments
 (0)