Skip to content

Commit 414be28

Browse files
authored
Don't run run_scrip/_refresh_token under lock (#4906)
1 parent 19b1d7e commit 414be28

2 files changed

Lines changed: 16 additions & 10 deletions

File tree

py/client/pydeephaven/session.py

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -334,12 +334,11 @@ def _keep_alive(self):
334334
self._keep_alive_timer.start()
335335

336336
def _refresh_token(self):
337-
with self._r_lock:
338-
try:
339-
self._flight_client.authenticate(self._auth_handler)
340-
except Exception as e:
341-
self.is_connected = False
342-
raise DHError("failed to refresh auth token") from e
337+
try:
338+
self._flight_client.authenticate(self._auth_handler)
339+
except Exception as e:
340+
self.is_connected = False
341+
raise DHError("failed to refresh auth token") from e
343342

344343
@property
345344
def is_alive(self) -> bool:
@@ -385,10 +384,9 @@ def run_script(self, script: str) -> None:
385384
Raises:
386385
DHError
387386
"""
388-
with self._r_lock:
389-
response = self.console_service.run_script(script)
390-
if response.error_message != '':
391-
raise DHError("could not run script: " + response.error_message)
387+
response = self.console_service.run_script(script)
388+
if response.error_message != '':
389+
raise DHError("could not run script: " + response.error_message)
392390

393391
def open_table(self, name: str) -> Table:
394392
"""Opens a table in the global scope with the given name on the server.

py/client/tests/test_session.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,10 @@ def test_time_table(self):
5656
session.bind_table("t", t)
5757
session.run_script("""
5858
from deephaven import empty_table
59+
try:
60+
del t1
61+
except NameError:
62+
pass
5963
t1 = empty_table(0) if t.is_blink else None
6064
""")
6165
self.assertNotIn("t1", session.tables)
@@ -64,6 +68,10 @@ def test_time_table(self):
6468
session.bind_table("t", t)
6569
session.run_script("""
6670
from deephaven import empty_table
71+
try:
72+
del t1
73+
except NameError:
74+
pass
6775
t1 = empty_table(0) if t.is_blink else None
6876
""")
6977
self.assertIn("t1", session.tables)

0 commit comments

Comments
 (0)