Improve Oracle DB, Trino, Preso support, extend tests #45
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR improves Oracle database support by allowing custom ports to be defined, Presto and Trino timestamp normalization, optimizes Presto container configuration, and enhances test coverage across multiple databases.
Changes
Oracle Database Support
%sto:1, :2, ...format to support sqeleton query builderPresto Improvements
jvm.config:-Xmx16G→-Xmx8Gconfig.properties: Reduced query memory limits (5GB → 2GB, 1GB → 512MB, 2GB → 1GB)-Djdk.attach.allowAttachSelf=trueprestodb/presto:latestimagetimestampinstead oftimestamp(N)as Presto doesn't support precision in cast expressionsTrino Improvements
timestamp(N)precision in castsTest Infrastructure
@test_each_databasedecorator toTestDatabaseandTestMD5test classesTestNormalizeValuetest class with:test_normalize_uuid: Tests UUID normalization across databasestest_normalize_timestamp: Tests timestamp normalization with different precisionstest_normalize_number: Tests numeric value normalization with various precisionsTestThreePartIdsto exclude DuckDB (doesn't support catalog-scoped information_schema queries)TestQueriesto use UTC and handle Presto/Trino/Dremio precision limitationsConfiguration Updates
versionfield from docker-compose.yml (deprecated in newer Docker Compose versions)Testing
All changes have been tested with the updated test suite. The new
@test_each_databasedecorator ensures consistent testing across all supported databases.Breaking Changes
None. All changes are backwards compatible.
TODO / Notes
cx_oracledeprecated package, might worth updating it to oracledb Python package