Commit e0c1a8d Rob Dinoff
committed
1 parent a1f924a commit e0c1a8d Copy full SHA for e0c1a8d
File tree 1 file changed +10
-7
lines changed
influxdb_client/client/util
1 file changed +10
-7
lines changed Original file line number Diff line number Diff line change 1
1
"""Utils to get right Date parsing function."""
2
2
import datetime
3
+ import threading
3
4
from datetime import timezone as tz
4
5
5
6
from dateutil import parser
6
7
7
8
date_helper = None
8
9
10
+ lock_ = threading .Lock ()
9
11
10
12
class DateHelper :
11
13
"""
@@ -78,12 +80,13 @@ def get_date_helper() -> DateHelper:
78
80
If there is a 'ciso8601' than use 'ciso8601.parse_datetime' else use 'dateutil.parse'.
79
81
"""
80
82
global date_helper
81
- if date_helper is None :
82
- date_helper = DateHelper ()
83
- try :
84
- import ciso8601
85
- date_helper .parse_date = ciso8601 .parse_datetime
86
- except ModuleNotFoundError :
87
- date_helper .parse_date = parser .parse
83
+ with lock_ :
84
+ if date_helper is None :
85
+ date_helper = DateHelper ()
86
+ try :
87
+ import ciso8601
88
+ date_helper .parse_date = ciso8601 .parse_datetime
89
+ except ModuleNotFoundError :
90
+ date_helper .parse_date = parser .parse
88
91
89
92
return date_helper
You can’t perform that action at this time.
0 commit comments