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
{{ message }}
Repository navigation
10.x: docs: ordering by LowerBound() or UpperBound() puts open-ended and empty rows where PostgreSQL puts NULLs (port of #359) #364
The same gap as #359, in the release/10.x docs. docs/ranges.md#sort-ranges documents PostgreSQL's NULLS LAST against memory's null-first for a nullable column, but not for an ordering by a bound. There the NULLs come from non-null ranges, so a required column has them too. README.md and docs/efcore.md#read-bounds-merge-ranges-and-aggregate show bookings.OrderBy(b => b.Period.LowerBound()) as their ordering example. The behaviour is the same on 10.1.0, since the translation is identical.
A Docs: line under ### Fixed in [10.2.0] of the root and EF Core changelogs.
Done when
The docs on release/10.x say where an ordering by a bound puts open-ended and empty rows. The claim is held there and OracleCatalogueTests passes. Close by hand after the merge.
The main change is PR #372 (commit 0fc386f, docs plus a test and a seed): the bullet in docs/efcore.md#read-bounds-merge-ranges-and-aggregate, the sentence in docs/ranges.md#sort-ranges, the comments at the four examples (both READMEs, efcore.md, getting-started.md), claim E72, ExecutedQueryTests.OrderingByABound_PutsTheRowsWithoutItWherePostgresPutsNulls and the seed bound-declared-null-only-for-a-null-argument.patch. The test relies on #349's fix, which 10.x has from #367, so the port cherry-picks the commit as it is. Its Docs: line goes under ### Fixed in [10.2.0].
Port PR: #374, stacked on #373 (both write [10.2.0] and claims.json). It is the -x cherry-pick of 0fc386f (#372), with a ### Fixed section for the Docs: line. The ordering test is green on PostgreSQL 16 and 18 and on EF Core 10.0.13, and its seed is caught on the branch.
Fixed on release/10.x by #374, merged as fb9aeed: docs/efcore.md says an ordering by LowerBound() or UpperBound() puts the empty rows and those without that bound where PostgreSQL puts NULLs, also on a required column, with the != null key that sorts them as memory does. [10.2.0] has the Docs: row under ### Fixed. Ships in 10.2.0 (#358). Closed by hand, since Closes acts only on main.
Activity
CaffeinatedCoder commentedon Oct 24, 2026
The
mainchange is PR #372 (commit 0fc386f, docs plus a test and a seed): the bullet indocs/efcore.md#read-bounds-merge-ranges-and-aggregate, the sentence indocs/ranges.md#sort-ranges, the comments at the four examples (both READMEs,efcore.md,getting-started.md), claim E72,ExecutedQueryTests.OrderingByABound_PutsTheRowsWithoutItWherePostgresPutsNullsand the seedbound-declared-null-only-for-a-null-argument.patch. The test relies on #349's fix, which 10.x has from #367, so the port cherry-picks the commit as it is. ItsDocs:line goes under### Fixedin[10.2.0].CaffeinatedCoder commentedon Oct 24, 2026
Port PR: #374, stacked on #373 (both write
[10.2.0]andclaims.json). It is the-xcherry-pick of 0fc386f (#372), with a### Fixedsection for theDocs:line. The ordering test is green on PostgreSQL 16 and 18 and on EF Core 10.0.13, and its seed is caught on the branch.CaffeinatedCoder commentedon Oct 24, 2026
Fixed on
release/10.xby #374, merged as fb9aeed:docs/efcore.mdsays an ordering byLowerBound()orUpperBound()puts the empty rows and those without that bound where PostgreSQL puts NULLs, also on a required column, with the!= nullkey that sorts them as memory does.[10.2.0]has theDocs:row under### Fixed. Ships in 10.2.0 (#358). Closed by hand, sinceClosesacts only onmain.