mirror of
https://github.com/nextcloud/server.git
synced 2026-05-28 04:32:30 -04:00
Merge pull request #52542 from nextcloud/artonge/fix/forward_extra
fix: Forward 'extra' argument when optimizing query
This commit is contained in:
commit
9a16e4fd14
2 changed files with 2 additions and 2 deletions
|
|
@ -32,7 +32,7 @@ class OrEqualsToIn extends ReplacingOptimizerStep {
|
|||
$value = $comparison->getValue();
|
||||
return $value;
|
||||
}, $group);
|
||||
$in = new SearchComparison(ISearchComparison::COMPARE_IN, $field, $values);
|
||||
$in = new SearchComparison(ISearchComparison::COMPARE_IN, $field, $values, $group[0]->getExtra());
|
||||
$pathEqHash = array_reduce($group, function ($pathEqHash, ISearchComparison $comparison) {
|
||||
return $comparison->getQueryHint(ISearchComparison::HINT_PATH_EQ_HASH, true) && $pathEqHash;
|
||||
}, true);
|
||||
|
|
|
|||
|
|
@ -24,7 +24,7 @@ class SplitLargeIn extends ReplacingOptimizerStep {
|
|||
) {
|
||||
$chunks = array_chunk($operator->getValue(), 1000);
|
||||
$chunkComparisons = array_map(function (array $values) use ($operator) {
|
||||
return new SearchComparison(ISearchComparison::COMPARE_IN, $operator->getField(), $values);
|
||||
return new SearchComparison(ISearchComparison::COMPARE_IN, $operator->getField(), $values, $operator->getExtra());
|
||||
}, $chunks);
|
||||
|
||||
$operator = new SearchBinaryOperator(ISearchBinaryOperator::OPERATOR_OR, $chunkComparisons);
|
||||
|
|
|
|||
Loading…
Reference in a new issue