OF-3240: Modernize DB capability detection in DbConnectionManager
Replace stale, hard-coded capability flags with DatabaseMetaData-driven detection for transactions, subqueries, batch updates, identifier quoting and scrollable result sets. Keep vendor-specific overrides only where genuinely necessary, with explicit documentation of the reason.
Notable behaviour changes:
- Oracle: no longer unconditionally enables streaming for all driver versions. ojdbc < 12 still forces streaming. ojdbc >= 12 probes the database at startup via a transient ofProperty row and falls back to streaming if even plain getString() fails. The probe is conservative: if anything goes wrong it defaults to streaming.
- PostgreSQL: removed blanket disabling of scrollResultsSupported and fetchSizeSupported. PostgreSQL JDBC 42.x supports both; existing runtime try/catch fallbacks handle the auto-commit edge cases already.
- SQL Server: removed special-casing for the unmaintained i-net UNA third-party driver.
Also add startup logging of detected database/driver identity and the resolved capability flags (at debug level) to aid operator diagnostics.
OF-3240: (code review) switch probing column, use representative value
The Oracle probing for large text columns previously used a datbase column that was not fit to store larger values. In this commit, a column is used that does.
The value used for probing is made considerably longer, which better represents the issue at hand.
Milan Tyagi <milantyagi2004@gmail.com>
fe6bffde8d738af48cb37be5bde545518c32afda
OF-3230: Normalize date formatting in testUtcDate to fix CI instability
- Removed regex normalization
- Ensured consistent timestamp comparison
- Stabilized CI tests
Milan Tyagi <milantyagi2004@gmail.com>
5a1d2d682dcdac3b03971b42b7719cfa3d6965f5
OF-3230: Improve testUtcDate handling and cleanup imports
- Removed regex-based normalization
- Switched to Instant-based comparison
- Replaced direct usage with proper import