sharpca commented on PR #13083:
URL: https://github.com/apache/seatunnel/pull/13083#issuecomment-6562404389

   Added the focused IT case you asked for, in the existing fixture rather than 
a new harness.
   
   **What was added** — 
`JdbcMysqlSplitIT#testFixedStringSplitsReadAllRowsUnderTurkishLocale`, in 
`connector-jdbc-e2e-part-7` (+102 lines, the only change in `704af8840`):
   
   - A dedicated table `auto.fixed_string_locale (id VARCHAR(32) PRIMARY KEY) 
COLLATE utf8mb4_general_ci`, so the collation is case-insensitive and the 
boundary fold matters.
   - 20 rows whose identifiers mix `I` and `i` prefixes (`I1`, `i2`, `I3`, … 
`i20`). The digits keep them distinct even under a case-insensitive collation, 
so the primary key does not collapse the two spellings.
   - The default locale is switched to `tr-TR` **before** catalog discovery 
(`MySqlCatalog.open()`, `getTable`) and stays in effect while 
`FixedChunkSplitter` performs `charset_based` string splitting and while each 
split statement executes. All three locale categories are restored in `finally`.
   
   **What it asserts** — more than one split is produced; the set of row 
identities read across all splits equals the inserted set; and every row is 
read exactly once. A boundary fold that shifted between locales therefore shows 
up as a missing row or a duplicate, which is the gap your Issue 1 describes.
   
   The split/read API usage deliberately mirrors the neighbouring 
`testFixedNumericSplitsReadAllRows`: same `JdbcSourceTable.builder()` with 
`query` / `partitionColumn` / `partitionNumber`, same 
`generateSplitStatement(split, table.getTableSchema())` loop.
   
   **What I could not do here, stated plainly** — I did not compile or run this 
case. Two separate blockers on this machine:
   
   1. No Docker daemon, so the MySQL container cannot start.
   2. Dependency resolution for `connector-jdbc-e2e-part-7` fails before 
compilation: `connector-jdbc-e2e-common:jar:tests`, `connector-assert` and the 
five `seatunnel-flink-13/15/20` / `seatunnel-spark-2/3` starter artifacts are 
absent from the local repository, so `mvn test-compile` on that module stops at 
resolution and never reaches my code.
   
   So this needs CI to compile and run it, as you suggested. If it fails there 
I will fix it from the CI log rather than guess; the assertions and the data 
shape are the part I would want reviewed first.
   
   Nothing further from me on #13081 — thanks for the clearance there.
   


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