5
5
# https://oss.oracle.com/licenses/upl/
6
6
#
7
7
8
+ from concurrent .futures import ThreadPoolExecutor
8
9
from logging import DEBUG
9
- from multiprocessing import pool
10
10
from platform import python_version
11
11
from sys import version_info
12
12
from threading import Lock
@@ -105,7 +105,7 @@ def __init__(self, config, logger):
105
105
'Starting client with rate limiting enabled' )
106
106
self ._rate_limiter_map = RateLimiterMap ()
107
107
self ._table_limit_update_map = dict ()
108
- self ._threadpool = pool . ThreadPool ( 1 )
108
+ self ._threadpool = ThreadPoolExecutor ( max_workers = 1 )
109
109
else :
110
110
self ._logutils .log_debug ('Starting client with no rate limiting' )
111
111
self ._rate_limiter_map = None
@@ -126,7 +126,7 @@ def background_update_limiters(self, table_name):
126
126
return
127
127
self ._set_table_needs_refresh (table_name , False )
128
128
try :
129
- self ._threadpool .map (self ._update_table_limiters , ['table_name' ])
129
+ self ._threadpool .submit (self ._update_table_limiters , ['table_name' ])
130
130
except RuntimeError :
131
131
self ._set_table_needs_refresh (table_name , True )
132
132
@@ -142,14 +142,14 @@ def enable_rate_limiting(self, enable, use_percent):
142
142
if enable and self ._rate_limiter_map is None :
143
143
self ._rate_limiter_map = RateLimiterMap ()
144
144
self ._table_limit_update_map = dict ()
145
- self ._threadpool = pool . ThreadPool ( 1 )
145
+ self ._threadpool = ThreadPoolExecutor ( max_workers = 1 )
146
146
elif not enable and self ._rate_limiter_map is not None :
147
147
self ._rate_limiter_map .clear ()
148
148
self ._rate_limiter_map = None
149
149
self ._table_limit_update_map .clear ()
150
150
self ._table_limit_update_map = None
151
151
if self ._threadpool is not None :
152
- self ._threadpool .close ()
152
+ self ._threadpool .shutdown ()
153
153
self ._threadpool = None
154
154
155
155
def execute (self , request ):
@@ -363,7 +363,7 @@ def shut_down(self):
363
363
if self ._sess is not None :
364
364
self ._sess .close ()
365
365
if self ._threadpool is not None :
366
- self ._threadpool .close ()
366
+ self ._threadpool .shutdown ()
367
367
if self ._stats_control is not None :
368
368
self ._stats_control .shutdown ()
369
369
0 commit comments