mtsql 1.12.25__py3-none-any.whl → 1.12.27__py3-none-any.whl

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.
mt/sql/base.py CHANGED
@@ -6,6 +6,7 @@ import sqlalchemy as sa
6
6
  import sqlalchemy.exc as se
7
7
  import psycopg as ps
8
8
  import ssl
9
+ import time
9
10
 
10
11
  from mt import tp, logg, pd, ctx, halo
11
12
 
@@ -74,15 +75,20 @@ def run_func(
74
75
  se.OperationalError,
75
76
  ps.OperationalError,
76
77
  se.InterfaceError,
78
+ se.InternalError,
77
79
  se.PendingRollbackError,
78
80
  ssl.SSLEOFError,
79
81
  ssl.SSLZeroReturnError,
80
- ):
82
+ ) as e:
81
83
  if x < nb_trials - 1:
82
84
  if logger:
83
85
  msg = f"Ignored an exception raised by failed attempt {x+1}/{nb_trials} to execute `{func.__module__}.{func.__name__}()`"
84
86
  with logger.scoped_warn(msg):
85
87
  logger.warn_last_exception()
88
+ if isinstance(e, se.PendingRollbackError):
89
+ time.sleep(60)
90
+ elif isinstance(e, ssl.SSLEOFError):
91
+ time.sleep(3)
86
92
  else:
87
93
  msg = f"Attempted {nb_trials} times to execute `{func.__module__}.{func.__name__}` but failed."
88
94
  logg.error(msg, logger=logger)
mt/sql/version.py CHANGED
@@ -1,5 +1,5 @@
1
1
  MAJOR_VERSION = 1
2
2
  MINOR_VERSION = 12
3
- PATCH_VERSION = 25
3
+ PATCH_VERSION = 27
4
4
  version = '{}.{}.{}'.format(MAJOR_VERSION, MINOR_VERSION, PATCH_VERSION)
5
5
  __all__ = ['MAJOR_VERSION', 'MINOR_VERSION', 'PATCH_VERSION', 'version']
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: mtsql
3
- Version: 1.12.25
3
+ Version: 1.12.27
4
4
  Summary: Extra Python modules to deal with the interaction between pandas dataframes and remote SQL servers, for Minh-Tri Pham
5
5
  Home-page: https://github.com/inteplus/mtsql
6
6
  Author: ['Minh-Tri Pham']
@@ -1,17 +1,17 @@
1
1
  mt/sql/__init__.py,sha256=b7zO50apZxt9Hg2eOkJhRLrXgACR8eS5b-Rphdn5qNQ,44
2
- mt/sql/base.py,sha256=j2fzeGUdh-TnvgotuWOmTM-A0pqBg31z2c19bH5E_xk,13504
2
+ mt/sql/base.py,sha256=S44nryyeguGNnzdf5ETmKXb9ewbAveiGYhEXVoS7lC8,13732
3
3
  mt/sql/mysql.py,sha256=n2ENDctdUqZuSaDAcrqZYtPtawq3Wx4dOPCRsCB5Q4w,4894
4
4
  mt/sql/psql.py,sha256=8gWsF6ZobwkAxHsfecF95Em_cAlMitHHdQzinZLCi6s,67110
5
5
  mt/sql/sqlite.py,sha256=T2ak_hhNi_zRfpg_gp8JhNHn7D2kl4i-Ey6-9ANMtz0,8678
6
- mt/sql/version.py,sha256=fESKN3a-51Gk518u42eRfS6jc2qynXacnonQdAruWec,208
6
+ mt/sql/version.py,sha256=ptD5KFc_hmlAgpcycy390fxiNgeYGr3X1VE_tWMpADM,208
7
7
  mt/sql/redshift/__init__.py,sha256=S-eRxJWcrvncF7LZXuulCdPV-UERu9eiw6uyDb5aGsM,443
8
8
  mt/sql/redshift/commands.py,sha256=xhGUBf3bL66EYdZI5HCUtOx-XqPCnXT_P-LnhPgtzrY,40193
9
9
  mt/sql/redshift/ddl.py,sha256=eUcZj9oIajiE1wKKBAP-V64gYJ7cVnSAt8dLFfluOJA,9777
10
10
  mt/sql/redshift/dialect.py,sha256=-0JjJubZZHRw0abhl6H6rKWaUE9pKtGwAuX-62T0e_c,53399
11
11
  mt/sql/redshift/main.py,sha256=H8_5sjtJ7dzWoCMXzPNjYhrMQ18eLUQ9xg-aYl5QeTc,17104
12
12
  mt/sql/redshift/redshift-ca-bundle.crt,sha256=532qYkOpQOstFE0mdXE1GVtL3v00XDKgZNTr6gK5-KE,8621
13
- mtsql-1.12.25.dist-info/licenses/LICENSE,sha256=PojkRlQzTT5Eg6Nj03XoIVEefN3u8iiIFf1p4rqe_t4,1070
14
- mtsql-1.12.25.dist-info/METADATA,sha256=nMGzCZOmjrDiBh9wWHes41XqZ2Q9nvDcsdzNI1ln8tk,740
15
- mtsql-1.12.25.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
16
- mtsql-1.12.25.dist-info/top_level.txt,sha256=WcqGFu9cV7iMZg09iam8eNxUvGpLSKKF2Iubf6SJVOo,3
17
- mtsql-1.12.25.dist-info/RECORD,,
13
+ mtsql-1.12.27.dist-info/licenses/LICENSE,sha256=PojkRlQzTT5Eg6Nj03XoIVEefN3u8iiIFf1p4rqe_t4,1070
14
+ mtsql-1.12.27.dist-info/METADATA,sha256=wYa5NZjKZh5uYQvItCnEUqNQKXwfNpIK61C9BJ_2TEQ,740
15
+ mtsql-1.12.27.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
16
+ mtsql-1.12.27.dist-info/top_level.txt,sha256=WcqGFu9cV7iMZg09iam8eNxUvGpLSKKF2Iubf6SJVOo,3
17
+ mtsql-1.12.27.dist-info/RECORD,,