SEZ9 commented on issue #12814:
URL: https://github.com/apache/seatunnel/issues/12814#issuecomment-6245642821

   @zhengxiang378928908-code The "Agreed design" section is accepted as the 
implementation contract for this issue. To restate the boundaries we're locking 
in:
   
   - Carrier (string + `StructField` metadata) only when every container on the 
path is a `ROW`; any `ARRAY` / `MAP` on the path fails at preflight.
   - Preflight runs per source table before `MultiTableManager.mergeSchema`, so 
the error names the real table, full column path (`.element` / `.key` / 
`.value`), declared precision and Spark's limit of 38, plus the source-side 
workarounds you listed (drop the column via e.g. `doris.read.field`, cast in 
the source query, or run on Zeta/Flink).
   - Carrier text rules apply to both `InternalRowConverter` and 
`SeaTunnelRowConverter`: plain decimal text only, `null` stays null, lossless 
`setScale` on write, exact scale/precision check on read, malformed values 
rejected with the column path.
   - MySQL source-side clamp stays out of scope and is tracked in #12841.
   
   Please go ahead with a focused PR against this contract. Remaining asks for 
that PR:
   
   1. Unit round trips for both converters plus Spark 2.4 and 3.3 end-to-end 
runs covering top-level and nested `ROW` cases, mixed schemas (wide and normal 
decimals side by side), signed 128-bit extrema, 0, NULL, `DECIMAL(50, 10)`, and 
malformed carrier text.
   2. A preflight test asserting the exact error content for `ARRAY` and `MAP` 
paths, including the table name and column path surviving ahead of the 
`column0..N` rename.
   3. Doris Spark containers stay enabled; EN/ZH docs and the 
incompatible-changes entry included.
   4. Keep #12787 blocked on this PR rather than working around its failures.
   
   Link the PR back here when it's up and I'll review against this section.
   
   <!-- streview-comment:1844 -->


-- 
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]

Reply via email to