gregfelice commented on issue #2383: URL: https://github.com/apache/age/issues/2383#issuecomment-4875306743
@jrgemignani — we have two open PRs fixing this bug via **opposite** approaches, and they conflict, so whichever merges first forces a rework of the other. Flagging for a maintainer call on direction before either author spends more effort (e.g. #2406 currently needs a rebase I've just asked for): **#2411** (@crprashant) — *narrow.* Adds a separate `age_unwind` SRF and repoints only `transform_cypher_unwind` to it; `age_unnest` is untouched. Low blast radius, no risk to list comprehensions / predicate functions. Deliberately fixes **only** this issue (#2383) — it leaves the sibling list-comprehension null bug (#2393) and the `single()` / predicate three-valued-logic quirk unfixed, since those callers still rely on `agtype_null > agtype_integer` being truthy. *(Currently conflicting + no green CI run.)* **#2406** (@MuhammadTahaNaveed) — *root-cause.* Fixes `age_unnest` in place (emit SQL NULL for `AGTV_NULL`) and rewrites the predicate-function 3VL, so it fixes **#2383 + #2393 + `single()` together** and makes `null > 0` yield `null` per openCypher instead of truthy. Larger surface, but I've reviewed it and the approach is sound; it needs a rebase + two small tidy-ups (`INT8PASSBYVAL`, a comment). They're mutually redundant on the `age_unnest`/UNWIND path — we should merge **one** and close the other. My lean is **#2406** as the more correct end state (fixes the whole null-handling family, not just the UNWIND symptom), with #2411 as the lower-risk fallback if we'd rather ship the narrow fix now and defer the 3VL rework. Your call on the direction — I'll shepherd whichever you pick to green + approval. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
