fix(metadata): properly handle casting non-numeric values in search operations with custom metadata #55184
+4
−1
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
If a metadata property is declared with a number type but the value provided are not numeric, it just logs "A non-numeric value encountered at
apps/dav/lib/Files/FileSearchBackend.php#486
" instead of throwing a proper error.Now with a proper error here we have the proper exception being thrown later:
InvalidArgumentException Invalid property value for {http://nextcloud.org/ns}metadata-photos-original_date_time
.See nextcloud/photos#3187 for the actual issue in photos.
(I'm too lazy to add a specific test for this, but feel free to)
Checklist