anshulsingh-py commented on PR #19853: URL: https://github.com/apache/hudi/pull/19853#issuecomment-5592548419
Addressed the full review pass (thanks for the thorough look): **Blocker** - RuntimeReplaceable unwrap now runs to a fixed point — `regexp_substr` unwraps to `NullIf`, itself a wrapper, which a single unwrap pass missed. **Major** - `checkInputDataTypes` now also checked on the raw wrapper (via Spark's own `ImplicitTypeCasts` rule) before unwrapping, not just after — `split_part`'s own declared contract was otherwise discarded once unwrapped to a weaker form. - Widening now runs before the type check inside `resolveViaFunctionRegistry` too (shared `applyCoercionRules`), so `nvl(ts, 0)` and the hardcoded `coalesce(ts, 0)` agree on what's resolved. - Per-row eval errors from registry-resolved functions (invalid regex, out-of-range args) now surface instead of silently returning no rows — guarded so a caller that skips `validateFilterExpression` and evaluates a genuinely unsupported function directly still no-matches safely rather than crashing. **Minors** - `Unevaluable` added as a guard disjunct so the method is safe standalone. - The db-qualified branch is gone entirely (was dead code) — both 2-part and 3+-part names now fall through unresolved. - Fixed test coverage that wasn't actually exercising the guard it claimed to (`max(id) > 0` instead of the ambiguous `percentile`/`any_value` cases), corrected the `current_date` comment, added multi-name-message + validate/keep pairing, added end-to-end procedure-level coverage, consolidated a redundant test. **Deferred** (flagged non-blocking): surfacing Spark's own diagnostic message on rejection instead of the generic "Unsupported functions: X" — needs to distinguish a genuinely-unknown name from a found-but-wrong-arity one to avoid changing the message format for the common case; happy to pick this up as a fast-follow if useful. Rebased onto current master (10 commits). Full `procedure` package suite: 267/267 passing, BUILD SUCCESS. -- 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]
