morningman commented on issue #2285:
URL: https://github.com/apache/doris-website/issues/2285#issuecomment-6826627607

   已按 Doris 源码核对,并使用实际环境区分验证了这几种情况。
   
   **1. MySQL 表注释:3.0 确实缺少实现,4.0 已补充。**
   
   3.0 的 `JdbcExternalTable` 没有实现表注释读取,继承的 
[`ExternalTable.getComment()`](https://github.com/apache/doris/blob/4090f6c40d2238b7aff73185bcada48f96fbd6be/fe/fe-core/src/main/java/org/apache/doris/datasource/ExternalTable.java#L290)
 固定返回空字符串。因此这部分不是 Arrow Flight SQL 驱动把注释丢掉。
   
   MySQL 的表注释读取由 
[apache/doris#54088](https://github.com/apache/doris/pull/54088)(`908f020952445f61a94e504532c571180cb9ce94`)补充,4.0.0
 起的代码包含这项实现。
   
   本次使用 Doris **4.1.5**(`917b20be838`)、MySQL **8.0.33** 和 MySQL Connector/J 
**8.0.33**,通过 MySQL 协议连接 Doris 做了实际验证。MySQL 源表注释为 
`全码谱明细值`,以下两条语句均返回了同样的中文注释,`SHOW CREATE TABLE` 也正确包含该注释:
   
   ```sql
   SHOW TABLE STATUS FROM issue2285_mysql.issue2285 LIKE 't_yardage';
   
   SELECT table_name, table_comment
   FROM issue2285_mysql.information_schema.tables
   WHERE table_schema = 'issue2285'
     AND table_name = 't_yardage';
   ```
   
   原报告中的第二种写法应为 `SHOW TABLE STATUS FROM dit.base LIKE 't_yardage';`,`FROM` 
后填写库名,不能再追加表名。第三种写法中的第二个 `WHERE` 应改为 `AND`。这些语法问题与 3.0 缺少注释读取实现是两件事。
   
   **2. Oracle / SAP HANA:目前仍缺少表注释读取实现,需要内核增强。**
   
   已检查当前 4.1 分支和 master。Oracle/HANA 客户端仍继承 [`getTableComment()` 
返回空字符串的默认实现](https://github.com/apache/doris/blob/172120cbaa46b0a2eff6c37d86fb438c3a307375/fe/fe-connector/fe-connector-jdbc/src/main/java/org/apache/doris/connector/jdbc/client/JdbcConnectorClient.java#L489),不能将
 MySQL 的修复结论扩展到这两种数据库。这里的 `catalog.information_schema.tables` 也是 Doris 
构造的元数据,不是直接查询远端数据库的系统视图。
   
   
已将这部分登记到内核仓库:[apache/doris#70530](https://github.com/apache/doris/issues/70530),附上实际代码路径、MySQL
 验证结果以及后续应覆盖的测试范围。本次没有运行 Oracle/HANA 环境,也没有将源码核对冒充为这两种数据库的集成测试。
   
   MySQL 部分已有修复;Oracle/HANA 的增强尚未完成,因此保留本 issue 开放并关联内核跟踪,避免误标为全部解决。
   


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


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to