TransferQueue 0.1.1.dev0__py3-none-any.whl → 0.1.1.dev2__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.
- transfer_queue/controller.py +13 -2
- transfer_queue/storage/managers/simple_backend_manager.py +5 -2
- transfer_queue/version/version +1 -1
- {transferqueue-0.1.1.dev0.dist-info → transferqueue-0.1.1.dev2.dist-info}/METADATA +1 -1
- {transferqueue-0.1.1.dev0.dist-info → transferqueue-0.1.1.dev2.dist-info}/RECORD +8 -8
- {transferqueue-0.1.1.dev0.dist-info → transferqueue-0.1.1.dev2.dist-info}/WHEEL +0 -0
- {transferqueue-0.1.1.dev0.dist-info → transferqueue-0.1.1.dev2.dist-info}/licenses/LICENSE +0 -0
- {transferqueue-0.1.1.dev0.dist-info → transferqueue-0.1.1.dev2.dist-info}/top_level.txt +0 -0
transfer_queue/controller.py
CHANGED
|
@@ -47,8 +47,8 @@ from transfer_queue.utils.zmq_utils import (
|
|
|
47
47
|
logger = logging.getLogger(__name__)
|
|
48
48
|
logger.setLevel(os.getenv("TQ_LOGGING_LEVEL", logging.WARNING))
|
|
49
49
|
|
|
50
|
-
TQ_CONTROLLER_GET_METADATA_TIMEOUT = int(os.environ.get("TQ_CONTROLLER_GET_METADATA_TIMEOUT",
|
|
51
|
-
TQ_CONTROLLER_GET_METADATA_CHECK_INTERVAL = int(os.environ.get("TQ_CONTROLLER_GET_METADATA_CHECK_INTERVAL",
|
|
50
|
+
TQ_CONTROLLER_GET_METADATA_TIMEOUT = int(os.environ.get("TQ_CONTROLLER_GET_METADATA_TIMEOUT", 1))
|
|
51
|
+
TQ_CONTROLLER_GET_METADATA_CHECK_INTERVAL = int(os.environ.get("TQ_CONTROLLER_GET_METADATA_CHECK_INTERVAL", 0.2))
|
|
52
52
|
TQ_CONTROLLER_CONNECTION_CHECK_INTERVAL = int(os.environ.get("TQ_CONTROLLER_CONNECTION_CHECK_INTERVAL", 2))
|
|
53
53
|
|
|
54
54
|
TQ_INIT_SAMPLE_NUM = int(os.environ.get("TQ_INIT_SAMPLE_NUM", 10)) # Initial number of samples
|
|
@@ -753,6 +753,17 @@ class TransferQueueController:
|
|
|
753
753
|
ready_for_consume_indexes = self.scan_data_status(partition_id, data_fields, task_name, batch_size)
|
|
754
754
|
|
|
755
755
|
if len(ready_for_consume_indexes) < batch_size:
|
|
756
|
+
if time.time() - start_time > TQ_CONTROLLER_GET_METADATA_TIMEOUT:
|
|
757
|
+
raise TimeoutError(
|
|
758
|
+
f"Timeout while waiting for sufficient data. "
|
|
759
|
+
f"Required: {batch_size}, Available: {len(ready_for_consume_indexes)}"
|
|
760
|
+
)
|
|
761
|
+
logger.warning(
|
|
762
|
+
f"Insufficient complete groups available. Required: {batch_size}, "
|
|
763
|
+
f"Available: {len(ready_for_consume_indexes)}. Retrying in "
|
|
764
|
+
f"{TQ_CONTROLLER_GET_METADATA_CHECK_INTERVAL}s..."
|
|
765
|
+
)
|
|
766
|
+
time.sleep(TQ_CONTROLLER_GET_METADATA_CHECK_INTERVAL)
|
|
756
767
|
continue
|
|
757
768
|
|
|
758
769
|
# Try sampling - if it returns empty lists, retry
|
|
@@ -34,6 +34,9 @@ from transfer_queue.utils.zmq_utils import ZMQMessage, ZMQRequestType, ZMQServer
|
|
|
34
34
|
logger = logging.getLogger(__name__)
|
|
35
35
|
logger.setLevel(os.getenv("TQ_LOGGING_LEVEL", logging.WARNING))
|
|
36
36
|
|
|
37
|
+
TQ_SIMPLE_STORAGE_MANAGER_RECV_TIMEOUT = int(os.environ.get("TQ_SIMPLE_STORAGE_MANAGER_RECV_TIMEOUT", 200)) # seconds
|
|
38
|
+
TQ_SIMPLE_STORAGE_MANAGER_SEND_TIMEOUT = int(os.environ.get("TQ_SIMPLE_STORAGE_MANAGER_SEND_TIMEOUT", 200)) # seconds
|
|
39
|
+
|
|
37
40
|
|
|
38
41
|
@TransferQueueStorageManagerFactory.register("AsyncSimpleStorageManager")
|
|
39
42
|
class AsyncSimpleStorageManager(TransferQueueStorageManager):
|
|
@@ -132,8 +135,8 @@ class AsyncSimpleStorageManager(TransferQueueStorageManager):
|
|
|
132
135
|
try:
|
|
133
136
|
sock.connect(address)
|
|
134
137
|
# Timeouts to avoid indefinite await on recv/send
|
|
135
|
-
sock.setsockopt(zmq.RCVTIMEO,
|
|
136
|
-
sock.setsockopt(zmq.SNDTIMEO,
|
|
138
|
+
sock.setsockopt(zmq.RCVTIMEO, TQ_SIMPLE_STORAGE_MANAGER_RECV_TIMEOUT * 1000)
|
|
139
|
+
sock.setsockopt(zmq.SNDTIMEO, TQ_SIMPLE_STORAGE_MANAGER_SEND_TIMEOUT * 1000)
|
|
137
140
|
logger.info(
|
|
138
141
|
f"[{self.storage_manager_id}]: Connected to StorageUnit {server_info.id} at {address} "
|
|
139
142
|
f"with identity {identity.decode()}"
|
transfer_queue/version/version
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
0.1.1.
|
|
1
|
+
0.1.1.dev2
|
|
@@ -12,7 +12,7 @@ tests/test_simple_storage_unit.py,sha256=Sczhw2bdCfTfa7RwnpW-aKCV1of8mO6z3l3q2PD
|
|
|
12
12
|
tests/test_storage_client_factory.py,sha256=U0gS_l4bc_bP7K_uPhy8UlJ186HyTrA10TSJNdf5SBM,1708
|
|
13
13
|
transfer_queue/__init__.py,sha256=68c0sBfqHPqTa7OdzO4sAZB52XvwtjpwLqP9BWAh4fA,1535
|
|
14
14
|
transfer_queue/client.py,sha256=zDlH1beWwRbjz0a7S8QH9IOJ1wp5yEQ36XYwFwJTXOY,24949
|
|
15
|
-
transfer_queue/controller.py,sha256=
|
|
15
|
+
transfer_queue/controller.py,sha256=uc_MQAlG_QmJ8szxc5yPLaZvCeP2CRULnAADtcf41-8,49702
|
|
16
16
|
transfer_queue/metadata.py,sha256=LHQhM7vixw5QcA05nZcqWbxSh7mhJ2ETJOo_1gFb3eI,17645
|
|
17
17
|
transfer_queue/sampler/__init__.py,sha256=1oauDy2Dwb5GXhKi7tl5DWAHv8i4t2MQK1S4U36Sy4g,788
|
|
18
18
|
transfer_queue/sampler/base.py,sha256=wFti4dNJb3YArYpGzxA_YDfyUTdTG8wVz6HclPDyZPw,3299
|
|
@@ -27,15 +27,15 @@ transfer_queue/storage/clients/yuanrong_client.py,sha256=rWOPQPLgHLav7cFdGCr8CeV
|
|
|
27
27
|
transfer_queue/storage/managers/__init__.py,sha256=y5x5OzZwK_YormdHdzc-smnJNew3niuqU2g_kkaiXIk,876
|
|
28
28
|
transfer_queue/storage/managers/base.py,sha256=ntlo6sLWIbTiAOUxgJTUyjLl5m4HBuAUUNCYZxq9BFM,20352
|
|
29
29
|
transfer_queue/storage/managers/factory.py,sha256=58kp2mCKz1K8Ea7RWMsWxdDhN3y4ZhgE-G647AKq7-I,1752
|
|
30
|
-
transfer_queue/storage/managers/simple_backend_manager.py,sha256=
|
|
30
|
+
transfer_queue/storage/managers/simple_backend_manager.py,sha256=zn0RrRng2zo0kLHl3eKQ9Ksf9O1W9DCEzpuZes8uSjM,27684
|
|
31
31
|
transfer_queue/storage/managers/yuanrong_manager.py,sha256=NjHC3LBW0fQwm30Oq_qEKoCQEq8oWO0D-AobcpQNPNg,777
|
|
32
32
|
transfer_queue/utils/__init__.py,sha256=vki-5RVaRBKxVc6Q7XPQox3VNPio2DvJYvRz0SZtu-w,586
|
|
33
33
|
transfer_queue/utils/serial_utils.py,sha256=9ZgsytTp-441YKtIRFqyH5NhNifSqRKa2h0FI44ltcc,10200
|
|
34
34
|
transfer_queue/utils/utils.py,sha256=Pno4h3WjX_eT7q4xiVV6Jkhquc39Fp-Ycsg1cv0qNKQ,4544
|
|
35
35
|
transfer_queue/utils/zmq_utils.py,sha256=jCg2pQfvy_IYdGyZq4nvL4CAwjJc7Li0Trp3T3GDBMg,5118
|
|
36
|
-
transfer_queue/version/version,sha256=
|
|
37
|
-
transferqueue-0.1.1.
|
|
38
|
-
transferqueue-0.1.1.
|
|
39
|
-
transferqueue-0.1.1.
|
|
40
|
-
transferqueue-0.1.1.
|
|
41
|
-
transferqueue-0.1.1.
|
|
36
|
+
transfer_queue/version/version,sha256=GLEQDboAHBDJ_23hOEatkTWzCRpxAQCOMSDn78NKSjw,11
|
|
37
|
+
transferqueue-0.1.1.dev2.dist-info/licenses/LICENSE,sha256=WNHhf_5RCaeuKWyq_K39vmp9F28LxKsB4SpomwSZ2L0,11357
|
|
38
|
+
transferqueue-0.1.1.dev2.dist-info/METADATA,sha256=TfiqGrPVI9vQ2QH5FUi1lFtHIidhVPkv5auZM16TOJM,19531
|
|
39
|
+
transferqueue-0.1.1.dev2.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
40
|
+
transferqueue-0.1.1.dev2.dist-info/top_level.txt,sha256=BiBclu7jWJ0AZ35vUr3hN9_cg8JL9EiH_hjFxquMxtw,33
|
|
41
|
+
transferqueue-0.1.1.dev2.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|