6.1.5
6.1.5
Changes since 6.1.4
Added
- Component\Result\Stats\Result::getDistinctValues()
- Component\Result\Stats\Result::getCountDistinct()
- Component\Result\Stats\Result::getCardinality()
- Component\Result\Stats\FacetValue::getPercentiles()
- Component\Result\Stats\FacetValue::getDistinctValues()
- Component\Result\Stats\FacetValue::getCountDistinct()
- Component\Result\Stats\FacetValue::getCardinality()
- Component\Result\Stats\FacetValue::getStatValue()
- Plugin PostBigExtractRequest
- Support for Configset API
- Set connection timeout on cURL adapter
Fixed
- Component\Result\Stats\Result::getPercentiles() returns percentiles as an associative array
Changed
-
Component\Result\Stats\Result::getMean() returns
NAN
instead of'NaN'
if mean is NaN -
Component\Result\Stats\FacetValue::getMean() returns
NAN
instead of'NaN'
if mean is NaN -
Component\Result\Stats\Result::getValue() is renamed to getStatValue()
Deprecated
-
Component\Result\Stats\FacetValue::getFacets()
-
Component\Result\Stats\Result::getValue()
Changes since 6.1.3
Added
- Solarium\QueryType\ManagedResources\Result\Command::getWasSuccessful()
- Solarium\QueryType\ManagedResources\Result\Command::getStatusMessage()
- Query a single term in a Managed Resource
Fixed
- Syntax error in request with facet queries that contain local parameters
- HEAD requests could lead to timeouts with cURL adapter
- Fix for reserved characters in managed resources (SOLR-6853)
- Parsing nested details in debug response
Changed
- Solarium\Component/Result/Stats/Result::getValue() is now public
Changes since 6.1.2
Fixed
- possible exception in Debug\Detail::__toString() when sub details are missing
Changes since 6.1.1
Added
- MoreLikeThis::setMaximumDocumentFrequency()
- MoreLikeThis::setMaximumDocumentFrequencyPercentage()
- getInterestingTerms() of MoreLikeThis Component results
Fixed
- Debug\Detail return value types
- Debug\Document return value types
Deprecated
- Support for
mlt.match.include
andmlt.match.offset
in MoreLikeThis Component (they only work in MLT queries)
Changes since 6.1.0
Fixed
- Set Client::VERSION to '6.1.1'. Release 6.1.0 accidentally declared itself as 6.0.4.
Changes since 6.0.4
Added
- Indexing labelled nested child documents through pseudo-fields
- Extract query now supports extractFormat
- Helper::rangeQuery() now supports left-inclusive only and right-inclusive only queries
Fixed
- PrefetchIterator::key() should return 0 instead of NULL on a fresh PrefetchIterator
- PrefetchIterator::next() shouldn't skip fetched results after PrefetchIterator::count() on a fresh PrefetchIterator
- PrefetchIterator::rewind() no longer results in duplicate documents when invoked mid-set
- Fixed incorrect median function
- Fix for maxScore being returned as "NaN" when group.query doesn't match any docs (SOLR-13839)
Changed
- Exception message for invalid/unavailable file in Extract query now contains filename
- Helper::rangeQuery() detects point values without parameter to turn off escaping
Removed
- PHP 7.2 support
Pitfall when upgrading from 3.x or 4.x or 5.x
Setting "timeout" as "option" in the HTTP Client Adapter is deprecated since Solarium 5.2.0 because not all adapters
could handle it. The adapters which can handle it now implement the TimeoutAwareInterface
and you need to set the
timeout using the setTimeout()
function after creating the adapter instance.
In order to fix some issues with complex queries using local parameters solarium 6 destinguishs between query parameters
and local parameters to be embedded in a query. Solarium 5.2 already informed you about the deprecation of some
parameter names which are in fact local parameters. Solarium doen't convert them magically anymore.
Local parameter names now have to be prefixed with local_
if set as option of a constructor.
Solarium 5:
$categoriesTerms = new Solarium\Component\Facet\JsonTerms(['key' => 'categories', 'field' => 'cat', 'limit'=>4,'numBuckets'=>true]);
Solarium 6:
$categoriesTerms = new Solarium\Component\Facet\JsonTerms(['local_key' => 'categories', 'field' => 'cat', 'limit'=>4,'numBuckets'=>true]);
See https://lucene.apache.org/solr/guide/8_5/local-parameters-in-queries.html for an introduction about local parameters.
Pitfall when upgrading from 3.x or 4.x
In the past, the V1 API endpoint solr was not added automatically, so most users set it as path on the endpoint.
This bug was discovered with the addition of V2 API support. In almost every setup, the path has to be set to /
instead of /solr
with this release!
For the same reason it is a must to explicit configure the core or collection.
So an old setting like
'path' => '/solr/xxxx/'
has to be changed to something like
'path' => '/',
'collection' => 'xxxx',