strongduanmu commented on PR #275:
URL: https://github.com/apache/calcite-avatica/pull/275#issuecomment-2646049143

   Hi @mihaibudiu, I spent some time looking at Guava. Currently, it only 
provides `UnsignedInteger` and `UnsignedLong`. Other `UnsignedByte` and 
`UnsignedShort` are not provided by Guava. 
   
   In addition, I found that MySQL provides another idea, we can handle them by 
mapping a wider range of Java types. For example, the `BIGINT` type is usually 
mapped to `java.lang.Long` for processing, while `BIGINT UNSIGNED` needs to be 
mapped to `java.math.BigInteger` for processing. For more type mappings, please 
refer to the document: 
https://dev.mysql.com/doc/connector-j/en/connector-j-reference-type-conversions.html
   
   Through this mapping conversion method, we do not need to add any classes, 
and the Calcite runtime can handle UNSIGNED types. What do you think of this 
approach? I will keep trying if you have any suggestions.


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