Nikk8091 opened a new pull request, #13122:
URL: https://github.com/apache/seatunnel/pull/13122

   ### Purpose of this pull request
   
   The FilterRowKind pages currently describe only the two row-kind lists and 
one single-table example. They omit the multi-table options and make the 
transform-level include/exclude requirement look unconditional. This rewrite 
documents the existing behavior and gives complete examples for all three 
configuration shapes.
   
   Yes, this is a contribution to Apache SeaTunnel. This handles only the 
FilterRowKind documentation slice of #12809, approved in 
https://github.com/apache/seatunnel/issues/12809#issuecomment-6594311409. It 
does not close the umbrella issue.
   
   - Update only `docs/en/transforms/filter-rowkind.md` and 
`docs/zh/transforms/filter-rowkind.md`.
   - Add the full options table, accepted row kinds, nonempty/exclusive 
constraints, and per-option sections.
   - Explain exact per-table selection, replacement of the transform-level 
rule, regex fallback, and unchanged unlisted tables.
   - Explain omitted versus explicit `rule_match_mode`, including ordered 
`ALL_MATCH` filtering.
   - Provide identical complete FakeSource-to-Console configurations in both 
languages, with expected input/output counts, while retaining the corrected 
plugin name and include/exclude semantics.
   
   Source references checked on dev `94127692`: 
`FilterRowKindTransformFactory#optionRule()`, `FilterRowKinkTransformConfig`, 
`FilterRowKindTransform`, `FieldRowKindMultiCatalogTransform`, 
`TableTransformRuleValidator`, `TransformCommonOptions`, 
`AbstractMultiCatalogTransform`, and `ChainedMapTransform`.
   
   ### Does this PR introduce any user-facing change?
   
   Documentation only. Readers can distinguish a required transform-level rule 
from a valid `table_transform`-only configuration. No production code, option, 
default, or runtime behavior changes.
   
   ### How was this patch tested?
   
   - JDK 11: the 11-module transform reactor passed formatting and `verify`; 32 
existing tests passed, zero failures/errors/skips.
   - `FilterRowKindTransformFactoryTest` (17 tests): include/exclude validity, 
missing/both/empty lists, valid per-table-only and combined rules, entry 
validation, and unchanged unlisted tables.
   - `AbstractMultiCatalogTransformTest` (15 tests): shared multi-table 
behavior, including omitted-mode duplicate rejection and explicit first/all 
matching.
   - A local, non-committed Java harness extracted all three HOCON examples 
from each page, checked EN/ZH equality, parsed them with SeaTunnel's shaded 
`ConfigFactory`, validated each actual factory rule, and applied 
`FieldRowKindMultiCatalogTransform` to three INSERT rows per input table. All 
documented output counts and retained row values/kinds matched. This is 
in-process validation, not an executed engine job.
   - Checked the existing `TestFilterRowKindIT` cases and their 
`filter_row_kind_*` configurations for single-table, mixed, and per-table-only 
behavior. Docker-backed E2E tests were not run locally; no IT or production 
files were changed for this documentation-only scope.
   - Relative Markdown links and `git diff --check` passed.
   - Repository-wide `spotless:apply` passed. Root offline `-DskipTests verify` 
is still running; its result will be added when it finishes.
   
   Reproducible focused command (using the existing local Maven cache):
   
   ```sh
   mvn -o -B -ntp -pl seatunnel-transforms-v2 -am \
     -Dtest=FilterRowKindTransformFactoryTest,AbstractMultiCatalogTransformTest 
\
     -Dsurefire.failIfNoSpecifiedTests=false -DskipIT=true -Dskip.ui=true \
     spotless:apply verify
   ```
   
   ### Check list
   
   - [x] English and Chinese options, examples and behavior descriptions kept 
in sync.
   - [x] Documentation-only scope; no new dependencies, registration, 
distribution, or plugin configuration changes.
   - [x] No runtime incompatibility introduced; migration notes are not needed.
   


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