matrixorigin / matrixorigin/matrixone
[Bug]: information_schema gaps break schema-migration tooling
- Dominant language
- Go
- Stars
- 1.9k
- Forks
- 311
- Avg merge
- 1d 3h
- Merged PRs (30d)
- 768
Description
### Is there an existing issue for the same bug?
- [X] I have checked the existing issues.
### Branch Name
v4.0.0-rc3
### Commit ID
8.0.30-MatrixOne-v4.0.0-rc3
### Other Environment Information
- Hardware parameters: N/A
- OS type: N/A
- Others: Reproduced via cross-language ORM compatibility testing (PHP / Python / Java / Node.js) over the MySQL 8.0.30 wire protocol. The minimal repro below uses raw SQL so it is driver-independent.
### Actual Behavior
Two related problems block every schema-introspection / migration tool tested:
1. **Missing tables:** `information_schema.collation_character_set_applicability` and `information_schema.check_constraints` do not exist.
```
-- Doctrine DBAL listTables()/introspectTable(), CakePHP describe():
1064 SQL parser error: table "collation_character_set_applicability" does not exist
1064 SQL parser error: table "check_constraints" does not exist
```
2. **`ONLY_FULL_GROUP_BY` rejection on a `tables` introspection query** that the MySQL planner accepts:
```
-- Hibernate hbm2ddl=update/validate, Flyway, Liquibase:
1149 SQL syntax error: column "tables.TABLE_TYPE" must appear in the GROUP BY clause
```
Single-table column metadata is also inaccurate: varchar `CHARACTER_MAXIMUM_LENGTH` and decimal `NUMERIC_PRECISION`/`SCALE` come back `NULL`, `DATA_TYPE` is upper-cased, TEXT `CHARACTER_MAXIMUM_LENGTH = 0`, and foreign keys are not exposed via JDBC `getImportedKeys` / DBAL `listTableForeignKeys`.
### Expected Behavior
These `information_schema` tables/columns exist and behave as in MySQL 8.0, and the introspection queries above succeed.
### Steps to Reproduce
```sql
SELECT * FROM information_schema.collation_character_set_applicability LIMIT 1; -- 1064 table does not exist
SELECT * FROM information_schema.check_constraints LIMIT 1; -- 1064 table does not exist
```
### Additional information
**Impact:** Doctrine Migrations, CakePHP ORM reflection, Hibernate auto-DDL, Flyway and Liquibase all fail — i.e. the standard migration path for Symfony, Laravel (CakePHP), and Spring Boot apps. Liquibase is 0/9 in the suite.
**Background:** dengn/php-tester#3, dengn/php-tester#6 (and CakePHP in dengn/php-tester#1).
Contributor guide
Assessment
This issue has not been assessed yet.