makssent opened a new pull request, #38812:
URL: https://github.com/apache/shardingsphere/pull/38812
Changes proposed in this pull request:
- Add `shardingsphere-database-exception-firebird` module with a
`FirebirdDialectExceptionMapper` (SPI) so `SQLDialectException` is converted to
native Firebird errors instead of falling back to generic `isc_random`.
- Map `UnknownDatabaseException` → `isc_unavailable` (SQLState 08001)
and `AccessDeniedException` → `isc_login` (SQLState 28000), using native
GDSCODEs carried as the SQLException vendor code.
- Add `FirebirdState` for the Firebird-specific SQLState (08001) that is
not defined in `XOpenSQLState`, mirroring `PostgreSQLState`.
- Enforce authentication in `FirebirdAuthenticationEngine`: reject
unknown user on CONNECT and on ATTACH, and reject failed password (the
`authenticate(...)` result is now checked instead of ignored).
- Skip the empty `isc_arg_string` in `FirebirdStatusVector` so
0-argument GDSCODEs (e.g. `isc_login`) render the canonical Firebird catalog
message; add a null-message guard.
- Wire the module into `bom`, the dialect-exception aggregator pom, and
`database-protocol-firebird` so the SPI is on the proxy runtime classpath.
- Scope note: only the two errors above are verified against a live
Firebird client; other `SQLDialectException`s intentionally fall back to
`UnknownSQLException` and will be added incrementally.
---
Before committing this PR, I'm sure that I have checked the following
options:
- [x] My code follows the [code of
conduct](https://shardingsphere.apache.org/community/en/involved/conduct/code/)
of this project.
- [ ] I have (or in comment I request) added corresponding labels for the
pull request.
- [ ] I have passed maven check locally : `./mvnw clean install -B -T1C
-Dmaven.javadoc.skip -Dmaven.jacoco.skip -e`.
- [ ] I have made corresponding changes to the documentation.
- [x] I have added corresponding unit tests for my changes.
- [ ] I have updated the Release Notes of the current development version.
For more details, see [Update Release
Note](https://shardingsphere.apache.org/community/en/involved/contribute/contributor/)
--
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]