goutamadwant commented on issue #9764:
URL: https://github.com/apache/seatunnel/issues/9764#issuecomment-5052721531

   @davidzollo @zhangshenghang I was thinking and going through this request. 
   
   so I reviewed this against the current dry-run implementation and I think 
this feature should be aligned with Layer 2 from #10681 instead of adding a 
separate debug execution path.
   
   `static` and `connect` are already available, and the CLI currently keeps 
`sample` and `shadow` reserved. My proposal for the first version is:
   
   - add `--dry-run sample` with a default limit of 10 rows
   - use the real source reader and transform chain
   - show schema and sampled rows for the source and each configured transform 
output
   - replace configured sinks with an internal preview sink before any sink 
runtime or save-mode code is created
   - support local Zeta execution first so preview rows are returned in the 
invoking terminal
   - disable checkpoint restore, savepoint and async behavior for this mode
   
   For sink DDL preview, I do not think we should call `Catalog.createTable` or 
construct the normal sink because those paths may execute save-mode or external 
mutations. I suggest a separate opt-in sink preview SPI that only renders 
create-table statements. JDBC can be the first implementation and unsupported 
sinks can report `SKIPPED`.
   
   The no-write guarantee would apply to the target side. Source readers still 
perform real reads, so that limitation should be documented clearly.
   
   Does this looks good to you? and local-only first scope make sense? If yes I 
can prepare the detailed class-level design and test plan before implementation.


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