FAILURE MAP
← Case archive

FA-1763 / Relational algebra / Member archive

Null safe join: Lets a left NULL match every right value · case 03

The query violates its result contract: lets a left null match every right value.

Member previewVariant 3 · 3 implementations · 8 checks per implementation

Case contract

Select ID pairs having identical v, including NULL to NULL matches. Inputs are finite relations a=rows and b=refs with columns (id,k,v,w,flag,parent). IDs are unique within each relation, None is SQL NULL, keys are ASCII strings or None, and other values are integers or None. Return an unordered result bag as lists sorted by repr, preserving multiplicity unless explicitly distinct.

Why this case matters

Executes actual in-memory SQLite relational semantics. The fixtures exercise empty inputs, nullable groups, duplicate facts, known zero, negative values, peer ties and partition boundaries. This models the specified query contract, not optimizer performance, disk durability or a complete migration transaction.

One recorded failure

Sample boundary fixture

This sample comes from the broken implementation of a controlled reproducer.

Boundary fixtureActualExpectedOutcome
mixed nullable groups duplicates ties and truth flags[[103, 103], [103, 113], [103, 123], [103, 13], [103, 23], [103, 33], [103, 43], [103, 53], [103, 63], [103, 73], [103, 83], [103, 93], [113, 63], [113, 83], [123, 103], [123, 113], [123, 123], [123, 13], [123, 23], [123, 33], [123, 43], [123, 53], [123, 63], [123, 73], [123, 83], [123, 93], [13, 103], [13, 113], [13, 123], [13, 13], [13, 23], [13, 33], [13, 43], [13, 53], [13, 63], [13, 73], [13, 83], [13, 93], [133, 103], [133, 113], [133, 123], [133, 13], [133, 23], [133, 33], [133, 43], [133, 53], [133, 63], [133, 73], [133, 83], [133, 93], [153, 113], [153, 23], [153, 33], [163, 113], [163, 23], [163, 33], [173, 103], [173, 113], [173, 123], [173, 13], [173, 23], [173, 33], [173, 43], [173, 53], [173, 63], [173, 73], [173, 83], [173, 93], [183, 113], [183, 23], [183, 33], [23, 63], [23, 83], [33, 113], [33, 23], [33, 33], [43, 113], [43, 23], [43, 33], [63, 103], [63, 43], [63, 93], [73, 53], [83, 113], [83, 23], [83, 33], [93, 103], [93, 113], [93, 123], [93, 13], [93, 23], [93, 33], [93, 43], [93, 53], [93, 63], [93, 73], [93, 83], [93, 93]][[103, 123], [103, 13], [103, 73], [113, 63], [113, 83], [123, 123], [123, 13], [123, 73], [13, 123], [13, 13], [13, 73], [133, 123], [133, 13], [133, 73], [153, 113], [153, 23], [153, 33], [163, 113], [163, 23], [163, 33], [173, 123], [173, 13], [173, 73], [183, 113], [183, 23], [183, 33], [23, 63], [23, 83], [33, 113], [33, 23], [33, 33], [43, 113], [43, 23], [43, 33], [63, 103], [63, 43], [63, 93], [73, 53], [83, 113], [83, 23], [83, 33], [93, 123], [93, 13], [93, 73]]Failed

MEMBER ARCHIVE

The complete case is available to members.

This record includes three runnable implementations, regression fixtures, execution results, and source hashes.

Member access is invitation-based. Sign in with your invited account to inspect the sources.

Sign in to the archive ↗