From 4ce1c6df682769cd473d6fab2ec0b45f8b04eaad Mon Sep 17 00:00:00 2001 From: maxim-lixakov Date: Thu, 18 Apr 2024 08:24:43 +0300 Subject: [PATCH] [DOP-13852] - downgrade default package_version to 12.6.1 --- docs/changelog/next_release/254.feature.rst | 2 +- onetl/connection/db_connection/mssql/connection.py | 6 +++--- .../tests_db_connection_unit/test_mssql_unit.py | 14 ++++++++------ 3 files changed, 12 insertions(+), 10 deletions(-) diff --git a/docs/changelog/next_release/254.feature.rst b/docs/changelog/next_release/254.feature.rst index 9eac38d92..0a8aff089 100644 --- a/docs/changelog/next_release/254.feature.rst +++ b/docs/changelog/next_release/254.feature.rst @@ -1 +1 @@ -:class:`MSSQL` connection now uses Microsoft SQL Server JDBC driver ``12.7.0``, upgraded from ``12.2.0``, and supports passing custom versions: ``MSSQL.get_packages(java_version=..., package_version=...)``. +:class:`MSSQL` connection now uses Microsoft SQL Server JDBC driver ``12.6.1``, upgraded from ``12.2.0``, and supports passing custom versions: ``MSSQL.get_packages(java_version=..., package_version=...)``. diff --git a/onetl/connection/db_connection/mssql/connection.py b/onetl/connection/db_connection/mssql/connection.py index 3a045d726..8fa91b47a 100644 --- a/onetl/connection/db_connection/mssql/connection.py +++ b/onetl/connection/db_connection/mssql/connection.py @@ -160,7 +160,7 @@ def get_packages( java_version : str, optional Java major version, defaults to ``8``. Must be ``8`` or ``11``. package_version : str, optional - Specifies the version of the MSSQL JDBC driver to use. Defaults to ``12.7.0``. + Specifies the version of the MSSQL JDBC driver to use. Defaults to ``12.6.1.``. Examples -------- @@ -174,7 +174,7 @@ def get_packages( MSSQL.get_packages(java_version="8", package_version="12.6.1.jre11") """ default_java_version = "8" - default_package_version = "12.7.0" + default_package_version = "12.6.1" java_ver = Version(java_version or default_java_version) if java_ver.major < 8: @@ -196,7 +196,7 @@ def package(cls) -> str: """Get package name to be downloaded by Spark.""" msg = "`MSSQL.package` will be removed in 1.0.0, use `MSSQL.get_packages()` instead" warnings.warn(msg, UserWarning, stacklevel=3) - return "com.microsoft.sqlserver:mssql-jdbc:12.7.0.jre8" + return "com.microsoft.sqlserver:mssql-jdbc:12.6.1.jre8" @property def jdbc_url(self) -> str: diff --git a/tests/tests_unit/tests_db_connection_unit/test_mssql_unit.py b/tests/tests_unit/tests_db_connection_unit/test_mssql_unit.py index 78b21a402..51a548166 100644 --- a/tests/tests_unit/tests_db_connection_unit/test_mssql_unit.py +++ b/tests/tests_unit/tests_db_connection_unit/test_mssql_unit.py @@ -14,21 +14,23 @@ def test_mssql_class_attributes(): def test_mssql_package(): warning_msg = re.escape("will be removed in 1.0.0, use `MSSQL.get_packages()` instead") with pytest.warns(UserWarning, match=warning_msg): - assert MSSQL.package == "com.microsoft.sqlserver:mssql-jdbc:12.7.0.jre8" + assert MSSQL.package == "com.microsoft.sqlserver:mssql-jdbc:12.6.1.jre8" @pytest.mark.parametrize( "java_version, package_version, expected_packages", [ - (None, None, ["com.microsoft.sqlserver:mssql-jdbc:12.7.0.jre8"]), - ("8", None, ["com.microsoft.sqlserver:mssql-jdbc:12.7.0.jre8"]), - ("11", None, ["com.microsoft.sqlserver:mssql-jdbc:12.7.0.jre11"]), + (None, None, ["com.microsoft.sqlserver:mssql-jdbc:12.6.1.jre8"]), + ("8", None, ["com.microsoft.sqlserver:mssql-jdbc:12.6.1.jre8"]), + ("9", None, ["com.microsoft.sqlserver:mssql-jdbc:12.6.1.jre8"]), + ("11", None, ["com.microsoft.sqlserver:mssql-jdbc:12.6.1.jre11"]), + ("20", None, ["com.microsoft.sqlserver:mssql-jdbc:12.6.1.jre11"]), ("8", "12.6.1.jre8", ["com.microsoft.sqlserver:mssql-jdbc:12.6.1.jre8"]), ("11", "12.6.1.jre11", ["com.microsoft.sqlserver:mssql-jdbc:12.6.1.jre11"]), ("11", "12.7.0.jre11-preview", ["com.microsoft.sqlserver:mssql-jdbc:12.7.0.jre11-preview"]), ("8", "12.7.0.jre8-preview", ["com.microsoft.sqlserver:mssql-jdbc:12.7.0.jre8-preview"]), - ("8", "12.7.0", ["com.microsoft.sqlserver:mssql-jdbc:12.7.0.jre8"]), - ("11", "12.7.0", ["com.microsoft.sqlserver:mssql-jdbc:12.7.0.jre11"]), + ("8", "12.6.1", ["com.microsoft.sqlserver:mssql-jdbc:12.6.1.jre8"]), + ("11", "12.6.1", ["com.microsoft.sqlserver:mssql-jdbc:12.6.1.jre11"]), ], ) def test_mssql_get_packages(java_version, package_version, expected_packages):