opengris-scaler 1.12.8__cp311-cp311-musllinux_1_2_x86_64.whl → 1.12.9__cp311-cp311-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.

@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: opengris-scaler
3
- Version: 1.12.8
3
+ Version: 1.12.9
4
4
  Summary: OpenGRIS Scaler Distribution Framework
5
5
  Author-Email: Citi <opensource@citi.com>
6
6
  License: Apache 2.0
@@ -5,7 +5,7 @@ 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=ztdTg8VJxMY0ZJakUwlJTlvyFTAyK5iQgDBH6e22UvU,7
8
+ scaler/version.txt,sha256=BapNVsomB8f82_4o6SME3mmtU8l5mwsJj9b5hMy6ADk,7
9
9
  scaler/client/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
10
10
  scaler/client/client.py,sha256=uyYVNYhLaX3H-Aqecf-yHSqvkKnWeDzpTr2atNUUv0E,24373
11
11
  scaler/client/future.py,sha256=fOl5g4Is4E5jtvO0kmRk4uUs_eUjSjMmyniYhWMAH4w,10041
@@ -120,10 +120,10 @@ scaler/object_storage/message.cpp,sha256=nOaLu--Q1UyRLLHZY_8obHtGEhSnPiSnMSbF5uO
120
120
  scaler/object_storage/message.h,sha256=8KCts7n36jys3PiX09-lPtfa6DjfHI_2hYvled9afG0,4208
121
121
  scaler/object_storage/object_manager.cpp,sha256=cxNv9vOkCC910hlF5JF0mOUwTho8ieA1RJgF_P4e3ho,3083
122
122
  scaler/object_storage/object_manager.h,sha256=TkxICR8_20I-tkHwnMO0VpLWkm24vOEabrmQG6hdnmQ,1696
123
- scaler/object_storage/object_storage_server.cpp,sha256=iAQDDygo-K7DWswC-DPLuVQnCLyMc0wIoXoLLmFexDA,13316
124
- scaler/object_storage/object_storage_server.h,sha256=e3bYcI-OlAovT1mOFID3o2RdMD_bZfhyHcAGIbASzfI,4174
125
- scaler/object_storage/object_storage_server.so,sha256=laDXbaHgqKuTXx9S2cFLlb3JBCV0uUNRnK0iT5blm00,757705
126
- scaler/object_storage/pymod_object_storage_server.cpp,sha256=Braun1TZrK1QjKErF4ftbCbnDHR8rWVLYgZlJETeGek,3482
123
+ scaler/object_storage/object_storage_server.cpp,sha256=lJ863--NU6yzcUJAL4EQ2yQjDBekOaP0dYU581hl_Nc,13635
124
+ scaler/object_storage/object_storage_server.h,sha256=11BD3U9NnLcqx8hFXJCnTjvQEgyirj-0LKlTYgtzaXI,4277
125
+ scaler/object_storage/object_storage_server.so,sha256=f4XVDHXLYKf-1hN-CcllMh9I5ULNCWhQBS_y5YnjtII,766161
126
+ scaler/object_storage/pymod_object_storage_server.cpp,sha256=D09p81wZF6WnV35I6od3iDhgktV20v82CRR_tQ90ROs,3811
127
127
  scaler/protocol/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
128
128
  scaler/protocol/introduction.md,sha256=G8oRzui4KmSlfFUu70y24tTmDmfEKBkog9tFVUn7G1U,5406
129
129
  scaler/protocol/worker.md,sha256=o2Hh_HCooqrptpXcHGzuzUkO_o4NWOurp7ja-DQi5ho,10503
@@ -224,10 +224,10 @@ scaler/worker_adapter/symphony/message.py,sha256=HOonEASua8e-uwpPVxprjyl1rrYmFJa
224
224
  scaler/worker_adapter/symphony/task_manager.py,sha256=phgx8dtAv-5ynsvsmG4DKcSlENz4b340FE6LDUWyMwo,12139
225
225
  scaler/worker_adapter/symphony/worker.py,sha256=VIDOoqVXbwrjHYN3lghbQpEIuCbVJUgiYsBknrI-0oc,7957
226
226
  scaler/worker_adapter/symphony/worker_adapter.py,sha256=eAAD1O0Uz1pjEdQPPl2fd8kyaF6q-aqCRrg48k1ocUU,5455
227
- opengris_scaler-1.12.8.dist-info/METADATA,sha256=jeFAZLMo6b4s-xyMC1_YXh5oMdQH8c13gHEPN37jeS8,26987
228
- opengris_scaler-1.12.8.dist-info/WHEEL,sha256=Y3GjFou-TcvYG8r2iXbNPPSJEiD3r1Fl3pPy2E65s_w,117
229
- opengris_scaler-1.12.8.dist-info/entry_points.txt,sha256=KROw4kj4Z6p8YuOgpOFt5spHskm87A7Z-fOOffT4tVU,446
230
- opengris_scaler-1.12.8.dist-info/RECORD,,
231
- opengris_scaler-1.12.8.dist-info/licenses/LICENSE,sha256=xudC0jta6OXJkSHiLzzQQU50HIwSo0G97exO280dtR8,11345
232
- opengris_scaler-1.12.8.dist-info/licenses/LICENSE.spdx,sha256=i49Qe6AmXxuvocKyExEFduvdh-NQ5YuxdHs515G8VOQ,225
233
- opengris_scaler-1.12.8.dist-info/licenses/NOTICE,sha256=JUHdG2ssq0nP2QsqPM8X2eJhfJhK_lemIvDBqBRXrMo,286
227
+ opengris_scaler-1.12.9.dist-info/METADATA,sha256=Yk5bpbJorqpYauwfQ26S-BG7KHYEexvon0rWodbQrp0,26987
228
+ opengris_scaler-1.12.9.dist-info/WHEEL,sha256=Y3GjFou-TcvYG8r2iXbNPPSJEiD3r1Fl3pPy2E65s_w,117
229
+ opengris_scaler-1.12.9.dist-info/entry_points.txt,sha256=KROw4kj4Z6p8YuOgpOFt5spHskm87A7Z-fOOffT4tVU,446
230
+ opengris_scaler-1.12.9.dist-info/RECORD,,
231
+ opengris_scaler-1.12.9.dist-info/licenses/LICENSE,sha256=xudC0jta6OXJkSHiLzzQQU50HIwSo0G97exO280dtR8,11345
232
+ opengris_scaler-1.12.9.dist-info/licenses/LICENSE.spdx,sha256=i49Qe6AmXxuvocKyExEFduvdh-NQ5YuxdHs515G8VOQ,225
233
+ opengris_scaler-1.12.9.dist-info/licenses/NOTICE,sha256=JUHdG2ssq0nP2QsqPM8X2eJhfJhK_lemIvDBqBRXrMo,286
@@ -29,7 +29,8 @@ void ObjectStorageServer::run(
29
29
  ObjectStorageServer::Identity identity,
30
30
  std::string log_level,
31
31
  std::string log_format,
32
- std::vector<std::string> log_paths)
32
+ std::vector<std::string> log_paths,
33
+ std::function<bool()> running)
33
34
  {
34
35
  _logger = scaler::ymq::Logger(log_format, std::move(log_paths), scaler::ymq::Logger::stringToLogLevel(log_level));
35
36
 
@@ -44,7 +45,7 @@ void ObjectStorageServer::run(
44
45
 
45
46
  _logger.log(scaler::ymq::Logger::LoggingLevel::info, "ObjectStorageServer: started");
46
47
 
47
- processRequests();
48
+ processRequests(running);
48
49
 
49
50
  _ioContext.removeIOSocket(_ioSocket);
50
51
  } catch (const std::exception& e) {
@@ -117,7 +118,7 @@ void ObjectStorageServer::closeServerReadyFds()
117
118
  }
118
119
  }
119
120
 
120
- void ObjectStorageServer::processRequests()
121
+ void ObjectStorageServer::processRequests(std::function<bool()> running)
121
122
  {
122
123
  using namespace std::chrono_literals;
123
124
  Identity lastMessageIdentity;
@@ -134,7 +135,13 @@ void ObjectStorageServer::processRequests()
134
135
  }
135
136
  });
136
137
 
137
- auto maybeMessage = ymq::syncRecvMessage(_ioSocket);
138
+ auto maybeMessageFuture = ymq::futureRecvMessage(_ioSocket);
139
+ while (maybeMessageFuture.wait_for(100ms) == std::future_status::timeout) {
140
+ if (!running()) {
141
+ return;
142
+ }
143
+ }
144
+ auto maybeMessage = maybeMessageFuture.get();
138
145
 
139
146
  if (!maybeMessage) {
140
147
  auto error = maybeMessage.error();
@@ -35,7 +35,8 @@ public:
35
35
  Identity identity = "ObjectStorageServer",
36
36
  std::string log_level = "INFO",
37
37
  std::string log_format = "%(levelname)s: %(message)s",
38
- std::vector<std::string> log_paths = {"/dev/stdout"});
38
+ std::vector<std::string> log_paths = {"/dev/stdout"},
39
+ std::function<bool()> running = []() { return true; });
39
40
 
40
41
  void waitUntilReady();
41
42
 
@@ -78,7 +79,7 @@ private:
78
79
 
79
80
  void closeServerReadyFds();
80
81
 
81
- void processRequests();
82
+ void processRequests(std::function<bool()> stopCondition);
82
83
 
83
84
  void processSetRequest(std::shared_ptr<Client> client, std::pair<ObjectRequestHeader, Bytes> request);
84
85
 
@@ -1,6 +1,8 @@
1
1
  #define PY_SSIZE_T_CLEAN
2
2
  #include <Python.h>
3
+ #include <pyerrors.h>
3
4
 
5
+ #include "scaler/io/ymq/pymod_ymq/gil.h"
4
6
  #include "scaler/object_storage/object_storage_server.h"
5
7
 
6
8
  extern "C" {
@@ -52,10 +54,19 @@ static PyObject* PyObjectStorageServerRun(PyObject* self, PyObject* args)
52
54
  logging_paths.push_back(PyUnicode_AsUTF8(path_obj));
53
55
  }
54
56
 
57
+ auto running = []() -> bool {
58
+ AcquireGIL gil;
59
+ (void)gil;
60
+ return PyErr_CheckSignals() == 0;
61
+ };
62
+
55
63
  ((PyObjectStorageServer*)self)
56
- ->server.run(addr, std::to_string(port), identity, log_level, log_format, std::move(logging_paths));
64
+ ->server.run(
65
+ addr, std::to_string(port), identity, log_level, log_format, std::move(logging_paths), std::move(running));
57
66
 
58
- Py_RETURN_NONE;
67
+ // TODO: Ideally, run should return a bool and we return failure with nullptr.
68
+ return nullptr;
69
+ // Py_RETURN_NONE;
59
70
  }
60
71
 
61
72
  static PyObject* PyObjectStorageServerWaitUntilReady(PyObject* self, [[maybe_unused]] PyObject* args)
scaler/version.txt CHANGED
@@ -1 +1 @@
1
- 1.12.8
1
+ 1.12.9