opengris-scaler 1.12.13__cp313-cp313-musllinux_1_2_x86_64.whl → 1.12.20__cp313-cp313-musllinux_1_2_x86_64.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.

Potentially problematic release.


This version of opengris-scaler might be problematic. Click here for more details.

Files changed (99) hide show
  1. {opengris_scaler-1.12.13.dist-info → opengris_scaler-1.12.20.dist-info}/METADATA +13 -9
  2. {opengris_scaler-1.12.13.dist-info → opengris_scaler-1.12.20.dist-info}/RECORD +99 -86
  3. {opengris_scaler-1.12.13.dist-info → opengris_scaler-1.12.20.dist-info}/entry_points.txt +1 -0
  4. scaler/client/agent/client_agent.py +7 -7
  5. scaler/client/agent/heartbeat_manager.py +5 -5
  6. scaler/client/client.py +6 -6
  7. scaler/cluster/cluster.py +4 -4
  8. scaler/cluster/combo.py +14 -12
  9. scaler/cluster/object_storage_server.py +7 -7
  10. scaler/cluster/scheduler.py +8 -5
  11. scaler/config/defaults.py +7 -0
  12. scaler/config/loader.py +1 -1
  13. scaler/config/section/cluster.py +2 -3
  14. scaler/config/section/ecs_worker_adapter.py +85 -0
  15. scaler/config/section/native_worker_adapter.py +2 -3
  16. scaler/config/section/object_storage_server.py +1 -0
  17. scaler/config/section/scheduler.py +8 -7
  18. scaler/config/section/symphony_worker_adapter.py +3 -3
  19. scaler/config/section/webui.py +5 -0
  20. scaler/config/types/network_backend.py +12 -0
  21. scaler/config/types/worker.py +1 -1
  22. scaler/entry_points/cluster.py +3 -3
  23. scaler/entry_points/scheduler.py +16 -7
  24. scaler/entry_points/top.py +1 -1
  25. scaler/entry_points/webui.py +23 -1
  26. scaler/entry_points/worker_adapter_ecs.py +191 -0
  27. scaler/entry_points/worker_adapter_native.py +1 -1
  28. scaler/entry_points/worker_adapter_symphony.py +5 -9
  29. scaler/io/async_binder.py +9 -5
  30. scaler/io/async_connector.py +1 -1
  31. scaler/io/async_object_storage_connector.py +74 -34
  32. scaler/io/sync_connector.py +1 -1
  33. scaler/io/sync_object_storage_connector.py +93 -31
  34. scaler/io/sync_subscriber.py +1 -1
  35. scaler/io/utility.py +44 -0
  36. scaler/io/ymq/_ymq.so +0 -0
  37. scaler/io/ymq/bytes.h +1 -1
  38. scaler/io/ymq/configuration.h +1 -2
  39. scaler/io/ymq/error.h +3 -3
  40. scaler/io/ymq/logging.h +2 -4
  41. scaler/io/ymq/message_connection_tcp.cpp +24 -4
  42. scaler/io/ymq/message_connection_tcp.h +2 -0
  43. scaler/io/ymq/pymod_ymq/exception.h +2 -5
  44. scaler/io/ymq/pymod_ymq/gil.h +8 -5
  45. scaler/io/ymq/pymod_ymq/io_context.h +8 -6
  46. scaler/io/ymq/pymod_ymq/io_socket.h +72 -73
  47. scaler/io/ymq/pymod_ymq/python.h +7 -3
  48. scaler/io/ymq/pymod_ymq/ymq.h +6 -10
  49. scaler/io/ymq/readme.md +8 -104
  50. scaler/io/ymq/tcp_client.cpp +2 -2
  51. scaler/io/ymq/timed_queue.h +30 -33
  52. scaler/io/ymq/ymq.py +24 -16
  53. scaler/io/ymq_async_object_storage_connector.py +184 -0
  54. scaler/io/ymq_sync_object_storage_connector.py +184 -0
  55. scaler/object_storage/object_manager.cpp +6 -1
  56. scaler/object_storage/object_manager.h +3 -0
  57. scaler/object_storage/object_storage_server.cpp +29 -0
  58. scaler/object_storage/object_storage_server.h +2 -0
  59. scaler/object_storage/object_storage_server.so +0 -0
  60. scaler/protocol/capnp/message.capnp +2 -1
  61. scaler/protocol/capnp/object_storage.capnp +5 -0
  62. scaler/protocol/python/message.py +13 -1
  63. scaler/scheduler/allocate_policy/capability_allocate_policy.py +1 -1
  64. scaler/scheduler/controllers/information_controller.py +1 -1
  65. scaler/scheduler/controllers/mixins.py +0 -7
  66. scaler/scheduler/controllers/scaling_policies/__init__.py +0 -0
  67. scaler/scheduler/controllers/scaling_policies/fixed_elastic.py +145 -0
  68. scaler/scheduler/controllers/scaling_policies/mixins.py +10 -0
  69. scaler/scheduler/controllers/scaling_policies/null.py +14 -0
  70. scaler/scheduler/controllers/scaling_policies/types.py +9 -0
  71. scaler/scheduler/controllers/scaling_policies/utility.py +20 -0
  72. scaler/scheduler/controllers/{scaling_controller.py → scaling_policies/vanilla.py} +25 -16
  73. scaler/scheduler/controllers/task_controller.py +4 -1
  74. scaler/scheduler/scheduler.py +10 -12
  75. scaler/ui/memory_window.py +10 -13
  76. scaler/ui/task_graph.py +616 -124
  77. scaler/ui/task_log.py +43 -22
  78. scaler/ui/utility.py +37 -5
  79. scaler/ui/webui.py +14 -2
  80. scaler/ui/worker_processors.py +11 -4
  81. scaler/utility/identifiers.py +2 -3
  82. scaler/version.txt +1 -1
  83. scaler/worker/agent/heartbeat_manager.py +8 -8
  84. scaler/worker/agent/mixins.py +2 -2
  85. scaler/worker/agent/processor/processor.py +5 -5
  86. scaler/worker/agent/processor_holder.py +5 -5
  87. scaler/worker/agent/processor_manager.py +4 -3
  88. scaler/worker/worker.py +8 -8
  89. scaler/worker_adapter/common.py +26 -0
  90. scaler/worker_adapter/ecs.py +269 -0
  91. scaler/worker_adapter/native.py +17 -16
  92. scaler/worker_adapter/symphony/heartbeat_manager.py +7 -7
  93. scaler/worker_adapter/symphony/task_manager.py +2 -1
  94. scaler/worker_adapter/symphony/worker.py +7 -8
  95. scaler/worker_adapter/symphony/worker_adapter.py +12 -15
  96. {opengris_scaler-1.12.13.dist-info → opengris_scaler-1.12.20.dist-info}/WHEEL +0 -0
  97. {opengris_scaler-1.12.13.dist-info → opengris_scaler-1.12.20.dist-info}/licenses/LICENSE +0 -0
  98. {opengris_scaler-1.12.13.dist-info → opengris_scaler-1.12.20.dist-info}/licenses/LICENSE.spdx +0 -0
  99. {opengris_scaler-1.12.13.dist-info → opengris_scaler-1.12.20.dist-info}/licenses/NOTICE +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: opengris-scaler
3
- Version: 1.12.13
3
+ Version: 1.12.20
4
4
  Summary: OpenGRIS Scaler Distribution Framework
5
5
  Author-Email: Citi <opensource@citi.com>
6
6
  License: Apache 2.0
@@ -9,11 +9,11 @@ Classifier: License :: OSI Approved :: Apache Software License
9
9
  Classifier: Intended Audience :: Developers
10
10
  Classifier: Operating System :: OS Independent
11
11
  Classifier: Topic :: System :: Distributed Computing
12
- Project-URL: Home, https://github.com/Citi/scaler
12
+ Project-URL: Home, https://github.com/finos/opengris-scaler
13
13
  Requires-Python: >=3.8
14
14
  Requires-Dist: bidict
15
15
  Requires-Dist: cloudpickle
16
- Requires-Dist: psutil==7.1.0
16
+ Requires-Dist: psutil==7.1.1
17
17
  Requires-Dist: pycapnp==2.1.0
18
18
  Requires-Dist: pyzmq
19
19
  Requires-Dist: sortedcontainers==2.4.0
@@ -21,24 +21,28 @@ Requires-Dist: tblib
21
21
  Requires-Dist: aiohttp
22
22
  Requires-Dist: graphlib-backport; python_version < "3.9"
23
23
  Requires-Dist: typing-extensions>=4.0; python_version < "3.10"
24
+ Requires-Dist: tomli; python_version < "3.11"
24
25
  Provides-Extra: uvloop
25
26
  Requires-Dist: uvloop; platform_system != "Windows" and extra == "uvloop"
26
27
  Provides-Extra: gui
27
28
  Requires-Dist: nicegui[plotly]==2.24.2; python_version == "3.8" and extra == "gui"
28
- Requires-Dist: nicegui[plotly]==3.0.4; python_version >= "3.9" and extra == "gui"
29
+ Requires-Dist: nicegui[plotly]==3.1.0; python_version >= "3.9" and extra == "gui"
29
30
  Provides-Extra: graphblas
30
31
  Requires-Dist: python-graphblas; extra == "graphblas"
31
32
  Requires-Dist: numpy==1.24.4; python_version == "3.8" and extra == "graphblas"
32
33
  Requires-Dist: numpy==2.0.2; python_version == "3.9" and extra == "graphblas"
33
34
  Requires-Dist: numpy==2.2.6; python_version >= "3.10" and extra == "graphblas"
35
+ Provides-Extra: aws
36
+ Requires-Dist: boto3; extra == "aws"
34
37
  Provides-Extra: all
35
38
  Requires-Dist: nicegui[plotly]==2.24.2; python_version == "3.8" and extra == "all"
36
- Requires-Dist: nicegui[plotly]==3.0.4; python_version >= "3.9" and extra == "all"
39
+ Requires-Dist: nicegui[plotly]==3.1.0; python_version >= "3.9" and extra == "all"
37
40
  Requires-Dist: python-graphblas; extra == "all"
38
41
  Requires-Dist: numpy==1.24.4; python_version == "3.8" and extra == "all"
39
42
  Requires-Dist: numpy==2.0.2; python_version == "3.9" and extra == "all"
40
43
  Requires-Dist: numpy==2.2.6; python_version >= "3.10" and extra == "all"
41
44
  Requires-Dist: uvloop; platform_system != "Windows" and extra == "all"
45
+ Requires-Dist: boto3; extra == "all"
42
46
  Description-Content-Type: text/markdown
43
47
 
44
48
  <div align="center">
@@ -58,12 +62,12 @@ Description-Content-Type: text/markdown
58
62
  <img src="https://img.shields.io/badge/Documentation-0f1632">
59
63
  </a>
60
64
  <a href="./LICENSE">
61
- <img src="https://img.shields.io/github/license/citi/scaler?label=license&colorA=0f1632&colorB=255be3">
65
+ <img src="https://img.shields.io/github/license/finos/opengris-scaler?label=license&colorA=0f1632&colorB=255be3">
62
66
  </a>
63
- <a href="https://pypi.org/project/scaler">
64
- <img alt="PyPI - Version" src="https://img.shields.io/pypi/v/scaler?colorA=0f1632&colorB=255be3">
67
+ <a href="https://pypi.org/project/opengris-scaler">
68
+ <img alt="PyPI - Version" src="https://img.shields.io/pypi/v/opengris-scaler?colorA=0f1632&colorB=255be3">
65
69
  </a>
66
- <img src="https://api.securityscorecards.dev/projects/github.com/Citi/scaler/badge">
70
+ <img src="https://api.securityscorecards.dev/projects/github.com/finos/opengris-scaler/badge">
67
71
  </p>
68
72
  </div>
69
73
 
@@ -5,17 +5,17 @@ opengris_scaler.libs/libstdc++-08d5c7eb.so.6.0.33,sha256=k0S_imrCh_IE6WpvxrLoVPY
5
5
  scaler/CMakeLists.txt,sha256=60rkhpiwy0F-DSsRX_6nRrjYQvQ1Jp9mGp8fZsi006k,305
6
6
  scaler/__init__.py,sha256=nZU5QZ9oW2YIaGwm3-r-6dfmirTVzZpDPDNtX-ITCV4,513
7
7
  scaler/about.py,sha256=OBcfSvHO0P3mWaa2Ci4WEOTbH7is-3uYymScxgZPxyg,161
8
- scaler/version.txt,sha256=F6PMSyppBgeF1s1ced3yCqk9L1U1rOtqGWHlqvHibuU,8
8
+ scaler/version.txt,sha256=SvuzpNxynEY-C87gs6PxCwdH3djfuO_T2itiSzLzTD0,8
9
9
  scaler/client/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
10
- scaler/client/client.py,sha256=9WWclvdsouYPREGwmkWWA3gpz5DVFEAD6HKbtXr3Jx8,25506
10
+ scaler/client/client.py,sha256=tZywq0208n7as62ShckPdeI8soFXh3AaS1pGBCVJrZo,25535
11
11
  scaler/client/future.py,sha256=fOl5g4Is4E5jtvO0kmRk4uUs_eUjSjMmyniYhWMAH4w,10041
12
12
  scaler/client/object_buffer.py,sha256=MBjz1Rf6ufgTyjMYoV8V78xpezot0aUit41nj-5kV50,4670
13
13
  scaler/client/object_reference.py,sha256=Pow064leLlO6OhfW-yyEjcesbzn22ijqGBSQlsQNEtU,606
14
14
  scaler/client/agent/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
15
- scaler/client/agent/client_agent.py,sha256=mMOIv1o4PrzKtDghm353m2WEQ6iysM5BFvY6xALJYaY,8036
15
+ scaler/client/agent/client_agent.py,sha256=nPYGl1qpKLAPRMI5ip5o5F5fU-6Yl_M2Nk3Ln8qPkD8,8078
16
16
  scaler/client/agent/disconnect_manager.py,sha256=eNy8QKYgsJi4xnyJING0URx48lyaK2GxNYv-GYWYUmg,1189
17
17
  scaler/client/agent/future_manager.py,sha256=SS4ucAjg_p8pAH3VSgfhC8dur6xvEyljwbaOoxoNA2g,4713
18
- scaler/client/agent/heartbeat_manager.py,sha256=l-CnIzk_B270AorcLlynu9MT_4hxIefwGTnLQOGNxGw,2737
18
+ scaler/client/agent/heartbeat_manager.py,sha256=1iF3UKQXHe_UK83HFCZFBMOiqZQzg3yCd2Y6cEIJHtw,2772
19
19
  scaler/client/agent/mixins.py,sha256=L7G2XwvSUvlHq5bYQfPCstYbQUtSh0r4A69cq69jh2w,2429
20
20
  scaler/client/agent/object_manager.py,sha256=ATAjsxcTc4zbT1SEA-1e4aoCPteFczdWKfbsgRYWf9s,4226
21
21
  scaler/client/agent/task_manager.py,sha256=7dr6rv3IAlyISII_SPzeLgQCEZnskiv9Qw3cfV4Sg7U,2833
@@ -23,53 +23,58 @@ scaler/client/serializer/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZ
23
23
  scaler/client/serializer/default.py,sha256=MU0xosP_IRiTlDHogZtceM6Dfl54KvxHGnnbuwmLlb0,385
24
24
  scaler/client/serializer/mixins.py,sha256=R3HWteJ54AC5yAK8nsyhWbYTuMDdkQgDi95aOtAS3Qs,1401
25
25
  scaler/cluster/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
26
- scaler/cluster/cluster.py,sha256=kpOMxuJ855telnEUcmv7T3Lt1xzE50JnKXfnFua78KI,4470
27
- scaler/cluster/combo.py,sha256=dOdRB0lJ-tG052oTlOdluo3DesZGaeR85M1_3PSLbas,6350
28
- scaler/cluster/object_storage_server.py,sha256=t7lx1tXAz1Iwc3xARJQqQOcG0s1BlIc-yf_jORZF0xE,1635
29
- scaler/cluster/scheduler.py,sha256=UqrB2ApZ9D_2IhleyGzKgZRUda5PPBiSOHO-Z0hj72k,3267
26
+ scaler/cluster/cluster.py,sha256=so9qfYC0stvXyULK5-gvDqwdF2SRRMPMGGjHTPYp4uA,4505
27
+ scaler/cluster/combo.py,sha256=OcapfDMXute1yvsj2CHKHffKoXoX469zCQC615l0NG0,6588
28
+ scaler/cluster/object_storage_server.py,sha256=0X6afXygpEB1xJ9MAgMIjcH2uufTT8L8RGA2MVmQVmc,1684
29
+ scaler/cluster/scheduler.py,sha256=pg-sLzuDuBWifmcb0wcQB1kSZZu0y7FinHWsnGGxT5I,3509
30
30
  scaler/config/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
31
- scaler/config/defaults.py,sha256=HhYpemdTj1LQUZx8Fga5zVvCeIld1vvaNhTPjP2sRB4,2865
32
- scaler/config/loader.py,sha256=nQXS7ysT5p-IVTjVTzfC19ZDdsQPBh1lnD-MX7DVHL4,3866
31
+ scaler/config/defaults.py,sha256=qh8zWrevVPBOLW5O85Tz031oiPUpkHbRal5fWBDuVGQ,3047
32
+ scaler/config/loader.py,sha256=bjBGPv0AeYH8Hh3hOs2GsMB3M2Y5nXWL5eKG4r6KKYU,3866
33
33
  scaler/config/mixins.py,sha256=o1YivS_8AzejSQ_jfSt5bkaA59DQGbw9P-rO5Z7LFVs,443
34
34
  scaler/config/section/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
35
- scaler/config/section/cluster.py,sha256=JTn3rFM5HaOGyM-r9yd2xgImLgL9YJBkQPsAEDOXCd8,2855
36
- scaler/config/section/native_worker_adapter.py,sha256=dYPJn3a8CrGlynrlD4NlPRfA8PBkmcERPecRdf_hKWg,2262
37
- scaler/config/section/object_storage_server.py,sha256=IqdHkcBlsKYRmLgkKbmth93FT7QH5mmFD7GFq3ddIyw,199
38
- scaler/config/section/scheduler.py,sha256=oORVUwDuZ6hNzT1haGYBx1MP4pSwMlptQETd6Yoa7Xk,2666
39
- scaler/config/section/symphony_worker_adapter.py,sha256=6aSlCCqazcamhd2fILtbItzPHnwK4dlkm8OdonK_zyI,2024
35
+ scaler/config/section/cluster.py,sha256=A17dfUUOUmT4f8UIFB6gBv2TaFCVlhcgXVx1MbbN7x4,2861
36
+ scaler/config/section/ecs_worker_adapter.py,sha256=hNTA6OZbUk1BxVQDiOhvdPriM_w77o19jzJ8c0JlZZ8,4225
37
+ scaler/config/section/native_worker_adapter.py,sha256=yu5NTJscxtOqvTJHwXlKPgBkIi4nRz8-LfGfsD7UCzk,2268
38
+ scaler/config/section/object_storage_server.py,sha256=XmRBD4Bl7Xs1wiEzppIG0JFS9Ma4NbC6sKiTKc_aMuI,200
39
+ scaler/config/section/scheduler.py,sha256=XtZ6fd51SVpkBjYG_XDmu2DqRZuLCTOD1vWYgplh5Yc,2883
40
+ scaler/config/section/symphony_worker_adapter.py,sha256=PJTuSppV7iObfLvXaUVf3vbcNQlipaE5hqkPtArG1Yg,2024
40
41
  scaler/config/section/top.py,sha256=4YUCyZTRVfINUhV56j50pg8be5o8nlWxG08fDqofHrA,288
41
- scaler/config/section/webui.py,sha256=-9oFn1C64re2xZ_KKJIsHG--6PaVTvCP9vmRZNR_9MA,487
42
+ scaler/config/section/webui.py,sha256=WOiwbDcL7jJ0EPCwlWp-9XWoPFRRQUYQJkIYtk5qVRo,727
42
43
  scaler/config/types/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
44
+ scaler/config/types/network_backend.py,sha256=o-tBD08ScOohuffqLyN3qeB-Ng4o-cGI8LWDR1ZLE4Y,321
43
45
  scaler/config/types/object_storage_server.py,sha256=xvuCwiAQ4C_hKgTI4y6XMx9NKE0aX2QC6dlWNyvJyk4,1338
44
- scaler/config/types/worker.py,sha256=0pt871QcyQ0_PEDVPxxgnnk3l5_syQA-71V1bhUmf0g,1708
46
+ scaler/config/types/worker.py,sha256=ney8uqCzf5j_uPIghzj6Nd-OHDeTK6tZF8m4sVNCUM8,1708
45
47
  scaler/config/types/zmq.py,sha256=0VODax61H-4PxN6rIeWKlMXOHiW5elVSt1zc-UF0SL8,2593
46
48
  scaler/entry_points/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
47
- scaler/entry_points/cluster.py,sha256=5jPO_fFVe8IiSiAkLhLZ0mXJKXiYUWjvpXjEGlcgwW4,5779
49
+ scaler/entry_points/cluster.py,sha256=6EX08djqhtQZfwUiqeyOVJBytWCYFehqs9Utas--wy4,5801
48
50
  scaler/entry_points/object_storage_server.py,sha256=YGDl9-ws0oha1YXXl3gFH660B-IV2o06gCp41zUovdg,1418
49
- scaler/entry_points/scheduler.py,sha256=uJkmr1M3gzTEWmntdDr0f0-zls2V91vRPANahRjFj0c,6003
50
- scaler/entry_points/top.py,sha256=pqOPD27HeZrnMvqw4cOF4bvZ-sxgg7zp_Q1v8VtbC4A,9542
51
- scaler/entry_points/webui.py,sha256=ypcrE6Lr4rUX_qM0qSsv-dX7kzZiMMWTe5GL-Ol45BI,1067
52
- scaler/entry_points/worker_adapter_native.py,sha256=1If3xEu2YsnRIrAmcP-MXmnVTF7hescDed4jTL3vkzM,5412
53
- scaler/entry_points/worker_adapter_symphony.py,sha256=MUoJKBmZGiD6kXygMsvfNa5YQzjYfcI9RwfwLEA_eFU,4469
51
+ scaler/entry_points/scheduler.py,sha256=OMaxx45d7ErzcAs57DgmYEqm28sHLTrIsuUJy9sLGdU,6476
52
+ scaler/entry_points/top.py,sha256=FRlF6Dk8b3sL41CTENGauBBxrMZx5JjoufqFbGiwQCU,9531
53
+ scaler/entry_points/webui.py,sha256=2xiii_T0PI8pTLJB0RKLMajRDaNYFOKaSP2X9bujMlU,1823
54
+ scaler/entry_points/worker_adapter_ecs.py,sha256=O6ypeF4asnqAw1037O2Ams2Q0kivYIeYKwTUu9hI4Rk,7836
55
+ scaler/entry_points/worker_adapter_native.py,sha256=7oN6nOdri0qvvLB6YrnF1SwExQklKFkLQMo26PPXZG8,5426
56
+ scaler/entry_points/worker_adapter_symphony.py,sha256=D1X0Y_-6lbVnVCHtwZ8fSEbgtAkMU6JLqjgEdmO_VWI,4408
54
57
  scaler/io/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
55
- scaler/io/async_binder.py,sha256=sLCx9ByNkJxeRsrKvlaJj3EvVP7FJ56V7vZhFUy6UdE,2912
56
- scaler/io/async_connector.py,sha256=6epYfPNCV14KtkzMHvVZq1fzhdKXd7YptAJjLuH7Rro,2638
57
- scaler/io/async_object_storage_connector.py,sha256=2UUrF9aMVEQ7EmUkSRxJ4Yg4A4o2elcKuUz0R3lJPRg,6644
58
+ scaler/io/async_binder.py,sha256=KNZSnHD9rNbxuxGd5U0gU023Z5Ys3nVsn31KGvjOVoE,3101
59
+ scaler/io/async_connector.py,sha256=7op2onZTGVzEiBWMH3ZMAEdST01SPzu8FvyWskI768U,2638
60
+ scaler/io/async_object_storage_connector.py,sha256=F6CVMn4iMMynuMEmgH2dVAUBOnYIsQGLbnL4U1m2r3o,7767
58
61
  scaler/io/mixins.py,sha256=915V2W1NU1SjC94ioPQs0SlWlo4DiZs1YqE2POIxoRQ,4150
59
- scaler/io/sync_connector.py,sha256=zRDlBuMVbH92LqbdS35EPHXVOnaeWrvjmZZCISqqjPI,1964
60
- scaler/io/sync_object_storage_connector.py,sha256=Zeo0aVAQ_bkRnhmqG9Ozst584072uMQfASfTLixQoeQ,7324
61
- scaler/io/sync_subscriber.py,sha256=rHbnhkfxvWtyswLNEyvr3D76i-sVBnGwWAGjLp2-thk,2523
62
- scaler/io/utility.py,sha256=yFq8-X47RfWp344HpRfqc_3XF3c6vewKPLi73e248s8,1189
62
+ scaler/io/sync_connector.py,sha256=S3kQkzliIlW2-EXEOjkCl6_tw0l6ur3HdVR7RQvcrho,1964
63
+ scaler/io/sync_object_storage_connector.py,sha256=NkmjfYYbeXy0Tdw5gQNirzMAHxWv8Po6DXON83-JdfU,9352
64
+ scaler/io/sync_subscriber.py,sha256=2DOKd2xKIGc8-J2hUtqT8uO7RxGwjJQMtfqHF4fvgH0,2523
65
+ scaler/io/utility.py,sha256=najEtXZ7Gk9VdFpQ5Rys-k6hU3YbviaunX7ck697p_g,2994
66
+ scaler/io/ymq_async_object_storage_connector.py,sha256=_eWEkOtpQGk3FtEqczILrohxy-LfCncVV2Q-h-hwrzc,6635
67
+ scaler/io/ymq_sync_object_storage_connector.py,sha256=E-pwyXtHHbU9IZ2NAeMO-n1Y04Gx5cp41fFcdOqTkEQ,7329
63
68
  scaler/io/ymq/CMakeLists.txt,sha256=znJS9ru-tjtn7Lv8RN1RJZVPhlHaE5AKS44z1Nnj_vE,1987
64
69
  scaler/io/ymq/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
65
70
  scaler/io/ymq/_ymq.pyi,sha256=HYLhjYhHTOgjffpAnlqyCSdUjEvKVRP7Slv8vIgGdkI,3036
66
- scaler/io/ymq/_ymq.so,sha256=Nst20Uw_toELNwF-ISSw32rCDya9IRl_eXoLctLpWSg,665721
67
- scaler/io/ymq/bytes.h,sha256=fxaZ0NMwzJC-agotCZbGizMs-IgPW4VWG4raeWBXC5I,2931
71
+ scaler/io/ymq/_ymq.so,sha256=kn2jJuQcglpScww4vO0Dfb0buJ6msQCz6AMSKZ0Ds4o,678257
72
+ scaler/io/ymq/bytes.h,sha256=BAeE0DITH81HZYHXT1W7Fa1h0DPUBzX4Cpvw2JCxVXw,2922
68
73
  scaler/io/ymq/common.h,sha256=XmYnfVeaIGZU3-gI2slw4uZyRrz807ANJXSQTf1joEY,711
69
- scaler/io/ymq/configuration.h,sha256=VvtSSGgD5dCOKc-gvtsqSBDoagaRnfnUS7jueDVsn9U,1951
74
+ scaler/io/ymq/configuration.h,sha256=VbTBb96f2SYW9Oum1hCb9M65EsqUqj5SAnClUsf435w,1875
70
75
  scaler/io/ymq/epoll_context.cpp,sha256=BE-Ol2p8-t61BajaEzLK-B2ABNNDiExVbb0Ym9BjbVA,4938
71
76
  scaler/io/ymq/epoll_context.h,sha256=0Cu840Utq6puRHCTVctCWpfdfNpUFcZJqw5D7e7hzSs,2641
72
- scaler/io/ymq/error.h,sha256=BUb55lcKou20u9e_GHZ0WEmlHJeC3VQWEzW-yTuRCTQ,5552
77
+ scaler/io/ymq/error.h,sha256=J09pJxEeAiukp1HKeOekoYIRXdQzLaTwBFvPAFOaCpo,5551
73
78
  scaler/io/ymq/event_loop.h,sha256=CDvcOszqtDSqkFt3t9hsT8n9HStbIchk7UO1u-3CTL0,1652
74
79
  scaler/io/ymq/event_loop_thread.cpp,sha256=0aYMmgpg8g6mmC-Ked2F3GCHNGJNXZAZLPobEQqu7g4,1801
75
80
  scaler/io/ymq/event_loop_thread.h,sha256=XNsVDH7r4tDBlU4VstrwMBGgOMOEsoDn7qLFjox1nEg,1683
@@ -81,34 +86,34 @@ scaler/io/ymq/io_socket.cpp,sha256=Li6P-7R80YwduaL59_D2wQ36twufdIIXaP7IS46zSwQ,1
81
86
  scaler/io/ymq/io_socket.h,sha256=lWqfJHZg6OGxz16x2NwKKbtvjfErrC4IUP3puw72Nwg,4953
82
87
  scaler/io/ymq/iocp_context.cpp,sha256=SRGEn5MVoWl8JUIO2sZDUQi6AbhrXfhQ-aRoWiaF2SY,3103
83
88
  scaler/io/ymq/iocp_context.h,sha256=pAwrs8XZWHIskEdQyA5BrISxsiSzfW6r9J873pBMs4Q,2731
84
- scaler/io/ymq/logging.h,sha256=TJFeawseU8zkWiSC_yS3dO2i0oKAWAZFzyb_vk0tU7Q,5421
89
+ scaler/io/ymq/logging.h,sha256=yCbf_dc0yEStLbYp-tVtu4k69P8xwohCaBo6OHB49XA,5329
85
90
  scaler/io/ymq/message.h,sha256=yBAd5BIeDttWqseyoUBPKPnD1qT05o_vlqEN3J53lP4,241
86
91
  scaler/io/ymq/message_connection.h,sha256=dvkIjMt31gPFephJURtxcqm7TFAWZ3y0ZvuekXFL3_Q,350
87
- scaler/io/ymq/message_connection_tcp.cpp,sha256=yxIFZBzShzAEUUtHXhSj6sy_udRC-Jw-TwvZk3Vio6Q,21902
88
- scaler/io/ymq/message_connection_tcp.h,sha256=C7jo2fVeHqdhIk8cAaVNAnnF8IyIIJT0EZC1Sf_MDe4,2743
92
+ scaler/io/ymq/message_connection_tcp.cpp,sha256=Q94sCAChQim50nDGmuXIOi0OXeIPAuBpKgQeLNf1rIc,22687
93
+ scaler/io/ymq/message_connection_tcp.h,sha256=Ikqpbry51Dd82XoS5edKj9sb8dWTK-R1S8s36vZoxGs,2798
89
94
  scaler/io/ymq/network_utils.h,sha256=qebEdeKYpztZLI02c25eqcRmFMqBZN3GEaE81fiyBF8,4142
90
- scaler/io/ymq/readme.md,sha256=gzjJJovTVjV0e-4QpjrscT0gmtDiPjszAIlVt5upshg,3739
95
+ scaler/io/ymq/readme.md,sha256=t4uuIGpf-N9a3ohWq3rHtiWaxVxZa1Z3PPcY7wZmYp0,1813
91
96
  scaler/io/ymq/simple_interface.cpp,sha256=BpsjGW3xGCajnQDa9UN8GJA_Xu15LfJTU4IRnsGOA04,2912
92
97
  scaler/io/ymq/simple_interface.h,sha256=QK79wrltmVA2vE649p4F3A82D91Rtlrw-td6M5m56wU,868
93
- scaler/io/ymq/tcp_client.cpp,sha256=OTyi5w355ovB4pbBcv82dt4zul9tCHpwxp_EJJ7jsXo,10480
98
+ scaler/io/ymq/tcp_client.cpp,sha256=Ykath88D8L9NCtz1pko8xRuTnc6pUHI_ViAQsPkWEls,10489
94
99
  scaler/io/ymq/tcp_client.h,sha256=QBa2Ejz8bJBzYmopEYw5SjN8a4HLH8Aopq0m6l0JLIg,1757
95
100
  scaler/io/ymq/tcp_operations.h,sha256=EbUk2p35jtHuu18NZc9ibkNeVaVjIzcSn_jjNN2sRYA,1069
96
101
  scaler/io/ymq/tcp_server.cpp,sha256=uKugKzi64dlIQRwCSRB40rdYF2mMDFJK2sAmNVdTNF8,12196
97
102
  scaler/io/ymq/tcp_server.h,sha256=MJCZcrj_JFkmyCv_dIRgAbAktf7XWTVFpRYLWSWYk7Y,1979
98
- scaler/io/ymq/timed_queue.h,sha256=mLNGGqzrQQe56L_-M1Rui1AQaUb3c_IiMiw9HF92rZE,8382
103
+ scaler/io/ymq/timed_queue.h,sha256=A2nu0ZZYt95HTa6zCniKvCe1H3qdrSYjW7_29fgYchI,8278
99
104
  scaler/io/ymq/timestamp.h,sha256=BMRfCYUxGVDBzKHSmnRW1wfQy2y5TMWJQgkk82h7GO8,3065
100
105
  scaler/io/ymq/typedefs.h,sha256=HZlHobpq16DkhbIEAJLBTFgbmMul99S7cWjW7vpmRj0,331
101
106
  scaler/io/ymq/utils.h,sha256=pZ2Qs19_0FzbSka2BV3Mv94jW7EXrLuS8C7cL1fnZ78,796
102
- scaler/io/ymq/ymq.py,sha256=d8bxU0h2maQvIkiJgGeTD-QynCOa4JwYCwuVfxqq9AE,4658
107
+ scaler/io/ymq/ymq.py,sha256=iu0xEkn2mONDB9MkDolYwZ9COtKFsCJU0Q23tRYosS8,4919
103
108
  scaler/io/ymq/pymod_ymq/bytes.h,sha256=srlYnWibw2a9mgulzCc5H-7TnMob8QWA2ChAdbZ4bxw,3135
104
- scaler/io/ymq/pymod_ymq/exception.h,sha256=4nfUpc8VJDRZeBvgmOZN_j0FHmryZTbxzzBrWQKhhG4,3573
105
- scaler/io/ymq/pymod_ymq/gil.h,sha256=YdFOBWEBC1TSYmIvzr5NDZf-xmm49PMGqYP2nh-5Fk8,403
106
- scaler/io/ymq/pymod_ymq/io_context.h,sha256=03DcUlHCZyk78rNJmxRFgjxFOiQLWCq5FLm-gEENi0k,5014
107
- scaler/io/ymq/pymod_ymq/io_socket.h,sha256=1M7NhhyP3alEJ9fnS04cwY9Frz4b5gZ19qPCCGxSeLQ,9674
109
+ scaler/io/ymq/pymod_ymq/exception.h,sha256=BWIMRYsHFPHUe6hezS6qX8YMvwHM03aqJkwcjrYWbGE,3506
110
+ scaler/io/ymq/pymod_ymq/gil.h,sha256=rfmgZ-jEaCOg4zZDKVpVgZPj2qClPIIrSV0Zg99BWI8,449
111
+ scaler/io/ymq/pymod_ymq/io_context.h,sha256=YksNyyeEIElgdkrm-OzWLt-gvPgW5fIpXssxh5rG9mA,5302
112
+ scaler/io/ymq/pymod_ymq/io_socket.h,sha256=T72_Qdrdzwy-YZKAQYyvu1Sn3bklgPfG6xeDK2UUUrw,10333
108
113
  scaler/io/ymq/pymod_ymq/message.h,sha256=gqYKDnNCK9W1q0gte0pGfbmx119gQvcWBaJzIFdRsuc,3039
109
- scaler/io/ymq/pymod_ymq/python.h,sha256=wb0-WNF4occ4nDphSoUI47_OrfVPP72eLlGC_B59b7c,4284
114
+ scaler/io/ymq/pymod_ymq/python.h,sha256=dHM6dZG7zN-fIXqLApLuQ6M0rWnY1BZJFgbuVL8U9aU,4520
110
115
  scaler/io/ymq/pymod_ymq/ymq.cpp,sha256=LoxL5ViLK0zyWRSYfmZn0QO-0vLw3xVZrRQJ5rWtc4w,526
111
- scaler/io/ymq/pymod_ymq/ymq.h,sha256=p3cNnvgv8R1ThCBM56G-OlINWZsm1Xd0o14kpItG9gw,11892
116
+ scaler/io/ymq/pymod_ymq/ymq.h,sha256=EzNOf9O2yy-HtnJyGL7QzMu6UYz6kk3Nx2Cd9qR9rVg,11798
112
117
  scaler/io/ymq/third_party/concurrentqueue.h,sha256=yN268t8miyojar0bBBPIEjMI3DlHVZci2eufkDDA0FA,152819
113
118
  scaler/object_storage/CMakeLists.txt,sha256=qexi6sKNGieaRhKkO65kxdaQrKRY-8adYKlvc42aEew,1566
114
119
  scaler/object_storage/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -118,11 +123,11 @@ scaler/object_storage/io_helper.cpp,sha256=br6q-NaeJtP6H_RSfc-SqGzSeS-wDDBFSnOfq
118
123
  scaler/object_storage/io_helper.h,sha256=5dnhVau4oALdjuHhgk2NF1x2a6pNETDG08Z5YqzITq4,145
119
124
  scaler/object_storage/message.cpp,sha256=nOaLu--Q1UyRLLHZY_8obHtGEhSnPiSnMSbF5uO58lk,1738
120
125
  scaler/object_storage/message.h,sha256=8KCts7n36jys3PiX09-lPtfa6DjfHI_2hYvled9afG0,4208
121
- scaler/object_storage/object_manager.cpp,sha256=cxNv9vOkCC910hlF5JF0mOUwTho8ieA1RJgF_P4e3ho,3083
122
- scaler/object_storage/object_manager.h,sha256=TkxICR8_20I-tkHwnMO0VpLWkm24vOEabrmQG6hdnmQ,1696
123
- scaler/object_storage/object_storage_server.cpp,sha256=ZiMpLOakguD3p108OVRf0XQmsZtHN5tw5Fs46Pq0nwA,13794
124
- scaler/object_storage/object_storage_server.h,sha256=X8W4QFHgNUmBOsJ-JfADfMu9Z4pti8OFYyMR3C1Am1Q,4244
125
- scaler/object_storage/object_storage_server.so,sha256=yT_YsgQ9bWPfNunEl3boQoKwWCJ5AKIjmuoPd8Id6_4,762057
126
+ scaler/object_storage/object_manager.cpp,sha256=0QjT_Bjih5sEpV2U0yCHNC5PRUnyzMUohymg9A6oUsc,3322
127
+ scaler/object_storage/object_manager.h,sha256=8nz4lb6jmRqYpeRpRkNZDFvF3k1HoGhOO__IRsE2LkI,1803
128
+ scaler/object_storage/object_storage_server.cpp,sha256=ysEqpQteRcfw_fyuk4UgrXfJpmdwQvPvyRLbqx8JInM,15153
129
+ scaler/object_storage/object_storage_server.h,sha256=NX3mg8cElw3mBmJwCBK3tgI-HONiJBRumPwxXL494kA,4356
130
+ scaler/object_storage/object_storage_server.so,sha256=oNEBZIVgR4vmoh3_IBEWB66VKCrUFI4g9q-saMveMD8,766209
126
131
  scaler/object_storage/pymod_object_storage_server.cpp,sha256=D09p81wZF6WnV35I6od3iDhgktV20v82CRR_tQ90ROs,3811
127
132
  scaler/protocol/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
128
133
  scaler/protocol/introduction.md,sha256=G8oRzui4KmSlfFUu70y24tTmDmfEKBkog9tFVUn7G1U,5406
@@ -130,20 +135,20 @@ scaler/protocol/worker.md,sha256=o2Hh_HCooqrptpXcHGzuzUkO_o4NWOurp7ja-DQi5ho,105
130
135
  scaler/protocol/capnp/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
131
136
  scaler/protocol/capnp/_python.py,sha256=VfKp2UQBJHiW8Lh6sjQnmW4tl0BQenIPHKD05ALC_dk,284
132
137
  scaler/protocol/capnp/common.capnp,sha256=jKdRGp7P_32L3_1yC_7KjrFBg4eRAdsT7JfbyEQoZoo,1672
133
- scaler/protocol/capnp/message.capnp,sha256=IKGuV4f4U4EwXtrUENVSteLbgux0sVtQ2b-XVJlv2D4,4475
134
- scaler/protocol/capnp/object_storage.capnp,sha256=aXVgSPkKidiZEafpt4hLr6bVBZBrW6VizVEDCY65TKg,1498
138
+ scaler/protocol/capnp/message.capnp,sha256=eC0Fkwdb0TWgW4k3Wlk-Sz-5dVFQzhGoGwUbA3vUNY4,4529
139
+ scaler/protocol/capnp/object_storage.capnp,sha256=YFOMPggwqwZXRW-U5WUzR8kEFN-tNBrxppCWywGIiDI,1764
135
140
  scaler/protocol/capnp/status.capnp,sha256=Jr3fGv46CdhN-UmWAmLvNWaPUxcUulOActbA5rvrsa8,1359
136
141
  scaler/protocol/python/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
137
142
  scaler/protocol/python/common.py,sha256=8kFVkTCuI8tfa-1Owd3N8ek3fyLL48FhZWBrg9C8vc0,5108
138
- scaler/protocol/python/message.py,sha256=qroRJcQwHaiUQdAbu_Cd9Giw3MXpieUI49A0gmzXXBQ,21680
143
+ scaler/protocol/python/message.py,sha256=B4Axak0EbuPquwvZ4VjvZX2EAXT8ZEr8DBNWzNJaltA,22064
139
144
  scaler/protocol/python/mixins.py,sha256=BjGRDyjgezg6_3-68NO-E-0nhu20RQ8CJTyLZBCo9vo,238
140
145
  scaler/protocol/python/object_storage.py,sha256=gWmtwtAbUOEZUNooDpvU5jUvdfZGFuzY0ehSptAyH3w,3915
141
146
  scaler/protocol/python/status.py,sha256=u_5leag2vHhpbA4lw2U9FJyWC8_b7rnXPhK5FelGBwk,7808
142
147
  scaler/scheduler/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
143
- scaler/scheduler/scheduler.py,sha256=245tc_xAnmDr5E_g0aXWLvpr0ViiZNaHker2P74akiw,11212
148
+ scaler/scheduler/scheduler.py,sha256=JX-FR-CgtgfVp9Nw1mg-T7pPGXOdPiBkhLHJDYAfjXw,11163
144
149
  scaler/scheduler/allocate_policy/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
145
150
  scaler/scheduler/allocate_policy/allocate_policy.py,sha256=efBAR2bzkct3mRf94NLlYtVszdWLrm5CTWuyAD9LH-s,315
146
- scaler/scheduler/allocate_policy/capability_allocate_policy.py,sha256=DyQC9pVe_e11OYSLMe5NSr03gbtjb_TOWU49H9Ndd_k,11826
151
+ scaler/scheduler/allocate_policy/capability_allocate_policy.py,sha256=ya47keTt679fADdHyqPDohthx0aO2AG1LlIqx3lf0EU,11836
147
152
  scaler/scheduler/allocate_policy/even_load_allocate_policy.py,sha256=zzeRfbw7_SqZdQf7DC9Gf1CIA65DQL44q9K56pyEr8E,5906
148
153
  scaler/scheduler/allocate_policy/mixins.py,sha256=LKcG-B_Xb7WvueD59ZThEaLTD8yFwf3u9oi0wkLtN00,2229
149
154
  scaler/scheduler/controllers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -151,12 +156,18 @@ scaler/scheduler/controllers/balance_controller.py,sha256=b5HfiR0C4zu0NhXgEAQvaQ
151
156
  scaler/scheduler/controllers/client_controller.py,sha256=_BJbHEz7MPPMgb7vw8qwZYokFQPAjY5JOdO0sy5ZYHk,5262
152
157
  scaler/scheduler/controllers/config_controller.py,sha256=8YM4Ofg8biZLfkkQUEIhgnWBjOVp_5iYieNeavkt4zA,1064
153
158
  scaler/scheduler/controllers/graph_controller.py,sha256=RmqzLjZ8e5X2IZdcnQrbNBYcrCe-8oy1-RX64U6kCP4,17549
154
- scaler/scheduler/controllers/information_controller.py,sha256=TfSXsY5YXh8lMKrnJvG-qdeaLyZNGlYRFZOlhBkuy2k,3258
155
- scaler/scheduler/controllers/mixins.py,sha256=U4Oz1QOEeyedorl5NgEErkLbFxN49rlDh48yuBsRxJQ,6335
159
+ scaler/scheduler/controllers/information_controller.py,sha256=34BRJ6JzPrtE3QHn87uMnCtuW7_YILZjA9OLDCB7PkM,3318
160
+ scaler/scheduler/controllers/mixins.py,sha256=7zdcIln95MEOuv0hECT7uIXFmTwWcrCdx-7ES66BNNY,6149
156
161
  scaler/scheduler/controllers/object_controller.py,sha256=PNHiQ3-92jbbHwKjQ_YVbupmFbBhMJ5ilom1MxnRIm4,6173
157
- scaler/scheduler/controllers/scaling_controller.py,sha256=_vOt3joflF5GEKNfHKt7jiBL7_Kcuha5IG7YXJ4cMd0,3858
158
- scaler/scheduler/controllers/task_controller.py,sha256=67rAXc66h1NeL4-RcQLjI8FhZbJhBrTjxnkpltH4KgY,18061
162
+ scaler/scheduler/controllers/task_controller.py,sha256=9Rhenwqeqypb2uBpF7wCXOKur618O2ZmOTOmtzRezLw,18208
159
163
  scaler/scheduler/controllers/worker_controller.py,sha256=PT8ZIf8cs7FqNIDek6_g7L3dyiKStKydKANYB6aEu5s,6929
164
+ scaler/scheduler/controllers/scaling_policies/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
165
+ scaler/scheduler/controllers/scaling_policies/fixed_elastic.py,sha256=jJKpDFkGxhO4_cwA0rJohLtwEGvmVGte0HM5U46EZLM,6607
166
+ scaler/scheduler/controllers/scaling_policies/mixins.py,sha256=-j1YCJLNO5T7s4H3WvpDVLfBSGHzcN2V6k-yobI1rBc,279
167
+ scaler/scheduler/controllers/scaling_policies/null.py,sha256=Z15jvo2WoWUNLYw19GSE1uxXWILRRYB58seK8e39BCc,475
168
+ scaler/scheduler/controllers/scaling_policies/types.py,sha256=tGFq2HNWJoc06P5KKHzH3uq0LfjPtfkZpMcVjIxeTuM,159
169
+ scaler/scheduler/controllers/scaling_policies/utility.py,sha256=WWcCBzNL87gZr2ygKBIMKgWh0oFvI-K3PkAXUQozCSU,1146
170
+ scaler/scheduler/controllers/scaling_policies/vanilla.py,sha256=PdfdJzd2SlQ5CEXv7JHe0hAMzW3vUuYU0mnTFr_fPTQ,4253
160
171
  scaler/scheduler/object_usage/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
161
172
  scaler/scheduler/object_usage/object_tracker.py,sha256=cx7n-TsgvhXK7bVqeam0LW6C8vaOPwKLeIRHSzW6Cxs,4600
162
173
  scaler/scheduler/task/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -165,20 +176,20 @@ scaler/scheduler/task/task_state_manager.py,sha256=wrpLc-HsW7VzUTiNK8LsUPHxMrm8f
165
176
  scaler/ui/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
166
177
  scaler/ui/constants.py,sha256=GVljwcm14bTpEj5k0Cfoe5NFXxepGFZl3Rm-mSHoZ-A,167
167
178
  scaler/ui/live_display.py,sha256=TAOhD-RxMBoL_dqbXBmaYrjR25y-ETA2xu0EJ0YMvvk,4366
168
- scaler/ui/memory_window.py,sha256=MOb8TcJ52ui86TRiS5R-HMf4-Y5K0FAc5LxOGT4TmLg,5576
179
+ scaler/ui/memory_window.py,sha256=DbUclcU8lH6dlKxNavjCyKeMKlfK9uIHrIP6NDcXEUk,5498
169
180
  scaler/ui/setting_page.py,sha256=ii3UAtle_B4b61XJAmUThiNgEWkTs2PX-YboHoBplxs,1737
170
- scaler/ui/task_graph.py,sha256=DvLDWi28f3Bne0sP1yEa_b5JsCi1YMHKtIB_7UpvwTQ,15442
171
- scaler/ui/task_log.py,sha256=gL8--WzxwN4KSWUpeLPhBtplDOhM78cUBoT3YJHEfrU,2552
172
- scaler/ui/utility.py,sha256=AdXlU6wpxwbwIzASPg3hjTJTSEDYZ1-Q5afiHEQbXrY,1158
173
- scaler/ui/webui.py,sha256=e_AKdhEQMS8Jd1kqc45xbA2U40wgy2TgJ5XmRrRephA,4902
174
- scaler/ui/worker_processors.py,sha256=JAzrrDEQDmX0f88rh-F8dOam2UUdlDkGGa1ui4Ak7tk,3072
181
+ scaler/ui/task_graph.py,sha256=_yUfEy0AYghl3spUyZXVdb_9APwHK6_1fyZpif3JDDE,35972
182
+ scaler/ui/task_log.py,sha256=wKdZWLmhIk-Y2fKkMzxL891N9mAM6uw6fNGCAjZMrEc,3716
183
+ scaler/ui/utility.py,sha256=fTYwVO9gD7uGrzfAoZjnGV2pQdxePPbg0YxWxe6buBI,2102
184
+ scaler/ui/webui.py,sha256=JSrEzDSG8R1lN5_FA44jhPalNttKmX9EccqiP4hVc80,5178
185
+ scaler/ui/worker_processors.py,sha256=hDXx1RZYgSB8KLNSvybLQL9HDg3x6ZgXDUoRGl3kfzs,3415
175
186
  scaler/utility/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
176
187
  scaler/utility/debug.py,sha256=FKJZ0xyy9XFEzYB86H_Cfs-0Fd42oUr9rppY1Qd8Ikw,407
177
188
  scaler/utility/event_list.py,sha256=-ifYdr2IiLNRzY72l6iAdDpkg8Rgfz5YkRxqudSKPX4,1532
178
189
  scaler/utility/event_loop.py,sha256=BDKzbecbAfLWORGAIAiAG4KbObWCRnReD6t6o2IhIPE,1838
179
190
  scaler/utility/exceptions.py,sha256=vXV1fUebZ8tRFGqTEDM6O5LsL_vScDHNQ8ZezdjEiPk,532
180
191
  scaler/utility/formatter.py,sha256=QJUAxZWqWqrJb-MGRkHTeRHkJNRcpPg4Q_E5VOlhMsI,1008
181
- scaler/utility/identifiers.py,sha256=88rqhRupaw2YOux8TsVbsrhxoWPDAU4vj3ehSqiJukk,2868
192
+ scaler/utility/identifiers.py,sha256=EA41F2JRbJ5bhRJCZJ_ACF_JRnHNY8TFxvxvoeBBK1A,2803
182
193
  scaler/utility/many_to_many_dict.py,sha256=JLv3a3Wb6OcXT462exMZ_LsrizXWXUdQCz_WCTBV3bM,4641
183
194
  scaler/utility/mixins.py,sha256=0b4_tTc35J5Aa8Ac9hn5j6-OL6sLmgD-9xm24-C51YA,266
184
195
  scaler/utility/network_util.py,sha256=OeypHvDEHNlz-U7MucBDglyVg9LahLNsqwwpXjW-ot0,243
@@ -202,32 +213,34 @@ scaler/utility/queues/async_sorted_priority_queue.py,sha256=f4k1dO34LcJkq1OMLbI_
202
213
  scaler/utility/queues/indexed_queue.py,sha256=MLFkXWEZ8HaJC-gKZD9F9gf-oXL_lJ7O317FnTWFCuQ,3077
203
214
  scaler/worker/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
204
215
  scaler/worker/preload.py,sha256=gjkNx1IvRBk_bJeYCBN_tD6Vyw8n0LJbnI1O2qwZz18,3086
205
- scaler/worker/worker.py,sha256=Zj4kGey1FAgF7vzY6R0q2Xp48cJei4jh9IMyi9N2NDc,10937
216
+ scaler/worker/worker.py,sha256=Z8l4NhyinnjZsTdpeUbQII9sC9LoJzg2DMrVQlgNDKE,10986
206
217
  scaler/worker/agent/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
207
- scaler/worker/agent/heartbeat_manager.py,sha256=R-pWuH8xixqHsANGVv_pFkJtFie4S2VNHlFa4olWfJA,4730
208
- scaler/worker/agent/mixins.py,sha256=fhTytvyBHB3ydIy-J1_q4bvp4fsCTUPAU2ZDC5rCQFI,4067
209
- scaler/worker/agent/processor_holder.py,sha256=TZoTG6C7NkSmYkg7MfVEmK2AIxaRBqLVp1ZMZwNlfuE,5065
210
- scaler/worker/agent/processor_manager.py,sha256=BBBf7DirMvCgfVXzBRgyX76QE8lFnsjIW3KL465bpo0,13375
218
+ scaler/worker/agent/heartbeat_manager.py,sha256=9eeFDYuYcn6teuIRIcA3LJts8VN-DsGiJR4N0QgAHWY,4793
219
+ scaler/worker/agent/mixins.py,sha256=ckpb2tjLW6mFY3S_tFkUzvKi2dkCb_datKWLJqYDNDs,4074
220
+ scaler/worker/agent/processor_holder.py,sha256=Jlu2o0tArrRo5RnympYiF5EaSPNbLPceg3nbx2d2fu4,5096
221
+ scaler/worker/agent/processor_manager.py,sha256=jso_12HDEt5CvGlVslH_w_B2C5YNmbPm4LKk_zHEcjk,13397
211
222
  scaler/worker/agent/profiling_manager.py,sha256=77qF_b8LhfKszQ5eNZiUUc9FqcBCH5Uo1jpEklbCExg,3977
212
223
  scaler/worker/agent/task_manager.py,sha256=7X1J9MW8Ib58t1dBb84yhkZVo60zezKn-Z5M2oF-RoA,6149
213
224
  scaler/worker/agent/timeout_manager.py,sha256=HAUBUOhFh8QTeuYTrhInr0mX1O12PGbODBkkUtcLReQ,602
214
225
  scaler/worker/agent/processor/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
215
226
  scaler/worker/agent/processor/object_cache.py,sha256=6IlU1hAV3ZgapNj9UMXJI_eN7uwVbCvVh9Vhlv6arEs,3857
216
- scaler/worker/agent/processor/processor.py,sha256=DZgJEvUXKYbpqCO72rCAhYaTJa-ZilShPe_ympy1ksc,11104
227
+ scaler/worker/agent/processor/processor.py,sha256=6H26lFUd5QSc7XI-w8BVYlA_5oa06bL2UeeTja6T18A,11133
217
228
  scaler/worker/agent/processor/streaming_buffer.py,sha256=aOBfbC3VOveYvpR6HIqBcTCXPc--dY0-q1IGIAXeI1k,863
218
229
  scaler/worker_adapter/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
219
- scaler/worker_adapter/native.py,sha256=FYlw7TFY5zn2re-9bJ5SnTCAAsx7I_4HEbRJIkRlz9E,6179
230
+ scaler/worker_adapter/common.py,sha256=6i6rhgoOioDDkBKGFCsrTTlI3OJnc3r-cKCNoR_GLls,636
231
+ scaler/worker_adapter/ecs.py,sha256=KNQhOkzS4xTTtqmmWhK_PZtngPtqErXbd6akek6hYIo,11596
232
+ scaler/worker_adapter/native.py,sha256=yFgjCwmOmWRzKrWgaRswtpUMOTKQHEN1L1x2DdX58js,6551
220
233
  scaler/worker_adapter/symphony/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
221
234
  scaler/worker_adapter/symphony/callback.py,sha256=ofy3rstxgezT8uT7Y1B9im-CwMPGlJHCd1EuHuViGqw,1534
222
- scaler/worker_adapter/symphony/heartbeat_manager.py,sha256=FjTqllDCTUeNaUD7sEyT61IhYxsXMWiBlF-FO2dOZzY,3201
235
+ scaler/worker_adapter/symphony/heartbeat_manager.py,sha256=PukyrkU7Ea8M-Icgx3KHhFNaKmizj7g71iFzj-N1TZo,3264
223
236
  scaler/worker_adapter/symphony/message.py,sha256=HOonEASua8e-uwpPVxprjyl1rrYmFJaSd8FaobbK5VE,688
224
- scaler/worker_adapter/symphony/task_manager.py,sha256=phgx8dtAv-5ynsvsmG4DKcSlENz4b340FE6LDUWyMwo,12139
225
- scaler/worker_adapter/symphony/worker.py,sha256=VIDOoqVXbwrjHYN3lghbQpEIuCbVJUgiYsBknrI-0oc,7957
226
- scaler/worker_adapter/symphony/worker_adapter.py,sha256=eAAD1O0Uz1pjEdQPPl2fd8kyaF6q-aqCRrg48k1ocUU,5455
227
- opengris_scaler-1.12.13.dist-info/METADATA,sha256=ETTF9ysLYGYoViBW74q-0f5eprUiesTpR2y7hl0ijwk,27234
228
- opengris_scaler-1.12.13.dist-info/WHEEL,sha256=EqKHnADcarCZOCvJim6s_IBXC4pIENJgE0dpKozl3as,117
229
- opengris_scaler-1.12.13.dist-info/entry_points.txt,sha256=KROw4kj4Z6p8YuOgpOFt5spHskm87A7Z-fOOffT4tVU,446
230
- opengris_scaler-1.12.13.dist-info/RECORD,,
231
- opengris_scaler-1.12.13.dist-info/licenses/LICENSE,sha256=xudC0jta6OXJkSHiLzzQQU50HIwSo0G97exO280dtR8,11345
232
- opengris_scaler-1.12.13.dist-info/licenses/LICENSE.spdx,sha256=i49Qe6AmXxuvocKyExEFduvdh-NQ5YuxdHs515G8VOQ,225
233
- opengris_scaler-1.12.13.dist-info/licenses/NOTICE,sha256=JUHdG2ssq0nP2QsqPM8X2eJhfJhK_lemIvDBqBRXrMo,286
237
+ scaler/worker_adapter/symphony/task_manager.py,sha256=C-qAn0dH57rEEIjnqV8KLKF48bq0dAKSomgS7ITS1c0,12181
238
+ scaler/worker_adapter/symphony/worker.py,sha256=0GGHo-7uWDISvJKw94r1wfAQr-5_esVtoRXa1jdFVyo,7932
239
+ scaler/worker_adapter/symphony/worker_adapter.py,sha256=bFQ_LkAg8wqNzzQkBZRAVvzlNF8RnIWtWfnQBg7KJ9U,5732
240
+ opengris_scaler-1.12.20.dist-info/METADATA,sha256=-zI7YAkSb3Vk3KL5uR98Ghd9lXLhc3b_PuHapTObYVY,27422
241
+ opengris_scaler-1.12.20.dist-info/WHEEL,sha256=EqKHnADcarCZOCvJim6s_IBXC4pIENJgE0dpKozl3as,117
242
+ opengris_scaler-1.12.20.dist-info/entry_points.txt,sha256=1nvHjpnx1XRfxDTeR9MzO30-jsBHAHrd2YRFp2FvtwE,518
243
+ opengris_scaler-1.12.20.dist-info/RECORD,,
244
+ opengris_scaler-1.12.20.dist-info/licenses/LICENSE,sha256=xudC0jta6OXJkSHiLzzQQU50HIwSo0G97exO280dtR8,11345
245
+ opengris_scaler-1.12.20.dist-info/licenses/LICENSE.spdx,sha256=i49Qe6AmXxuvocKyExEFduvdh-NQ5YuxdHs515G8VOQ,225
246
+ opengris_scaler-1.12.20.dist-info/licenses/NOTICE,sha256=JUHdG2ssq0nP2QsqPM8X2eJhfJhK_lemIvDBqBRXrMo,286
@@ -6,4 +6,5 @@ scaler_ui = scaler.entry_points.webui:main
6
6
  scaler_object_storage_server = scaler.entry_points.object_storage_server:main
7
7
  scaler_worker_adapter_native = scaler.entry_points.worker_adapter_native:main
8
8
  scaler_worker_adapter_symphony = scaler.entry_points.worker_adapter_symphony:main
9
+ scaler_worker_adapter_ecs = scaler.entry_points.worker_adapter_ecs:main
9
10
 
@@ -13,6 +13,7 @@ from scaler.client.agent.heartbeat_manager import ClientHeartbeatManager
13
13
  from scaler.client.agent.object_manager import ClientObjectManager
14
14
  from scaler.client.agent.task_manager import ClientTaskManager
15
15
  from scaler.client.serializer.mixins import Serializer
16
+ from scaler.config.types.zmq import ZMQConfig
16
17
  from scaler.io.async_connector import ZMQAsyncConnector
17
18
  from scaler.io.mixins import AsyncConnector
18
19
  from scaler.protocol.python.common import ObjectStorageAddress
@@ -32,7 +33,6 @@ from scaler.protocol.python.mixins import Message
32
33
  from scaler.utility.event_loop import create_async_loop_routine
33
34
  from scaler.utility.exceptions import ClientCancelledException, ClientQuitException, ClientShutdownException
34
35
  from scaler.utility.identifiers import ClientID
35
- from scaler.config.types.zmq import ZMQConfig
36
36
 
37
37
 
38
38
  class ClientAgent(threading.Thread):
@@ -59,7 +59,7 @@ class ClientAgent(threading.Thread):
59
59
  self._client_agent_address = client_agent_address
60
60
  self._scheduler_address = scheduler_address
61
61
  self._context = context
62
- self._storage_address: Future[ObjectStorageAddress] = Future()
62
+ self._object_storage_address: Future[ObjectStorageAddress] = Future()
63
63
 
64
64
  self._future_manager = future_manager
65
65
 
@@ -89,7 +89,7 @@ class ClientAgent(threading.Thread):
89
89
  def __initialize(self):
90
90
  self._disconnect_manager = ClientDisconnectManager()
91
91
  self._heartbeat_manager = ClientHeartbeatManager(
92
- death_timeout_seconds=self._timeout_seconds, storage_address_future=self._storage_address
92
+ death_timeout_seconds=self._timeout_seconds, storage_address_future=self._object_storage_address
93
93
  )
94
94
  self._object_manager = ClientObjectManager(identity=self._identity)
95
95
  self._task_manager = ClientTaskManager()
@@ -118,9 +118,9 @@ class ClientAgent(threading.Thread):
118
118
  self.__initialize()
119
119
  self.__run_loop()
120
120
 
121
- def get_storage_address(self) -> ObjectStorageAddress:
121
+ def get_object_storage_address(self) -> ObjectStorageAddress:
122
122
  """Returns the object storage address, or block until it receives it."""
123
- return self._storage_address.result()
123
+ return self._object_storage_address.result()
124
124
 
125
125
  async def __on_receive_from_client(self, message: Message):
126
126
  if isinstance(message, ClientDisconnect):
@@ -194,8 +194,8 @@ class ClientAgent(threading.Thread):
194
194
  if exception is None:
195
195
  return
196
196
 
197
- if not self._storage_address.done():
198
- self._storage_address.set_exception(exception)
197
+ if not self._object_storage_address.done():
198
+ self._object_storage_address.set_exception(exception)
199
199
 
200
200
  if isinstance(exception, asyncio.CancelledError):
201
201
  logging.error("ClientAgent: async. loop cancelled")
@@ -15,7 +15,7 @@ from scaler.utility.mixins import Looper
15
15
  class ClientHeartbeatManager(Looper, HeartbeatManager):
16
16
  def __init__(self, death_timeout_seconds: int, storage_address_future: Future):
17
17
  self._death_timeout_seconds = death_timeout_seconds
18
- self._storage_address = storage_address_future
18
+ self._object_storage_address = storage_address_future
19
19
 
20
20
  self._process = psutil.Process()
21
21
 
@@ -50,10 +50,10 @@ class ClientHeartbeatManager(Looper, HeartbeatManager):
50
50
  self._latency_us = int(((time.time_ns() - self._start_timestamp_ns) / 2) // 1_000)
51
51
  self._start_timestamp_ns = 0
52
52
 
53
- if self._storage_address.done():
53
+ if self._object_storage_address.done():
54
54
  return
55
55
 
56
- self._storage_address.set_result(heartbeat.object_storage_address())
56
+ self._object_storage_address.set_result(heartbeat.object_storage_address())
57
57
 
58
58
  async def routine(self):
59
59
  if time.time() - self._last_scheduler_contact > self._death_timeout_seconds:
@@ -69,6 +69,6 @@ class ClientHeartbeatManager(Looper, HeartbeatManager):
69
69
  await self.send_heartbeat()
70
70
  self._start_timestamp_ns = time.time_ns()
71
71
 
72
- def get_storage_address(self) -> ObjectStorageAddress:
72
+ def get_object_storage_address(self) -> ObjectStorageAddress:
73
73
  """Returns the object storage configuration, or block until it receives it."""
74
- return self._storage_address.result()
74
+ return self._object_storage_address.result()
scaler/client/client.py CHANGED
@@ -17,9 +17,10 @@ from scaler.client.object_reference import ObjectReference
17
17
  from scaler.client.serializer.default import DefaultSerializer
18
18
  from scaler.client.serializer.mixins import Serializer
19
19
  from scaler.config.defaults import DEFAULT_CLIENT_TIMEOUT_SECONDS, DEFAULT_HEARTBEAT_INTERVAL_SECONDS
20
+ from scaler.config.types.zmq import ZMQConfig, ZMQType
20
21
  from scaler.io.mixins import SyncConnector, SyncObjectStorageConnector
21
22
  from scaler.io.sync_connector import ZMQSyncConnector
22
- from scaler.io.sync_object_storage_connector import PySyncObjectStorageConnector
23
+ from scaler.io.utility import create_sync_object_storage_connector
23
24
  from scaler.protocol.python.message import ClientDisconnect, ClientShutdownResponse, GraphTask, Task
24
25
  from scaler.utility.exceptions import ClientQuitException, MissingObjects
25
26
  from scaler.utility.graph.optimization import cull_graph
@@ -27,7 +28,6 @@ from scaler.utility.graph.topological_sorter import TopologicalSorter
27
28
  from scaler.utility.identifiers import ClientID, ObjectID, TaskID
28
29
  from scaler.utility.metadata.profile_result import ProfileResult
29
30
  from scaler.utility.metadata.task_flags import TaskFlags, retrieve_task_flags_from_task
30
- from scaler.config.types.zmq import ZMQConfig, ZMQType
31
31
  from scaler.worker.agent.processor.processor import Processor
32
32
 
33
33
 
@@ -119,11 +119,11 @@ class Client:
119
119
  logging.info(f"ScalerClient: connect to scheduler at {self._scheduler_address}")
120
120
 
121
121
  # Blocks until the agent receives the object storage address
122
- self._storage_address = self._agent.get_storage_address()
122
+ self._object_storage_address = self._agent.get_object_storage_address()
123
123
 
124
- logging.info(f"ScalerClient: connect to object storage at {self._storage_address}")
125
- self._connector_storage: SyncObjectStorageConnector = PySyncObjectStorageConnector(
126
- self._storage_address.host, self._storage_address.port
124
+ logging.info(f"ScalerClient: connect to object storage at {self._object_storage_address}")
125
+ self._connector_storage: SyncObjectStorageConnector = create_sync_object_storage_connector(
126
+ self._object_storage_address.host, self._object_storage_address.port
127
127
  )
128
128
 
129
129
  self._object_buffer = ObjectBuffer(
scaler/cluster/cluster.py CHANGED
@@ -4,9 +4,9 @@ import os
4
4
  import signal
5
5
  from typing import Dict, List, Optional, Tuple
6
6
 
7
- from scaler.utility.logging.utility import setup_logger
8
7
  from scaler.config.types.object_storage_server import ObjectStorageConfig
9
8
  from scaler.config.types.zmq import ZMQConfig
9
+ from scaler.utility.logging.utility import setup_logger
10
10
  from scaler.worker.worker import Worker
11
11
 
12
12
 
@@ -15,7 +15,7 @@ class Cluster(multiprocessing.get_context("spawn").Process): # type: ignore[mis
15
15
  def __init__(
16
16
  self,
17
17
  address: ZMQConfig,
18
- storage_address: Optional[ObjectStorageConfig],
18
+ object_storage_address: Optional[ObjectStorageConfig],
19
19
  preload: Optional[str],
20
20
  worker_io_threads: int,
21
21
  worker_names: List[str],
@@ -35,7 +35,7 @@ class Cluster(multiprocessing.get_context("spawn").Process): # type: ignore[mis
35
35
  multiprocessing.Process.__init__(self, name="WorkerMaster")
36
36
 
37
37
  self._address = address
38
- self._storage_address = storage_address
38
+ self._object_storage_address = object_storage_address
39
39
  self._preload = preload
40
40
  self._worker_io_threads = worker_io_threads
41
41
  self._worker_names = worker_names
@@ -83,7 +83,7 @@ class Cluster(multiprocessing.get_context("spawn").Process): # type: ignore[mis
83
83
  event_loop=self._event_loop,
84
84
  name=name,
85
85
  address=self._address,
86
- storage_address=self._storage_address,
86
+ object_storage_address=self._object_storage_address,
87
87
  capabilities=self._per_worker_capabilities,
88
88
  preload=self._preload,
89
89
  io_threads=self._worker_io_threads,