spring-projects / spring-projects/spring-data-mongodb
Enable SetIsSubset to be used for filtering condition in projection [DATAMONGO-2274]
Open
@christophstrobl is already working on this.
Since Dec 30, 2020.
in: aggregation-framework
in: repository
type: enhancement
- Dominant language
- Java
- Stars
- 1.7k
- Forks
- 1.1k
- PR merge metrics
- No merged PRs in 30d
Description
Yaakov Chaikin opened DATAMONGO-2274 and commented
Currently, this is what's required:
and("props")
.filter("prop", context ->
new Document("$setIsSubset", Arrays.asList("$$prop.valueSet", myList)))
.as("props")
There is no way to use SetIsSubset in this scenario because while SetIsSubset.arraySetSet(String arrayReference) works to point to the sub-property off of the filter (i.e., prop.valueSet), there is no way to do this:
SetIsSubset
.arraySetSet(String arrayReference)
// This is not possible. Expects AggregationExpression or document property reference as array
.isSubsetOf(List<String> arrayToCompareTo)
No further details from DATAMONGO-2274
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.