databricks-sql-connector 4.2.0__tar.gz → 4.2.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/CHANGELOG.md +3 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/PKG-INFO +1 -1
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/pyproject.toml +1 -1
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/__init__.py +1 -1
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/client.py +33 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/LICENSE +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/README.md +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/__init__.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/auth/__init__.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/auth/auth.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/auth/auth_utils.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/auth/authenticators.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/auth/common.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/auth/endpoint.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/auth/oauth.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/auth/oauth_http_handler.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/auth/retry.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/auth/thrift_http_client.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/auth/token_federation.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/backend/databricks_client.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/backend/sea/backend.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/backend/sea/models/__init__.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/backend/sea/models/base.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/backend/sea/models/requests.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/backend/sea/models/responses.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/backend/sea/queue.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/backend/sea/result_set.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/backend/sea/utils/constants.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/backend/sea/utils/conversion.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/backend/sea/utils/filters.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/backend/sea/utils/http_client.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/backend/sea/utils/normalize.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/backend/thrift_backend.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/backend/types.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/backend/utils/__init__.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/backend/utils/guid_utils.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/cloudfetch/download_manager.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/cloudfetch/downloader.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/common/feature_flag.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/common/http.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/common/http_utils.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/common/unified_http_client.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/exc.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/experimental/__init__.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/experimental/oauth_persistence.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/parameters/__init__.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/parameters/native.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/parameters/py.typed +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/py.typed +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/result_set.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/session.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/telemetry/latency_logger.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/telemetry/models/endpoint_models.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/telemetry/models/enums.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/telemetry/models/event.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/telemetry/models/frontend_logs.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/telemetry/telemetry_client.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/telemetry/utils.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/thrift_api/TCLIService/TCLIService-remote +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/thrift_api/TCLIService/TCLIService.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/thrift_api/TCLIService/__init__.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/thrift_api/TCLIService/constants.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/thrift_api/TCLIService/ttypes.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/thrift_api/__init__.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/types.py +0 -0
- {databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/utils.py +0 -0
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
# Release History
|
|
2
2
|
|
|
3
|
+
# 4.2.1 (2025-11-20)
|
|
4
|
+
- Ignore transactions by default (databricks/databricks-sql-python#711 by @jayantsing-db)
|
|
5
|
+
|
|
3
6
|
# 4.2.0 (2025-11-14)
|
|
4
7
|
- Add multi-statement transaction support (databricks/databricks-sql-python#704 by @jayantsing-db)
|
|
5
8
|
- Add a workflow to parallelise the E2E tests (databricks/databricks-sql-python#697 by @msrathore-db)
|
{databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/client.py
RENAMED
|
@@ -104,6 +104,7 @@ class Connection:
|
|
|
104
104
|
catalog: Optional[str] = None,
|
|
105
105
|
schema: Optional[str] = None,
|
|
106
106
|
_use_arrow_native_complex_types: Optional[bool] = True,
|
|
107
|
+
ignore_transactions: bool = True,
|
|
107
108
|
**kwargs,
|
|
108
109
|
) -> None:
|
|
109
110
|
"""
|
|
@@ -217,6 +218,12 @@ class Connection:
|
|
|
217
218
|
using SET AUTOCOMMIT instead of returning cached value.
|
|
218
219
|
Set to True if autocommit might be changed by external means (e.g., external SQL commands).
|
|
219
220
|
When False (default), uses cached state for better performance.
|
|
221
|
+
:param ignore_transactions: `bool`, optional (default is True)
|
|
222
|
+
When True, transaction-related operations behave as follows:
|
|
223
|
+
- commit(): no-op (does nothing)
|
|
224
|
+
- rollback(): raises NotSupportedError
|
|
225
|
+
- autocommit setter: no-op (does nothing)
|
|
226
|
+
When False, transaction operations execute normally.
|
|
220
227
|
"""
|
|
221
228
|
|
|
222
229
|
# Internal arguments in **kwargs:
|
|
@@ -318,6 +325,7 @@ class Connection:
|
|
|
318
325
|
self._fetch_autocommit_from_server = kwargs.get(
|
|
319
326
|
"fetch_autocommit_from_server", False
|
|
320
327
|
)
|
|
328
|
+
self.ignore_transactions = ignore_transactions
|
|
321
329
|
|
|
322
330
|
self.force_enable_telemetry = kwargs.get("force_enable_telemetry", False)
|
|
323
331
|
self.enable_telemetry = kwargs.get("enable_telemetry", False)
|
|
@@ -556,10 +564,17 @@ class Connection:
|
|
|
556
564
|
Args:
|
|
557
565
|
value: True to enable auto-commit, False to disable
|
|
558
566
|
|
|
567
|
+
When ignore_transactions is True:
|
|
568
|
+
- This method is a no-op (does nothing)
|
|
569
|
+
|
|
559
570
|
Raises:
|
|
560
571
|
InterfaceError: If connection is closed
|
|
561
572
|
TransactionError: If server rejects the change
|
|
562
573
|
"""
|
|
574
|
+
# No-op when ignore_transactions is True
|
|
575
|
+
if self.ignore_transactions:
|
|
576
|
+
return
|
|
577
|
+
|
|
563
578
|
if not self.open:
|
|
564
579
|
raise InterfaceError(
|
|
565
580
|
"Cannot set autocommit on closed connection",
|
|
@@ -651,10 +666,17 @@ class Connection:
|
|
|
651
666
|
When autocommit is True:
|
|
652
667
|
- Server may throw error if no active transaction
|
|
653
668
|
|
|
669
|
+
When ignore_transactions is True:
|
|
670
|
+
- This method is a no-op (does nothing)
|
|
671
|
+
|
|
654
672
|
Raises:
|
|
655
673
|
InterfaceError: If connection is closed
|
|
656
674
|
TransactionError: If commit fails (e.g., no active transaction)
|
|
657
675
|
"""
|
|
676
|
+
# No-op when ignore_transactions is True
|
|
677
|
+
if self.ignore_transactions:
|
|
678
|
+
return
|
|
679
|
+
|
|
658
680
|
if not self.open:
|
|
659
681
|
raise InterfaceError(
|
|
660
682
|
"Cannot commit on closed connection",
|
|
@@ -689,12 +711,23 @@ class Connection:
|
|
|
689
711
|
When autocommit is True:
|
|
690
712
|
- ROLLBACK is forgiving (no-op, doesn't throw exception)
|
|
691
713
|
|
|
714
|
+
When ignore_transactions is True:
|
|
715
|
+
- Raises NotSupportedError
|
|
716
|
+
|
|
692
717
|
Note: ROLLBACK is safe to call even without active transaction.
|
|
693
718
|
|
|
694
719
|
Raises:
|
|
695
720
|
InterfaceError: If connection is closed
|
|
721
|
+
NotSupportedError: If ignore_transactions is True
|
|
696
722
|
TransactionError: If rollback fails
|
|
697
723
|
"""
|
|
724
|
+
# Raise NotSupportedError when ignore_transactions is True
|
|
725
|
+
if self.ignore_transactions:
|
|
726
|
+
raise NotSupportedError(
|
|
727
|
+
"Transactions are not supported on Databricks",
|
|
728
|
+
session_id_hex=self.get_session_id_hex(),
|
|
729
|
+
)
|
|
730
|
+
|
|
698
731
|
if not self.open:
|
|
699
732
|
raise InterfaceError(
|
|
700
733
|
"Cannot rollback on closed connection",
|
|
File without changes
|
|
File without changes
|
{databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/auth/auth.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/auth/common.py
RENAMED
|
File without changes
|
|
File without changes
|
{databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/auth/oauth.py
RENAMED
|
File without changes
|
|
File without changes
|
{databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/auth/retry.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/common/http.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/py.typed
RENAMED
|
File without changes
|
{databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/result_set.py
RENAMED
|
File without changes
|
{databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/session.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/types.py
RENAMED
|
File without changes
|
{databricks_sql_connector-4.2.0 → databricks_sql_connector-4.2.1}/src/databricks/sql/utils.py
RENAMED
|
File without changes
|