docs/release-notes/index.md
Review the changes, fixes, and more in each version of Elasticsearch PHP Client.
To check for security updates, go to Security announcements for the Elastic stack.
% Release notes include only features, enhancements, and fixes. Add breaking changes, deprecations, and known issues to the applicable release notes sections.
% ## version.next [felasticsearch-php-client-next-release-notes]
% ### Features and enhancements [elasticsearch-php-client-next-features-enhancements] % *
% ### Fixes [elasticsearch-php-client-next-fixes] % *
packDenseVector helper function #1499The packDenseVector function can be used to pack dense vectors for efficient bulk ingesting.
Example usage:
use Elastic\Elasticsearch\Helper\Vectors;
$params = ['body' => []];
// ...
$params['body'][] = ['index' => ['_index' => $index]];
$params['body'][] = [
'docid' => $doc['docid'],
'title' => $doc['title'],
'text' => $doc['text'],
'emb' => Vectors::packDenseVector($doc['emb']),
];
// ...
$response = $client->bulk($params);
Packed dense vectors can provide significant bulk ingest performance improvements.
timeout parameter (int|string)close_job parameter (bool)This query builder should simplify the usage of the Elasticsearch Query Language (ES|QL) in PHP.
Example usage:
$query = Esql\Query::from("books", "books*")
->where('author == "King"', 'year == 1982')
->limit(10);
echo $query;
Output:
FROM books, books*
| WHERE author == "King" AND year == 1982
| LIMIT 10
This release includes the following endpoint changes for Elasticsearch 9.2.0:
project_routing parameter (string), a Lucene query using project metadata tags to limit which projects to search, such as _alias:_origin or _alias:pr. Only supported in serverless.bytes parameter (string), the unit in which to display byte valuestime parameter (string), the unit in which to display time valuesbytes parameter (string), the unit in which to display byte valuestime parameter (string), the unit in which to display time valuesproject_routing parameter (string), a Lucene query using project metadata tags to limit which projects to search, such as _alias:_origin or _alias:pr. Only supported in serverless.bytes parameter (string), the unit in which to display byte valuestime parameter (string), the unit in which to display time valuestime parameter (string), the unit in which to display time valuesbytes parameter (string), the unit in which to display byte valuesbytes parameter (string), the unit in which to display byte valuestime parameter (string), the unit in which to display time valuesbytes parameter (string), the unit in which to display byte valuesbytes parameter (string), the unit in which to display byte valuestime parameter (string), the unit in which to display time valuesbytes parameter (string), the unit in which to display byte valuesbytes parameter (string), the unit in which to display byte valuestime parameter (string), the unit in which to display time valuesbytes parameter (string), the unit in which to display byte valuestime parameter (string), the unit in which to display time valuestime parameter (string), the unit in which to display time valuesignore_unavailable parameter (bool), whether specified concrete indices should be ignored when unavailable (missing or closed). Only allowed when providing an index expression.ignore_throttled (bool), whether specified concrete, expanded or aliased indices should be ignored when throttled. Only allowed when providing an index expression.allow_no_indices (bool), whether to ignore if a wildcard indices expression resolves into no concrete indices. (This includes _all string or when no indices have been specified). Only allowed when providing an index expression.expand_wildcards parameter (string), whether to expand wildcard expression to concrete indices that are open, closed or both.allow_closed parameter (bool), if true, allow closed indices to be returned in the response otherwise if false, keep the legacy behaviour of throwing an exception if index pattern matches closed indicesbytes paremeter (string), the unit in which to display byte valuesbytes paremeter (string), the unit in which to display byte valuesbytes parameter (string), the unit in which to display byte valuestime parameter (string), the unit in which to display time valuesbytes parameter (string), the unit in which to display byte valuesbytes parameter (string), the unit in which to display byte valuesindex parameter (string), specifies the name of the index that you would like an explanation forshard paremeter (int), specifies the ID of the shard that you would like an explanation forprimary parameter (bool), if true, returns explanation for the primary shard for the given shard IDcurrent_node parameter (string), specifies the node ID or the name of the node to only explain a shard that is currently located on the specified nodeThis experimental endpoint has been removed.
project_routing parameter (string), a Lucene query using project metadata tags to limit which projects to search, such as _alias:_origin or _alias:pr. Only supported in serverless.timeout parameter (int|string), specifies the amount of time to wait for the inference request to complete.timeout parameter (int|string), specifies the amount of time to wait for the inference request to complete.timeout parameter (int|string), specifies the amount of time to wait for the inference request to complete.timeout parameter (int|string), specifies the amount of time to wait for the inference request to complete.timeout parameter (int|string), specifies the amount of time to wait for the inference request to complete.timeout parameter (int|string), specifies the amount of time to wait for the inference request to complete.timeout parameter (int|string), specifies the amount of time to wait for the inference request to complete.timeout parameter (int|string), specifies the amount of time to wait for the inference request to complete.timeout parameter (int|string), specifies the amount of time to wait for the inference request to complete.timeout parameter (int|string), specifies the amount of time to wait for the inference request to complete.timeout parameter (int|string), specifies the amount of time to wait for the inference request to complete.timeout parameter (int|string), specifies the amount of time to wait for the inference request to complete.timeout parameter (int|string), specifies the amount of time to wait for the inference request to complete.timeout parameter (int|string), specifies the amount of time to wait for the inference request to complete.timeout parameter (int|string), specifies the amount of time to wait for the inference request to complete.timeout parameter (int|string), specifies the amount of time to wait for the inference request to complete.timeout parameter (int|string), specifies the amount of time to wait for the inference request to complete.timeout parameter (int|string), specifies the amount of time to wait for the inference request to complete.timeout parameter (int|string), specifies the amount of time to wait for the inference request to complete.timeout parameter (int|string), specifies the amount of time to wait for the inference request to complete.timeout parameter (int|string), specifies the amount of time to wait for the inference request to complete.timeout parameter (int|string), specifies the amount of time to wait for the inference request to complete.timeout parameter (int|string), specifies the amount of time to wait for the inference request to complete.timeout parameter (int|string), specifies the amount of time to wait for the inference request to complete.timeout parameter (int|string), specifies the amount of time to wait for the inference request to complete.merge_type parameter (string), the mapping merge type if mapping overrides are being provided in mapping_addition.The allowed values are one of index or template.The index option merges mappings the way they would be merged into an existing index.The template option merges mappings the way they would be merged into a template.project_routing parameter (string), a Lucene query using project metadata tags to limit which projects to search, such as _alias:_origin or _alias:pr. Only supported in serverless.This release includes the following endpoint changes for Elasticsearch 9.1.0:
flat_settings parameter (bool), return settings in flat format (default: false)settings_filter parameter (string), filter out results, for example to filter out sensitive information. Supports wildcards or full settings keystimeout parametercause parameter (string), user defined reason for create the component templateccs_minimize_roundtrips parameter (bool), indicates whether network round-trips should be minimized as part of cross-cluster search requests executionignore_unavailable parameter (bool), whether specified concrete indices should be ignored when unavailable (missing or closed)allow_no_indices parameter (bool), whether to ignore if a wildcard indices expression resolves into no concrete indices. (This includes _all string or when no indices have been specified)expand_wildcards parameter (string), whether to expand wildcard expression to concrete indices that are open, closed or both.allow_partial_results parameter (bool), if true, partial results will be returned if there are shard failures, but the query can continue to execute on other clusters and shards. If false, the entire query will fail if there are any failures.format parameter (string), a short version of the Accept header, e.g. json, yamlallow_partial_results parameter (bool), if true, partial results will be returned if there are shard failures, but the query can continue to execute on other clusters and shards. If false, the entire query will fail if there are any failures.local parameter.ignore_unavailable parameter (bool), whether specified concrete indices should be ignored when unavailable (missing or closed)allow_no_indices parameter (bool), whether to ignore if a wildcard indices expression resolves into no concrete indices. (This includes _all string or when no indices have been specified)expand_wildcards parameter (string), whether to expand wildcard expression to concrete indices that are open, closed or both.state parameter (string|array<string>), filter snapshots by a comma-separated list of states. Valid state values are 'SUCCESS', 'IN_PROGRESS', 'FAILED', 'PARTIAL', or 'INCOMPATIBLE'.register_operation_count parameter (int), the minimum number of linearizable register operations to perform in total. Defaults to 10.refresh parameter (bool), refresh search analyzers to update synonymsrefresh parameter (bool), refresh search analyzers to update synonymsrefresh parameter (bool), refresh search analyzers to update synonymsrequire_alias parameter (bool), when true, requires destination to be an alias. Default is falserequire_data_stream parameter (bool), when true, requires destination to be a data stream (existing or to be created). Default is falseignore_unavailable parameter (bool), whether specified concrete indices should be ignored when unavailable (missing or closed)ignore_throttled parameter (bool), whether specified concrete, expanded or aliased indices should be ignored when throttledallow_no_indices parameter (bool), whether to ignore if a wildcard indices expression resolves into no concrete indices. (This includes _all string or when no indices have been specified)expand_wildcards parameter (string), whether to expand wildcard expression to concrete indices that are open, closed or both.routing parameter (string|array<string>), a comma-separated list of specific routing valuesinclude_named_queries_score parameter (bool), indicates whether hit.matched_queries should be rendered as a map that includes the name of the matched query associated with its score (true) or as an array containing the name of the matched queries (false)max_concurrent_shard_requests parameter (int), the number of concurrent shard requests per node executed concurrently when opening this point-in-time. This value should be used to limit the impact of opening the point-in-time on the clusterrequire_alias parameter (bool), when true, requires destination to be an alias.grid_agg parameter (string), aggregation used to create a grid for field.elastic/elasticsearch-serverless client is being deprecated, and its functionality has been merged back into this client. This should have zero impact on the way the client works by default. If an endpoint is available in serverless, the PHP function will contains a @group serverless phpdoc attribute.
If you try to use an endpoint that is not available in serverless you will get a 410 HTTP error with a message as follows:
"this endpoint exists but is not available when running in serverless mode".
The 9.0.0 client can recognize that it is communicating with a serverless instance if you are using a URL managed by Elastic (e.g. *.elastic.cloud).
If you are using a proxy, the client will be able to recognize that the host is serverless from the first response. Alternatively, you can explicitly indicate that the host is serverless using the Client::setServerless(true) function (false by default).