jetstream-api 0.6.1__tar.gz → 0.6.2__tar.gz
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.
- {jetstream_api-0.6.1 → jetstream_api-0.6.2}/PKG-INFO +1 -1
- {jetstream_api-0.6.1 → jetstream_api-0.6.2}/ilink/__init__.py +1 -1
- {jetstream_api-0.6.1 → jetstream_api-0.6.2}/ilink/properties.py +33 -2
- {jetstream_api-0.6.1 → jetstream_api-0.6.2}/jetstream_api.egg-info/PKG-INFO +1 -1
- {jetstream_api-0.6.1 → jetstream_api-0.6.2}/pyproject.toml +1 -1
- {jetstream_api-0.6.1 → jetstream_api-0.6.2}/LICENSE.txt +0 -0
- {jetstream_api-0.6.1 → jetstream_api-0.6.2}/README.md +0 -0
- {jetstream_api-0.6.1 → jetstream_api-0.6.2}/ilink/admin.py +0 -0
- {jetstream_api-0.6.1 → jetstream_api-0.6.2}/ilink/admintopic.py +0 -0
- {jetstream_api-0.6.1 → jetstream_api-0.6.2}/ilink/common.py +0 -0
- {jetstream_api-0.6.1 → jetstream_api-0.6.2}/ilink/connectivity.py +0 -0
- {jetstream_api-0.6.1 → jetstream_api-0.6.2}/ilink/exception.py +0 -0
- {jetstream_api-0.6.1 → jetstream_api-0.6.2}/ilink/msg.py +0 -0
- {jetstream_api-0.6.1 → jetstream_api-0.6.2}/ilink/pattern.py +0 -0
- {jetstream_api-0.6.1 → jetstream_api-0.6.2}/ilink/producer.py +0 -0
- {jetstream_api-0.6.1 → jetstream_api-0.6.2}/ilink/py.typed +0 -0
- {jetstream_api-0.6.1 → jetstream_api-0.6.2}/ilink/qmgr.py +0 -0
- {jetstream_api-0.6.1 → jetstream_api-0.6.2}/ilink/topic.py +0 -0
- {jetstream_api-0.6.1 → jetstream_api-0.6.2}/ilink/util.py +0 -0
- {jetstream_api-0.6.1 → jetstream_api-0.6.2}/jetstream_api.egg-info/SOURCES.txt +0 -0
- {jetstream_api-0.6.1 → jetstream_api-0.6.2}/jetstream_api.egg-info/dependency_links.txt +0 -0
- {jetstream_api-0.6.1 → jetstream_api-0.6.2}/jetstream_api.egg-info/requires.txt +0 -0
- {jetstream_api-0.6.1 → jetstream_api-0.6.2}/jetstream_api.egg-info/top_level.txt +0 -0
- {jetstream_api-0.6.1 → jetstream_api-0.6.2}/setup.cfg +0 -0
- {jetstream_api-0.6.1 → jetstream_api-0.6.2}/tests/test_example.py +0 -0
|
@@ -28,6 +28,9 @@ def _format_millis(value: int, fmt: str) -> str:
|
|
|
28
28
|
|
|
29
29
|
# 구엔진(rev 3283 미만)의 StorageVolumeMonitor ForceReloadSize 기본값.
|
|
30
30
|
LEGACY_FORCE_RELOAD_SIZE = 1048576
|
|
31
|
+
# 구엔진(6.3.x)의 TCPListener SessionPerThread 기본값.
|
|
32
|
+
# 0 이면 imqlsr 가 nSessionCnt / nSessionPerThread 에서 0 나눗셈으로 죽는다.
|
|
33
|
+
LEGACY_SESSION_PER_THREAD = 10
|
|
31
34
|
|
|
32
35
|
def _spec_maxlen(n):
|
|
33
36
|
"""``n`` 바이트 이하 문자열 규칙."""
|
|
@@ -2479,6 +2482,7 @@ class ILQmgrProperty(_AutoAccessor):
|
|
|
2479
2482
|
self.volumeMonitorInterval = 10
|
|
2480
2483
|
self.volumeMonitorSizeLimit = 10485760
|
|
2481
2484
|
self._volumeTailRaw = None
|
|
2485
|
+
self._sessionPerThreadRaw = None
|
|
2482
2486
|
self.logLevelSystem = 4
|
|
2483
2487
|
self.logFileSizeSystem = 4194304
|
|
2484
2488
|
self.logFileCountSystem = 5
|
|
@@ -2628,6 +2632,11 @@ class ILQmgrProperty(_AutoAccessor):
|
|
|
2628
2632
|
offset += 2
|
|
2629
2633
|
self.aclType = ba_pick_int(ba, offset, 2)
|
|
2630
2634
|
offset += 2
|
|
2635
|
+
# v6.3.4 에서 async 를 없애며 sessionPerThread 를 뺐지만
|
|
2636
|
+
# **구엔진(6.3.x)에는 실재하는 필드**다. 0 을 보내면 imqlsr 가
|
|
2637
|
+
# nSessionCnt / nSessionPerThread 에서 죽는다(ManagerListener.h:129,
|
|
2638
|
+
# SIGFPE - 6.3.1 실측). 원본을 보관해 되돌려 쓴다.
|
|
2639
|
+
self._sessionPerThreadRaw = bytes(ba[offset:offset + 10])
|
|
2631
2640
|
offset += 10
|
|
2632
2641
|
self.deadLetterQueueName = ba_pick_string(ba, offset, 32)
|
|
2633
2642
|
offset += 32
|
|
@@ -2692,7 +2701,14 @@ class ILQmgrProperty(_AutoAccessor):
|
|
|
2692
2701
|
offset += 10
|
|
2693
2702
|
ba_merge(self.recvWaitTimeout, ba, offset)
|
|
2694
2703
|
offset += 10
|
|
2695
|
-
|
|
2704
|
+
# v6.3.4 에서 async 를 없애며 acceptPoolSize/eventPoolSize 를 뺐지만
|
|
2705
|
+
# 구엔진(6.3.x)은 이 두 필드를 읽고 1~9 로 검증한다. 0 을 보내면
|
|
2706
|
+
# MIMQE_INVALID_ARGUMENT (AcceptPoolSize : 0) 로 거부된다(6.3.1 실측).
|
|
2707
|
+
# 자바는 v1.5.2 에서 같은 이유로 기본값 1 을 되살렸다 - 그것과 맞춘다.
|
|
2708
|
+
ba_merge(1, ba, offset)
|
|
2709
|
+
offset += 10
|
|
2710
|
+
ba_merge(1, ba, offset)
|
|
2711
|
+
offset += 10
|
|
2696
2712
|
ba_merge(self.volumeMonitorInterval, ba, offset)
|
|
2697
2713
|
offset += 10
|
|
2698
2714
|
ba_merge(self.volumeMonitorSizeLimit, ba, offset)
|
|
@@ -2738,6 +2754,8 @@ class ILQmgrProperty(_AutoAccessor):
|
|
|
2738
2754
|
offset += 2
|
|
2739
2755
|
ba_merge(self.aclType, ba, offset)
|
|
2740
2756
|
offset += 2
|
|
2757
|
+
# 구엔진에만 있는 sessionPerThread 자리 - 0 을 보내면 큐관리자가 죽는다
|
|
2758
|
+
session_offset = offset
|
|
2741
2759
|
offset += 10
|
|
2742
2760
|
ba_merge(self.deadLetterQueueName, ba, offset)
|
|
2743
2761
|
offset += 32
|
|
@@ -2755,6 +2773,12 @@ class ILQmgrProperty(_AutoAccessor):
|
|
|
2755
2773
|
else:
|
|
2756
2774
|
# 새로 만든 객체라 받은 값이 없다 - 엔진 기본값을 쓴다
|
|
2757
2775
|
ba_merge(LEGACY_FORCE_RELOAD_SIZE, ba, topic_offset)
|
|
2776
|
+
# 구엔진에만 있는 sessionPerThread 도 되돌려 준다
|
|
2777
|
+
raw2 = getattr(self, "_sessionPerThreadRaw", None)
|
|
2778
|
+
if raw2:
|
|
2779
|
+
ba[session_offset:session_offset + 10] = raw2
|
|
2780
|
+
else:
|
|
2781
|
+
ba_merge(LEGACY_SESSION_PER_THREAD, ba, session_offset)
|
|
2758
2782
|
return bytes(ba)
|
|
2759
2783
|
|
|
2760
2784
|
def get_status_string(self) -> str:
|
|
@@ -3649,7 +3673,14 @@ class ILServiceProperty(_AutoAccessor):
|
|
|
3649
3673
|
offset += 10
|
|
3650
3674
|
ba_merge(self.timeoutSocketRecv, ba, offset)
|
|
3651
3675
|
offset += 10
|
|
3652
|
-
|
|
3676
|
+
# v6.3.4 에서 async 를 없애며 acceptPoolSize/eventPoolSize 를 뺐지만
|
|
3677
|
+
# 구엔진(6.3.x) ilsvc 는 이 값으로 스레드 풀을 만든다
|
|
3678
|
+
# (ILinkServerMainClass.cpp:151, ServerListener.cpp:17). 0 이면 풀이 0개다.
|
|
3679
|
+
# 자바는 v1.5.2 에서 기본값 1 을 되살렸다 - 그것과 맞춘다.
|
|
3680
|
+
ba_merge(1, ba, offset)
|
|
3681
|
+
offset += 10
|
|
3682
|
+
ba_merge(1, ba, offset)
|
|
3683
|
+
offset += 10
|
|
3653
3684
|
ba_merge(self.logLevelSystem, ba, offset)
|
|
3654
3685
|
offset += 2
|
|
3655
3686
|
ba_merge(self.logFileSizeSystem, ba, offset)
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|