You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shardingsphere.apache.org by "menghaoranss (via GitHub)" <gi...@apache.org> on 2026/03/11 01:43:57 UTC
[I] Implement metadata identifier case handling and raw-name persistence [shardingsphere]
menghaoranss opened a new issue, #38391:
URL: https://github.com/apache/shardingsphere/issues/38391
## Feature Request
### Is your feature request related to a problem?
Metadata names are still normalized to lowercase in several metadata loading and persistence paths. This can lose raw schema, table, and column names, break quoted and unquoted identifier lookups, and make repository metadata inconsistent with the physical database.
### Describe the feature you would like.
Implement metadata identifier case handling so that ShardingSphere preserves raw metadata names, resolves identifiers according to database-specific rules, and keeps in-memory metadata and repository storage aligned.
- [ ] Add identifier case abstractions, identifier context, and identifier index support
- [ ] Add unit tests for rule matching, normalized lookup, and ambiguity handling
- [ ] Add identifier case rule provider SPI and resolver
- [ ] Add configuration for metadata identifier case handling
- [ ] Add provider implementations for PostgreSQL, openGauss, Oracle, and MySQL
- [ ] Add identifier-aware lookup APIs to `ShardingSphereDatabase`
- [ ] Add identifier-aware lookup APIs to `ShardingSphereSchema`
- [ ] Add identifier-aware lookup APIs to `ShardingSphereTable`
- [ ] Resolve and cache shared identifier rules during database initialization
- [ ] Refresh rules and rebuild identifier indexes on storage unit or props changes
- [ ] Migrate metadata callers from `String` lookup to `IdentifierValue` lookup
- [ ] Add compatibility reads for legacy lower-case repository metadata
- [ ] Switch repository writes to raw metadata names
- [ ] Remove remaining forced lowercase handling in metadata paths
- [ ] Complete regression tests and compatibility cleanup
--
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: notifications-unsubscribe@shardingsphere.apache.org.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [I] Implement metadata identifier case handling and raw-name persistence [shardingsphere]
Posted by "menghaoranss (via GitHub)" <gi...@apache.org>.
menghaoranss closed issue #38391: Implement metadata identifier case handling and raw-name persistence
URL: https://github.com/apache/shardingsphere/issues/38391
--
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: notifications-unsubscribe@shardingsphere.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [I] Implement metadata identifier case handling and raw-name persistence [shardingsphere]
Posted by "menghaoranss (via GitHub)" <gi...@apache.org>.
menghaoranss commented on issue #38391:
URL: https://github.com/apache/shardingsphere/issues/38391#issuecomment-4560433789
Completed. I’m closing this issue now because all tasks in scope have been finished.
For the remaining legacy/follow-up problems, I will open new issue(s) and track them separately to keep scope clear.
--
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: notifications-unsubscribe@shardingsphere.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [I] Implement metadata identifier case handling and raw-name persistence [shardingsphere]
Posted by "ym0506 (via GitHub)" <gi...@apache.org>.
ym0506 commented on issue #38391:
URL: https://github.com/apache/shardingsphere/issues/38391#issuecomment-4203108792
Hi @menghaoranss, I reviewed the recent work around #38391 and noticed that several related pieces seem to have landed already, including raw-name schema metadata persistence and the IdentifierValue-based lookup refactors (for example #38471, #38524, #38548, #38552, #38555, and #38559).
From a quick pass over the current code, it looks like the remaining scope is mainly the leftover String-based metadata callers, the remaining forced-lowercase cleanup in metadata refresh paths, and regression/compatibility tests. For example, `SchemaRefreshUtils.getSchemaName(...)` still lowercases the schema name and `FederationMetaDataRefreshEngine` uses that path directly.
If that matches your plan, I’d like to help with one focused follow-up PR rather than take the whole issue at once. I can start with the remaining forced-lowercase cleanup plus regression tests, unless you would prefer that I pick up a different remaining slice. Please let me know if that scope is still available.
--
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: notifications-unsubscribe@shardingsphere.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org