DanielLeens commented on PR #12970:
URL: https://github.com/apache/seatunnel/pull/12970#issuecomment-6594229686

   Pushed d05f2a0dab4050a9fc5d7dd38c3def54e580a03e (previous head 
`74a90d2ae7f`) for the two blockers in [review 
5721076420](https://github.com/apache/seatunnel/pull/12970#pullrequestreview-5721076420):
   
   - **Issue 1 (folded-first lookup changes table identity when both spellings 
exist).** `TableDiscoveryUtils.resolveConfiguredTableName` now checks the 
configured spelling first. It returns the configured name whenever an object 
with exactly that spelling exists, and falls back to the folded uppercase name 
only when it does not. If both `e2e.db2inst1.customers` and 
`e2e.DB2INST1.CUSTOMERS` exist, the job keeps the lowercase object that 3.0.0 
selected. Validation receives that same resolved name, so 
`validateExplicitCaptureTables` no longer compares against the uppercase ID. 
`Db2IncrementalSourceFactory.resolveDb2Options` delegates to this resolver. Its 
no-catalog branch now passes `tablePath -> false`, so names are still folded 
when no DB2 catalog can confirm the configured spelling. Tests:
     - 
`TableDiscoveryUtilsTest.shouldKeepCapturingLowercaseCreatedObjectConfiguredUnquoted`:
 the both-exist assertion now expects the configured spelling, and a new 
assertion covers the case where only the uppercase object exists.
     - 
`Db2IncrementalSourceFactoryTest.shouldNormalizeSchemaAndTableWithoutChangingDatabaseOrSplitOverrides`:
 adds the both-exist case for `table-names` and `table-names-config.table`.
     - The folding tests now use a catalog that holds only uppercase objects 
(`isFoldedPath`) instead of `tablePath -> true`, because `true` now means both 
spellings exist.
   - **Issue 2 (documented quoted-name escape hatch does not work).** I 
corrected the docs instead of adding quote parsing. Before this PR a quoted 
name was never unquoted on the catalog or capture path (`TablePath.of`, 
`DB2Catalog`, `toConfiguredDb2TableId`), so this matches the real contract. 
With exact-first resolution, users no longer need a quoting workaround: writing 
the name as stored selects that object. The EN and ZH DB2-CDC guides now say 
this, and say that double quotes are not interpreted (a name with quotes is 
used as written and does not match). The PR description is updated to match.
   
   Issue 3 (concurrent-read note in the user guide, non-blocking) is not part 
of this commit. Only `./mvnw spotless:apply` was run locally on 
`connector-cdc-db2`. Compilation and tests are verified by the fork Build for 
the new head.
   


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