Skip to content

QuerydslPredicateBuilder converts collection-like bind values to PathInformation.getLeafType in stead of considering collection element types #2649

Closed
@pschwager

Description

@pschwager

With spring-data-commons version 2.6.3 commit 53d924c the QuerydslPredicateBuilder was changed.

Before this change, it was possible to parse via QueryDSL beta,alpha in gateway.tags / {tags=[beta,alpha]} into a MongoDB query find({"tags": {"$in": ["beta", "alpha"]}})

With if (ClassUtils.isAssignableValue(targetType, value)) { two Strings are compared and thus the conversion to a MongoDB $in query is skipped. Instead the query is translated into find({"tags": "beta,alpha"})

If I comment out the if statement, the code also works with the latest commit of 2.7.x branch.

Metadata

Metadata

Assignees

Labels

type: regressionA regression from a previous release

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions