Skip to content

Commit 8b7702f

Browse files
committed
Fix isLimitSubset to correctly handle unlimited subsets
1 parent 15cffca commit 8b7702f

File tree

2 files changed

+9
-4
lines changed

2 files changed

+9
-4
lines changed

packages/db/src/query/predicate-utils.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -769,9 +769,10 @@ export function isLimitSubset(
769769
subset: number | undefined,
770770
superset: number | undefined
771771
): boolean {
772-
// No limit requirement is always satisfied
772+
// If requesting all data (no limit), we need unlimited data to satisfy it
773773
if (subset === undefined) {
774-
return true
774+
// Only unlimited data can satisfy unlimited request
775+
return superset === undefined
775776
}
776777

777778
// Unlimited superset satisfies any limit requirement

packages/db/tests/predicate-utils.test.ts

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -621,8 +621,12 @@ describe(`isOrderBySubset`, () => {
621621
})
622622

623623
describe(`isLimitSubset`, () => {
624-
it(`should return true for undefined subset`, () => {
625-
expect(isLimitSubset(undefined, 10)).toBe(true)
624+
it(`should return false for undefined subset with limited superset (requesting all data but only have limited)`, () => {
625+
expect(isLimitSubset(undefined, 10)).toBe(false)
626+
})
627+
628+
it(`should return true for undefined subset with undefined superset (requesting all data and have all data)`, () => {
629+
expect(isLimitSubset(undefined, undefined)).toBe(true)
626630
})
627631

628632
it(`should return true for undefined superset`, () => {

0 commit comments

Comments
 (0)