tigase / tigase-server

(M) Highly optimized, extremely modular and very flexible XMPP/Jabber server
https://tigase.net
GNU Affero General Public License v3.0
326 stars 106 forks source link

SQL Server driver throws an exception on latest 8.3.0 builds #159

Closed maranda closed 2 years ago

maranda commented 2 years ago

Describe the bug The SQL Server DB Driver is broken on JDK 17 and throws this exception: Problem validating database connection: java.lang.NoClassDefFoundError: org/ietf/jgss/GSSException

To Reproduce Steps to reproduce the behavior:

  1. Do web install
  2. Select SQL Server as DB Backend
  3. Try to authenticate with SQL Server

Impact Can't use SQL Server as DB Backend

Expected behavior A clear and concise description of what you expected to happen.

Screenshots If applicable, add screenshots to help explain your problem.

Details (please complete the following information):

woj-tek commented 2 years ago

Could you share complete logs from the console (including complete stacktrace)?

Which 8.3.0 release did you you exactly (flavour, build number, download link)?

maranda commented 2 years ago

I'd have to replicate the environment again for the traces, anyhow I tested against SQL Server 2019 and replicated the issue over all the 8.3 nightlies I found on dockerhub. While on latest builds (8.2.1) it works although the schema update always fails at admin adding/post actions. The only difference appears to be Jdk11 vs. Jdk17.

woj-tek commented 2 years ago

Thank you for reporting this. It was due to using old jTDS driver for MS SQL Server database (which was the only FOSS option at the time a couple of years back). It was however not updated for a long time and when we switched to JDK17 it broke altogether. Luckily Microsoft now publishes completely FOSS SQL Server JDBC driver so we switched to it now. Next nightly (docker) builds will contain updated driver.