redis-benchmarks-specification 0.1.337__py3-none-any.whl → 0.1.338__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.

Potentially problematic release.


This version of redis-benchmarks-specification might be problematic. Click here for more details.

@@ -1934,7 +1934,7 @@ def process_self_contained_coordinator_stream(
1934
1934
  benchmark_tool_global=benchmark_tool_global,
1935
1935
  )
1936
1936
  continue
1937
- logging.info(
1937
+ logging.debug(
1938
1938
  "Test {} priority ({}) is within the priority limit [{},{}]".format(
1939
1939
  test_name,
1940
1940
  priority,
@@ -205,6 +205,6 @@ def create_self_contained_coordinator_args(project_name):
205
205
  "--skip-clear-pending-on-startup",
206
206
  default=False,
207
207
  action="store_true",
208
- help="Skip automatically clearing pending messages for this consumer on startup. By default, pending messages are cleared to recover from crashes.",
208
+ help="Skip automatically clearing pending messages and resetting consumer group position on startup. By default, pending messages are cleared and consumer group is reset to latest position to skip old work and recover from crashes.",
209
209
  )
210
210
  return parser
@@ -143,6 +143,30 @@ def clear_pending_messages_for_consumer(conn, running_platform, consumer_pos):
143
143
  logging.error(f"Unexpected error clearing pending messages: {e}")
144
144
 
145
145
 
146
+ def reset_consumer_group_to_latest(conn, running_platform):
147
+ """Reset the consumer group position to only read new messages (skip old ones)"""
148
+ consumer_group_name = get_runners_consumer_group_name(running_platform)
149
+
150
+ try:
151
+ # Set the consumer group position to '$' (latest) to skip all existing messages
152
+ conn.xgroup_setid(
153
+ STREAM_KEYNAME_NEW_BUILD_EVENTS,
154
+ consumer_group_name,
155
+ id="$"
156
+ )
157
+ logging.info(
158
+ f"Reset consumer group {consumer_group_name} position to latest - will only process new messages"
159
+ )
160
+
161
+ except redis.exceptions.ResponseError as e:
162
+ if "NOGROUP" in str(e):
163
+ logging.info(f"Consumer group {consumer_group_name} does not exist yet")
164
+ else:
165
+ logging.warning(f"Error resetting consumer group position: {e}")
166
+ except Exception as e:
167
+ logging.error(f"Unexpected error resetting consumer group position: {e}")
168
+
169
+
146
170
  def process_self_contained_coordinator_stream(
147
171
  conn,
148
172
  datasink_push_results_redistimeseries,
@@ -76,6 +76,7 @@ from redis_benchmarks_specification.__self_contained_coordinator__.runners impor
76
76
  build_runners_consumer_group_create,
77
77
  get_runners_consumer_group_name,
78
78
  clear_pending_messages_for_consumer,
79
+ reset_consumer_group_to_latest,
79
80
  )
80
81
  from redis_benchmarks_specification.__setups__.topologies import get_topologies
81
82
 
@@ -651,15 +652,16 @@ def main():
651
652
  running_platform = args.platform_name
652
653
  build_runners_consumer_group_create(gh_event_conn, running_platform)
653
654
 
654
- # Clear pending messages by default (unless explicitly skipped)
655
+ # Clear pending messages and reset consumer group position by default (unless explicitly skipped)
655
656
  if not args.skip_clear_pending_on_startup:
656
657
  consumer_pos = args.consumer_pos
657
- logging.info("Clearing pending messages on startup (default behavior)")
658
+ logging.info("Clearing pending messages and resetting consumer group position on startup (default behavior)")
658
659
  clear_pending_messages_for_consumer(
659
660
  gh_event_conn, running_platform, consumer_pos
660
661
  )
662
+ reset_consumer_group_to_latest(gh_event_conn, running_platform)
661
663
  else:
662
- logging.info("Skipping pending message cleanup as requested")
664
+ logging.info("Skipping pending message cleanup and consumer group reset as requested")
663
665
 
664
666
  stream_id = None
665
667
  docker_client = docker.from_env()
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: redis-benchmarks-specification
3
- Version: 0.1.337
3
+ Version: 0.1.338
4
4
  Summary: The Redis benchmarks specification describes the cross-language/tools requirements and expectations to foster performance and observability standards around redis related technologies. Members from both industry and academia, including organizations and individuals are encouraged to contribute.
5
5
  Author: filipecosta90
6
6
  Author-email: filipecosta.90@gmail.com
@@ -26,9 +26,9 @@ redis_benchmarks_specification/__init__.py,sha256=YQIEx2sLPPA0JR9OuCuMNMNtm-f_gq
26
26
  redis_benchmarks_specification/__runner__/__init__.py,sha256=l-G1z-t6twUgi8QLueqoTQLvJmv3hJoEYskGm6H7L6M,83
27
27
  redis_benchmarks_specification/__runner__/args.py,sha256=K3VGmBC0-9lSv9H6VDp0N-6FGMWvc_4H0pG_TOXN5u8,11312
28
28
  redis_benchmarks_specification/__runner__/remote_profiling.py,sha256=R7obNQju8mmY9oKkcndjI4aAuxi84OCLhDSqqaYu1SU,18610
29
- redis_benchmarks_specification/__runner__/runner.py,sha256=JW2fB0C6Ce4d6VVQK50qNqpSNGEjq6QVjowUMUA0gzs,156345
29
+ redis_benchmarks_specification/__runner__/runner.py,sha256=xuPc2ht3sPlnqZblANgECtqHX_BgQNodDMKvdurDuTk,156346
30
30
  redis_benchmarks_specification/__self_contained_coordinator__/__init__.py,sha256=l-G1z-t6twUgi8QLueqoTQLvJmv3hJoEYskGm6H7L6M,83
31
- redis_benchmarks_specification/__self_contained_coordinator__/args.py,sha256=Rkajbvb-R4aEJd01gHNbAWrKuiqycHNfKVdO28nDEjI,7244
31
+ redis_benchmarks_specification/__self_contained_coordinator__/args.py,sha256=2nTD4g4V1NjMRjRuDvHaoub5sjcav0GCnxv2HFiXWKc,7329
32
32
  redis_benchmarks_specification/__self_contained_coordinator__/artifacts.py,sha256=OVHqJzDgeSSRfUSiKp1ZTAVv14PvSbk-5yJsAAoUfpw,936
33
33
  redis_benchmarks_specification/__self_contained_coordinator__/build_info.py,sha256=vlg8H8Rxu2falW8xp1GvL1SV1fyBguSbz6Apxc7A2yM,2282
34
34
  redis_benchmarks_specification/__self_contained_coordinator__/clients.py,sha256=EL1V4-i-tTav1mcF_CUosqPF3Q1qi9BZL0zFajEk70c,1878
@@ -36,8 +36,8 @@ redis_benchmarks_specification/__self_contained_coordinator__/cpuset.py,sha256=s
36
36
  redis_benchmarks_specification/__self_contained_coordinator__/docker.py,sha256=09SyAfqlzs1KG9ZAajClNWtiNk4Jqzd--4-m3n1rLjU,3156
37
37
  redis_benchmarks_specification/__self_contained_coordinator__/post_processing.py,sha256=sVLKNnWdAqYY9DjVdqRC5tDaIrVSaI3Ca7w8-DQ-LRM,776
38
38
  redis_benchmarks_specification/__self_contained_coordinator__/prepopulation.py,sha256=1UeFr2T1ZQBcHCSd4W1ZtaWgXyFPfjLyDi_DgDc1eTA,2957
39
- redis_benchmarks_specification/__self_contained_coordinator__/runners.py,sha256=agom6H0iDUH_oQkObS8EtoAm0JUpTVeiBv-EMEnEMtY,31908
40
- redis_benchmarks_specification/__self_contained_coordinator__/self_contained_coordinator.py,sha256=l7OvqbF86l7YhwQQ80En5uxECxytvqlW7NeW43q6YUM,112547
39
+ redis_benchmarks_specification/__self_contained_coordinator__/runners.py,sha256=CXCyYb5G8IBHrm_6Czi2ArPQO7Pd1NJPGUYn836WadE,32872
40
+ redis_benchmarks_specification/__self_contained_coordinator__/self_contained_coordinator.py,sha256=Jpcby63kpVAOx0HiYzehJd6-gS5b-LNnUz0TRAdQ48M,112752
41
41
  redis_benchmarks_specification/__setups__/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
42
42
  redis_benchmarks_specification/__setups__/topologies.py,sha256=xQ1IJkcTji_ZjLiJd3vOxZpvbNtBLZw9cPkw5hGJKHU,481
43
43
  redis_benchmarks_specification/__spec__/__init__.py,sha256=l-G1z-t6twUgi8QLueqoTQLvJmv3hJoEYskGm6H7L6M,83
@@ -282,8 +282,8 @@ redis_benchmarks_specification/test-suites/memtier_benchmark-playbook-session-st
282
282
  redis_benchmarks_specification/test-suites/memtier_benchmark-playbook-session-storage-1k-sessions.yml,sha256=2egtIxPxCze2jlbAfgsk4v9JSQHNMoPLbDWFEW8olDg,7006
283
283
  redis_benchmarks_specification/test-suites/template.txt,sha256=ezqGiRPOvuSDO0iG7GEf-AGXNfHbgXI89_G0RUEzL88,481
284
284
  redis_benchmarks_specification/vector-search-test-suites/vector_db_benchmark_test.yml,sha256=PD7ow-k4Ll2BkhEC3aIqiaCZt8Hc4aJIp96Lw3J3mcI,791
285
- redis_benchmarks_specification-0.1.337.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
286
- redis_benchmarks_specification-0.1.337.dist-info/METADATA,sha256=MwhGo3EAg1Au3m-RJ41H-Bi400Fj4d4xjGqcRxgGNLQ,22768
287
- redis_benchmarks_specification-0.1.337.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
288
- redis_benchmarks_specification-0.1.337.dist-info/entry_points.txt,sha256=x5WBXCZsnDRTZxV7SBGmC65L2k-ygdDOxV8vuKN00Nk,715
289
- redis_benchmarks_specification-0.1.337.dist-info/RECORD,,
285
+ redis_benchmarks_specification-0.1.338.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
286
+ redis_benchmarks_specification-0.1.338.dist-info/METADATA,sha256=Ak3-Pw7UjP7ftlTuKAivQBA_MuZhMBIRQNFsqI6XLiM,22768
287
+ redis_benchmarks_specification-0.1.338.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
288
+ redis_benchmarks_specification-0.1.338.dist-info/entry_points.txt,sha256=x5WBXCZsnDRTZxV7SBGmC65L2k-ygdDOxV8vuKN00Nk,715
289
+ redis_benchmarks_specification-0.1.338.dist-info/RECORD,,