Build: #2958 was successful Changes by Guus der Kinderen
Code commits
Openfire (master)
-
Guus der Kinderen f2aa45d0cd5a14f54b21d10e2e477e527dff4ad8
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.- xmppserver/src/main/java/org/jivesoftware/database/DbConnectionManager.java (version f2aa45d0cd5a14f54b21d10e2e477e527dff4ad8)
-
Guus der Kinderen d25935d129d863cf120abeff6caade7138f4a72e
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.- xmppserver/src/main/java/org/jivesoftware/database/DbConnectionManager.java (version d25935d129d863cf120abeff6caade7138f4a72e)