hutiefang76 opened a new issue, #12581:
URL: https://github.com/apache/seatunnel/issues/12581

   ### Search before asking
   
   - [x] I searched existing issues and pull requests for this type-conversion 
problem.
   
   ### What happened
   
   With the JVM default locale set to `tr-TR`, DuckDBTypeConverter converts a 
lowercase `integer` type to SeaTunnel `STRING` instead of `INT`. The uppercase 
conversion produces a dotted capital I, which does not match the switch 
constants. Lowercase `tinyint` and `bigint` have the same problem. Uppercase 
input type names work.
   
   Reproduce by setting `Locale.setDefault(Locale.forLanguageTag("tr-TR"))` and 
passing 
`BasicTypeDefine.builder().name("id").dataType("integer").columnType("integer").build()`
 to `DuckDBTypeConverter.INSTANCE.convert`. Restore the original locale 
afterwards.
   
   Expected: type-name matching yields the same result for lowercase and 
uppercase names in any JVM locale. This concerns catalog type conversion, 
separately from numeric SQL formatting in #12575.
   
   ### SeaTunnel Version
   
   Current dev at `4c4fd615d677695b619ca0e04fcfd82e104cd4a9`.
   
   ### SeaTunnel Config
   
   Not configuration-dependent; use the Java API reproduction above.
   
   ### Running Command
   
   Run the converter reproduction on JDK 8 or 17.
   
   ### Error Exception
   
   No exception. The regression assertion reports `expected: INT but was: 
STRING`.
   
   ### Java or Scala Version
   
   JDK 8 and 17.
   
   ### Are you willing to submit PR?
   
   - [x] Yes
   
   ### Code of Conduct
   
   - [x] I agree to follow the project Code of Conduct.
   


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