You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I have noticed an unexpected behavior when using the in operator while querying. Specifically, if I provide an empty array as a filter value, the query returns the all the documents from the collection instead of an empty result set.
This behavior is counterintuitive because when an empty array is passed, I expect the in filter to match nothing and return no documents.
Expected result: The query should return an empty result set. Actual result: The query returns the entire collection.
Additional Notes: If this behavior is intentional, it would be great to clarify this in the documentation. However, I believe returning an empty result set would make more sense and align better with developer expectations.
Looking forward to your feedback and guidance.
Thank you!
Reproduction Steps
const result = await payload.find({
collection: "tests",
where: {
id: {
in: [], // Expected: returns no documents, Actual: returns all documents
},
},
});
const result = await payload.find({
collection: "tests",
where: {
id: {
equals: null, // This correctly returns an empty result set
},
},
});
Please add a reproduction in order for us to be able to investigate.
Depending on the quality of reproduction steps, this issue may be closed if no reproduction is provided.
Why was this issue marked with the invalid-reproduction label?
To be able to investigate, we need access to a reproduction to identify what triggered the issue. We prefer a link to a public GitHub repository created with create-payload-app@beta -t blank or a forked/branched version of this repository with tests added (more info in the reproduction-guide).
To make sure the issue is resolved as quickly as possible, please make sure that the reproduction is as minimal as possible. This means that you should remove unnecessary code, files, and dependencies that do not contribute to the issue. Ensure your reproduction does not depend on secrets, 3rd party registries, private dependencies, or any other data that cannot be made public. Avoid a reproduction including a whole monorepo (unless relevant to the issue). The easier it is to reproduce the issue, the quicker we can help.
Please test your reproduction against the latest version of Payload to make sure your issue has not already been fixed.
I added a link, why was it still marked?
Ensure the link is pointing to a codebase that is accessible (e.g. not a private repository). "example.com", "n/a", "will add later", etc. are not acceptable links -- we need to see a public codebase. See the above section for accepted links.
Hi,
I have noticed an unexpected behavior when using the
in
operator while querying. Specifically, if I provide an empty array as a filter value, the query returns the all the documents from the collection instead of an empty result set.This behavior is counterintuitive because when an empty array is passed, I expect the in filter to match nothing and return no documents.
Expected result: The query should return an empty result set. Actual result: The query returns the entire collection.
Additional Notes: If this behavior is intentional, it would be great to clarify this in the documentation. However, I believe returning an empty result set would make more sense and align better with developer expectations.
Looking forward to your feedback and guidance.
Thank you!
Reproduction Steps
Link to the code that reproduces this issue
https://github.com/yusuf-zengin/reproduction-for-pl/tree/65b1c8e54ee298321f84e1c124fc148c327c8f53/blank
Which area(s) are affected? (Select all that apply)
Not sure
Environment Info
The text was updated successfully, but these errors were encountered: