SEZ9 commented on PR #11206:
URL: https://github.com/apache/seatunnel/pull/11206#issuecomment-6553353143

   Thanks for the update on `d4faf1ea1aab8414aea81371c7c5112078f96739` (merge 
of `dev` `3ac2d1cec6a` plus the fix commit). I'll wait for run 41164176211 to 
finish before drawing conclusions from it.
   
   On the `testRuntimeRegistrationFailurePolicy` root cause: the explanation is 
clear and I agree with the classification — the 
`[MULTI_TABLE_ISOLATED_FAILURE]` is the `CONTINUE_OTHER_TABLES` 
all-tables-isolated rule firing because the test started with an empty writer 
map, so it is neither the unsupported-sink case (F2) nor the retry/idempotency 
gap (F5). Starting the test with `db1.healthy` and asserting that the healthy 
table keeps writing while no row of the rejected table reaches a writer sounds 
like the right fix. One ask: please keep the transient `IOException` during 
runtime writer creation (F5) as a separate test case, so the retry/idempotency 
contract gets its own coverage rather than being inferred from the 
failure-policy test.
   
   The remaining items from the previous review are not covered in this 
comment, so a short status per item would help me finish:
   
   - **F1 (HIGH, identifier injection):** is validation/quoting of 
runtime-discovered database/table names now enforced in code on the generated 
sink SQL and the `${database_name}_${table_name}` template, or still 
documentation-only?
   - **F2 (HIGH, unsupported sink):** what happens when a runtime 
`CreateTableEvent` reaches a sink that does not support newly created tables 
via `supportsNewlyCreatedTable()` — fail the job, or drop rows? Please define 
it on the interface and cover it with a test.
   - **F3 (HIGH, default of `scan.newly-added-table.enabled`):** has the `true` 
default been reconsidered, or is there a rationale for changing 
checkpoint-restore behaviour of existing wildcard jobs on upgrade?
   - **F4 (MEDIUM, sink-side DDL from source events):** where is the 
routing/target-scope check that prevents a source-side CREATE TABLE from 
creating tables outside the configured sink scope?
   - **F6 (MEDIUM, `MultiTableState` format):** how do old checkpoints restore, 
and what happens on rollback with a checkpoint that already contains 
runtime-registered tables?
   - **F7 (MEDIUM, docs):** the JDBC sink documentation still needs the 
`exactly_once = false` / `generate_sink_sql = true` constraints.
   - **F8 (LOW, allowlist):** `[A-Za-z_][A-Za-z0-9_$]*` rejects legal MySQL 
table names starting with a digit — please either widen the pattern or document 
the limitation explicitly.
   
   If any of these were handled in the fix commit, a short pointer per item is 
enough.
   
   <!-- streview-comment:2198 -->


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