Skip to content

Commit e351834

Browse files
fix simple merge artifacts
Signed-off-by: varun-edachali-dbx <varun.edachali@databricks.com>
1 parent 8fe566b commit e351834

File tree

2 files changed

+32
-8
lines changed

2 files changed

+32
-8
lines changed

src/databricks/sql/backend/sea/backend.py

Lines changed: 31 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,19 @@
11
import logging
2+
import re
23
import uuid
34
import time
45
from typing import Dict, Tuple, List, Optional, Any, Union, TYPE_CHECKING
56

7+
from databricks.sql.backend.sea.utils.constants import ALLOWED_SESSION_CONF_TO_DEFAULT_VALUES_MAP
8+
69
if TYPE_CHECKING:
710
from databricks.sql.client import Cursor
811
from databricks.sql.result_set import ResultSet
912

1013
from databricks.sql.backend.databricks_client import DatabricksClient
1114
from databricks.sql.backend.types import SessionId, CommandId, CommandState, BackendType
1215
from databricks.sql.exc import Error, NotSupportedError, ServerOperationError
13-
from databricks.sql.backend.sea.utils.http_client import CustomHttpClient
16+
from databricks.sql.backend.sea.utils.http_client import SeaHttpClient
1417
from databricks.sql.thrift_api.TCLIService import ttypes
1518
from databricks.sql.types import SSLOptions
1619

@@ -30,6 +33,33 @@
3033
logger = logging.getLogger(__name__)
3134

3235

36+
def _filter_session_configuration(
37+
session_configuration: Optional[Dict[str, str]]
38+
) -> Optional[Dict[str, str]]:
39+
if not session_configuration:
40+
return None
41+
42+
filtered_session_configuration = {}
43+
ignored_configs: Set[str] = set()
44+
45+
for key, value in session_configuration.items():
46+
if key.upper() in ALLOWED_SESSION_CONF_TO_DEFAULT_VALUES_MAP:
47+
filtered_session_configuration[key.lower()] = value
48+
else:
49+
ignored_configs.add(key)
50+
51+
if ignored_configs:
52+
logger.warning(
53+
"Some session configurations were ignored because they are not supported: %s",
54+
ignored_configs,
55+
)
56+
logger.warning(
57+
"Supported session configurations are: %s",
58+
list(ALLOWED_SESSION_CONF_TO_DEFAULT_VALUES_MAP.keys()),
59+
)
60+
61+
return filtered_session_configuration
62+
3363
class SeaDatabricksClient(DatabricksClient):
3464
"""
3565
Statement Execution API (SEA) implementation of the DatabricksClient interface.

tests/unit/test_parameters.py

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -64,13 +64,7 @@ class TestSessionHandleChecks(object):
6464
],
6565
)
6666
def test_get_protocol_version_fallback_behavior(self, test_input, expected):
67-
properties = (
68-
{"serverProtocolVersion": test_input.serverProtocolVersion}
69-
if test_input.serverProtocolVersion
70-
else {}
71-
)
72-
session_id = SessionId.from_thrift_handle(test_input.sessionHandle, properties)
73-
assert Connection.get_protocol_version(session_id) == expected
67+
assert Connection.get_protocol_version(test_input) == expected
7468

7569
@pytest.mark.parametrize(
7670
"test_input,expected",

0 commit comments

Comments
 (0)