redisbench-admin 0.11.0__py3-none-any.whl → 0.11.3__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.
- redisbench_admin/compare/compare.py +3 -3
- redisbench_admin/run/common.py +33 -1
- redisbench_admin/run/run.py +37 -8
- redisbench_admin/run_remote/run_remote.py +5 -3
- redisbench_admin/run_remote/standalone.py +5 -1
- redisbench_admin/utils/benchmark_config.py +6 -4
- redisbench_admin/utils/remote.py +6 -2
- {redisbench_admin-0.11.0.dist-info → redisbench_admin-0.11.3.dist-info}/METADATA +12 -4
- {redisbench_admin-0.11.0.dist-info → redisbench_admin-0.11.3.dist-info}/RECORD +12 -12
- {redisbench_admin-0.11.0.dist-info → redisbench_admin-0.11.3.dist-info}/WHEEL +1 -1
- {redisbench_admin-0.11.0.dist-info → redisbench_admin-0.11.3.dist-info}/LICENSE +0 -0
- {redisbench_admin-0.11.0.dist-info → redisbench_admin-0.11.3.dist-info}/entry_points.txt +0 -0
|
@@ -653,7 +653,7 @@ def get_by_strings(
|
|
|
653
653
|
comparison_str = comparison_branch
|
|
654
654
|
|
|
655
655
|
if baseline_tag is not None:
|
|
656
|
-
if
|
|
656
|
+
if baseline_covered:
|
|
657
657
|
logging.error(
|
|
658
658
|
"--baseline-branch and --baseline-tag are mutually exclusive. Pick one..."
|
|
659
659
|
)
|
|
@@ -1043,9 +1043,9 @@ def get_v_pct_change_and_largest_var(
|
|
|
1043
1043
|
if last_n < 0 or (last_n > 0 and len(comparison_values) < last_n):
|
|
1044
1044
|
comparison_values.append(tuple[1])
|
|
1045
1045
|
comparison_df = pd.DataFrame(comparison_values)
|
|
1046
|
-
comparison_median = float(comparison_df.median())
|
|
1046
|
+
comparison_median = float(comparison_df.median().iloc[0])
|
|
1047
1047
|
comparison_v = comparison_median
|
|
1048
|
-
comparison_std = float(comparison_df.std())
|
|
1048
|
+
comparison_std = float(comparison_df.std().iloc[0])
|
|
1049
1049
|
if verbose:
|
|
1050
1050
|
logging.info(
|
|
1051
1051
|
"comparison_datapoints: {} value: {}; std-dev: {}; median: {}".format(
|
redisbench_admin/run/common.py
CHANGED
|
@@ -484,6 +484,36 @@ def extract_test_feasible_setups(
|
|
|
484
484
|
for setup_name in feasible_setups_list:
|
|
485
485
|
if default_specs is not None:
|
|
486
486
|
feasible_setups_map[setup_name] = {}
|
|
487
|
+
# spec:
|
|
488
|
+
# setups:
|
|
489
|
+
# - name: oss-standalone
|
|
490
|
+
# type: oss-standalone
|
|
491
|
+
# redis_topology:
|
|
492
|
+
# primaries: 1
|
|
493
|
+
# replicas: 1
|
|
494
|
+
# placement: "sparse"
|
|
495
|
+
# resources:
|
|
496
|
+
# requests:
|
|
497
|
+
# cpus: "2"
|
|
498
|
+
# memory: "10g"
|
|
499
|
+
# - name: oss-standalone-threads-6
|
|
500
|
+
# type: oss-standalone
|
|
501
|
+
# redis_topology:
|
|
502
|
+
# primaries: 1
|
|
503
|
+
# replicas: 1
|
|
504
|
+
# placement: "sparse"
|
|
505
|
+
# resources:
|
|
506
|
+
# requests:
|
|
507
|
+
# cpus: "2"
|
|
508
|
+
# memory: "10g"
|
|
509
|
+
# dbconfig:
|
|
510
|
+
# module-configuration-parameters:
|
|
511
|
+
# redisearch:
|
|
512
|
+
# WORKERS: 6
|
|
513
|
+
# MIN_OPERATION_WORKERS: 6
|
|
514
|
+
# module-oss:
|
|
515
|
+
# WORKERS: 6
|
|
516
|
+
# MIN_OPERATION_WORKERS: 6
|
|
487
517
|
if "setups" in default_specs:
|
|
488
518
|
for setup in default_specs["setups"]:
|
|
489
519
|
if setup_name == setup["name"]:
|
|
@@ -515,7 +545,9 @@ def extract_test_feasible_setups(
|
|
|
515
545
|
feasible_setups_map[setup_name]
|
|
516
546
|
)
|
|
517
547
|
)
|
|
518
|
-
|
|
548
|
+
logging.info(
|
|
549
|
+
f"There a total of {len(feasible_setups_map.keys())} setups. Setups: {feasible_setups_map}"
|
|
550
|
+
)
|
|
519
551
|
return feasible_setups_map
|
|
520
552
|
|
|
521
553
|
|
redisbench_admin/run/run.py
CHANGED
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
# All rights reserved.
|
|
5
5
|
#
|
|
6
6
|
import logging
|
|
7
|
+
import copy
|
|
7
8
|
|
|
8
9
|
from redisbench_admin.run.common import extract_test_feasible_setups
|
|
9
10
|
from redisbench_admin.run_remote.consts import min_recommended_benchmark_duration
|
|
@@ -31,7 +32,7 @@ def calculate_client_tool_duration_and_check(
|
|
|
31
32
|
|
|
32
33
|
|
|
33
34
|
def merge_dicts(dict1, dict2):
|
|
34
|
-
result =
|
|
35
|
+
result = copy.deepcopy(dict1) # Start with dict1's keys and values
|
|
35
36
|
for key, value in dict2.items():
|
|
36
37
|
if key in result:
|
|
37
38
|
if isinstance(result[key], dict) and isinstance(value, dict):
|
|
@@ -56,8 +57,15 @@ def define_benchmark_plan(benchmark_definitions, default_specs):
|
|
|
56
57
|
benchmark_runs_plan[benchmark_type] = {}
|
|
57
58
|
|
|
58
59
|
# extract dataset-name
|
|
59
|
-
|
|
60
|
-
|
|
60
|
+
(
|
|
61
|
+
benchmark_contains_dbconfig,
|
|
62
|
+
dataset_name,
|
|
63
|
+
_,
|
|
64
|
+
_,
|
|
65
|
+
_,
|
|
66
|
+
) = extract_redis_dbconfig_parameters(benchmark_config, "dbconfig")
|
|
67
|
+
logging.info(
|
|
68
|
+
f"Benchmark contains specific dbconfig on test {test_name}: {benchmark_contains_dbconfig}"
|
|
61
69
|
)
|
|
62
70
|
if dataset_name is None:
|
|
63
71
|
dataset_name = test_name
|
|
@@ -74,6 +82,14 @@ def define_benchmark_plan(benchmark_definitions, default_specs):
|
|
|
74
82
|
)
|
|
75
83
|
|
|
76
84
|
for setup_name, setup_settings in test_setups.items():
|
|
85
|
+
test_benchmark_config = copy.deepcopy(benchmark_config)
|
|
86
|
+
setup_contains_dbconfig = False
|
|
87
|
+
if "dbconfig" in setup_settings:
|
|
88
|
+
setup_contains_dbconfig = True
|
|
89
|
+
logging.info(
|
|
90
|
+
f"setup ({setup_name}): {setup_settings}. contains dbconfig {setup_contains_dbconfig}"
|
|
91
|
+
)
|
|
92
|
+
|
|
77
93
|
if setup_name not in benchmark_runs_plan[benchmark_type][dataset_name]:
|
|
78
94
|
benchmark_runs_plan[benchmark_type][dataset_name][setup_name] = {}
|
|
79
95
|
benchmark_runs_plan[benchmark_type][dataset_name][setup_name][
|
|
@@ -82,6 +98,7 @@ def define_benchmark_plan(benchmark_definitions, default_specs):
|
|
|
82
98
|
benchmark_runs_plan[benchmark_type][dataset_name][setup_name][
|
|
83
99
|
"benchmarks"
|
|
84
100
|
] = {}
|
|
101
|
+
|
|
85
102
|
if (
|
|
86
103
|
test_name
|
|
87
104
|
in benchmark_runs_plan[benchmark_type][dataset_name][setup_name][
|
|
@@ -94,13 +111,25 @@ def define_benchmark_plan(benchmark_definitions, default_specs):
|
|
|
94
111
|
)
|
|
95
112
|
)
|
|
96
113
|
else:
|
|
97
|
-
#
|
|
98
|
-
if
|
|
99
|
-
|
|
100
|
-
|
|
114
|
+
# check if we need to merge dbconfigs from the setup defaults
|
|
115
|
+
if setup_contains_dbconfig:
|
|
116
|
+
if "dbconfig" not in test_benchmark_config:
|
|
117
|
+
test_benchmark_config["dbconfig"] = {}
|
|
118
|
+
setup_dbconfig = setup_settings["dbconfig"]
|
|
119
|
+
benchmark_dbconfig = test_benchmark_config["dbconfig"]
|
|
120
|
+
logging.info(
|
|
121
|
+
f"Merging setup dbconfig: {setup_dbconfig}, with benchmark dbconfig {test_benchmark_config}"
|
|
101
122
|
)
|
|
123
|
+
final_db_config = merge_dicts(benchmark_dbconfig, setup_dbconfig)
|
|
124
|
+
logging.info(f"FINAL DB CONFIG: {final_db_config}")
|
|
125
|
+
test_benchmark_config["dbconfig"] = final_db_config
|
|
126
|
+
|
|
127
|
+
logging.info(
|
|
128
|
+
f"final benchmark config for setup: {setup_name} and test: {test_name}. {test_benchmark_config}"
|
|
129
|
+
)
|
|
130
|
+
# add benchmark
|
|
102
131
|
benchmark_runs_plan[benchmark_type][dataset_name][setup_name][
|
|
103
132
|
"benchmarks"
|
|
104
|
-
][test_name] =
|
|
133
|
+
][test_name] = test_benchmark_config
|
|
105
134
|
|
|
106
135
|
return benchmark_runs_plan
|
|
@@ -346,7 +346,10 @@ def run_remote_command_logic(args, project_name, project_version):
|
|
|
346
346
|
|
|
347
347
|
# map from setup name to overall target-tables ( if any target is defined )
|
|
348
348
|
overall_tables[setup_name] = {}
|
|
349
|
+
total_benchmarks = len(benchmarks_map.keys())
|
|
350
|
+
import tqdm
|
|
349
351
|
|
|
352
|
+
pbar = tqdm.tqdm(total=total_benchmarks, unit="benchmarks")
|
|
350
353
|
for test_name, benchmark_config in benchmarks_map.items():
|
|
351
354
|
if return_code != 0 and args.fail_fast:
|
|
352
355
|
logging.warning(
|
|
@@ -371,9 +374,7 @@ def run_remote_command_logic(args, project_name, project_version):
|
|
|
371
374
|
continue
|
|
372
375
|
remote_perf = None
|
|
373
376
|
logging.info(
|
|
374
|
-
"Repetition {} of {}. Running test {}"
|
|
375
|
-
repetition, BENCHMARK_REPETITIONS, test_name
|
|
376
|
-
)
|
|
377
|
+
f"Repetition {repetition} of {BENCHMARK_REPETITIONS}. Running test {test_name}. Total benchmarks {total_benchmarks}"
|
|
377
378
|
)
|
|
378
379
|
(
|
|
379
380
|
setup_name,
|
|
@@ -1092,6 +1093,7 @@ def run_remote_command_logic(args, project_name, project_version):
|
|
|
1092
1093
|
f"Test {test_name} does not have remote config. Skipping test."
|
|
1093
1094
|
)
|
|
1094
1095
|
|
|
1096
|
+
pbar.update()
|
|
1095
1097
|
if len(benchmark_artifacts_links) > 0:
|
|
1096
1098
|
writer = MarkdownTableWriter(
|
|
1097
1099
|
table_name=benchmark_artifacts_table_name,
|
|
@@ -76,6 +76,7 @@ def remote_module_files_cp(
|
|
|
76
76
|
):
|
|
77
77
|
remote_module_files = []
|
|
78
78
|
if local_module_files is not None:
|
|
79
|
+
logging.info(f"local_module_files: {local_module_files}")
|
|
79
80
|
for local_module_file in local_module_files:
|
|
80
81
|
splitted_module_and_plugins = []
|
|
81
82
|
if type(local_module_file) is str:
|
|
@@ -135,7 +136,10 @@ def remote_module_files_cp(
|
|
|
135
136
|
if pos > 1:
|
|
136
137
|
remote_module_files_in = remote_module_files_in + " "
|
|
137
138
|
remote_module_files_in = remote_module_files_in + remote_module_file
|
|
138
|
-
|
|
139
|
+
logging.info(
|
|
140
|
+
f"appending to {remote_module_files} remote file {remote_module_files_in}"
|
|
141
|
+
)
|
|
142
|
+
remote_module_files.append(remote_module_files_in)
|
|
139
143
|
logging.info(
|
|
140
144
|
"There are a total of {} remote files {}".format(
|
|
141
145
|
len(remote_module_files), remote_module_files
|
|
@@ -258,10 +258,12 @@ def extract_redis_dbconfig_parameters(benchmark_config, dbconfig_keyname):
|
|
|
258
258
|
cp = benchmark_config[dbconfig_keyname]["configuration-parameters"]
|
|
259
259
|
for k, v in cp.items():
|
|
260
260
|
redis_configuration_parameters[k] = v
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
261
|
+
if "dataset_load_timeout_secs" in benchmark_config[dbconfig_keyname]:
|
|
262
|
+
dataset_load_timeout_secs = benchmark_config[dbconfig_keyname][
|
|
263
|
+
"dataset_load_timeout_secs"
|
|
264
|
+
]
|
|
265
|
+
if "dataset_name" in benchmark_config[dbconfig_keyname]:
|
|
266
|
+
dataset_name = benchmark_config[dbconfig_keyname]["dataset_name"]
|
|
265
267
|
|
|
266
268
|
return (
|
|
267
269
|
dbconfig_present,
|
redisbench_admin/utils/remote.py
CHANGED
|
@@ -544,11 +544,15 @@ def common_tf(branch, path, repo, temporary_dir=None, destroy=False):
|
|
|
544
544
|
temporary_dir = tempfile.mkdtemp()
|
|
545
545
|
if destroy is False:
|
|
546
546
|
logging.info(
|
|
547
|
-
"Fetching infrastructure definition from git repo {}
|
|
547
|
+
"Fetching infrastructure definition from git repo {}{} (branch={}). Using local dir {} to store state".format(
|
|
548
548
|
repo, path, branch, temporary_dir
|
|
549
549
|
)
|
|
550
550
|
)
|
|
551
551
|
git.Repo.clone_from(repo, temporary_dir, branch=branch, depth=1)
|
|
552
|
+
logging.info(f"ensuring folder exists: {temporary_dir}")
|
|
553
|
+
assert os.path.exists(temporary_dir) and os.path.isdir(
|
|
554
|
+
temporary_dir
|
|
555
|
+
), f"Folder '{temporary_dir}' does not exist"
|
|
552
556
|
terraform_working_dir = temporary_dir + path
|
|
553
557
|
return terraform_working_dir
|
|
554
558
|
|
|
@@ -561,7 +565,7 @@ def check_remote_setup_spot_instance(
|
|
|
561
565
|
contains_spot_instance = False
|
|
562
566
|
for remote_setup_property in remote_setup_config:
|
|
563
567
|
if "spot_instance" in remote_setup_property:
|
|
564
|
-
spot_path = "
|
|
568
|
+
spot_path = "terraform/" + remote_setup_property["spot_instance"]
|
|
565
569
|
contains_spot_instance = True
|
|
566
570
|
logging.info(f"Detected spot instance config. Setup path: {spot_path}")
|
|
567
571
|
|
|
@@ -1,20 +1,22 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: redisbench-admin
|
|
3
|
-
Version: 0.11.
|
|
3
|
+
Version: 0.11.3
|
|
4
4
|
Summary: Redis benchmark run helper. A wrapper around Redis and Redis Modules benchmark tools ( ftsb_redisearch, memtier_benchmark, redis-benchmark, aibench, etc... ).
|
|
5
5
|
Author: filipecosta90
|
|
6
6
|
Author-email: filipecosta.90@gmail.com
|
|
7
|
-
Requires-Python: >=3.
|
|
7
|
+
Requires-Python: >=3.9.0,<4.0.0
|
|
8
8
|
Classifier: Programming Language :: Python :: 3
|
|
9
|
+
Classifier: Programming Language :: Python :: 3.9
|
|
9
10
|
Classifier: Programming Language :: Python :: 3.10
|
|
10
11
|
Classifier: Programming Language :: Python :: 3.11
|
|
12
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
11
13
|
Requires-Dist: Flask (>=2.0.1,<3.0.0)
|
|
12
14
|
Requires-Dist: Flask-HTTPAuth (>=4.4.0,<5.0.0)
|
|
13
15
|
Requires-Dist: GitPython (>=3.1.12,<4.0.0)
|
|
14
16
|
Requires-Dist: Jinja2 (>=3.0.3,<4.0.0)
|
|
15
17
|
Requires-Dist: PyYAML (>=6.0,<7.0)
|
|
16
18
|
Requires-Dist: boto3 (>=1.13.24,<2.0.0)
|
|
17
|
-
Requires-Dist: certifi (>=2021.10.8,<
|
|
19
|
+
Requires-Dist: certifi (>=2021.10.8,<2025.0.0)
|
|
18
20
|
Requires-Dist: daemonize (>=2.5.0,<3.0.0)
|
|
19
21
|
Requires-Dist: flask-restx (>=0.5.1,<0.6.0)
|
|
20
22
|
Requires-Dist: humanize (>=2.4.0,<3.0.0)
|
|
@@ -22,7 +24,7 @@ Requires-Dist: jsonpath_ng (>=1.5.2,<2.0.0)
|
|
|
22
24
|
Requires-Dist: matplotlib (>=3.1.2,<4.0.0)
|
|
23
25
|
Requires-Dist: numpy (>=2.0.0,<3.0.0)
|
|
24
26
|
Requires-Dist: pandas (>=2.1.2,<3.0.0)
|
|
25
|
-
Requires-Dist: paramiko (>=2.7.2,<
|
|
27
|
+
Requires-Dist: paramiko (>=2.7.2,<4.0.0)
|
|
26
28
|
Requires-Dist: psutil (>=5.6.6,<6.0.0)
|
|
27
29
|
Requires-Dist: pyWorkFlow (>=0.0.2,<0.0.3)
|
|
28
30
|
Requires-Dist: py_cpuinfo (>=5.0.0,<6.0.0)
|
|
@@ -156,6 +158,12 @@ To run a specific test:
|
|
|
156
158
|
$ tox -- tests/test_redistimeseries.py
|
|
157
159
|
```
|
|
158
160
|
|
|
161
|
+
To run a specific test with verbose logging:
|
|
162
|
+
|
|
163
|
+
```sh
|
|
164
|
+
# tox -- -vv --log-cli-level=INFO tests/test_run.py
|
|
165
|
+
```
|
|
166
|
+
|
|
159
167
|
## License
|
|
160
168
|
|
|
161
169
|
redisbench-admin is distributed under the BSD3 license - see [LICENSE](LICENSE)
|
|
@@ -4,7 +4,7 @@ redisbench_admin/commands/__init__.py,sha256=mzVrEtqefFdopyzR-W6xx3How95dyZfToGK
|
|
|
4
4
|
redisbench_admin/commands/commands.json.py,sha256=mzVrEtqefFdopyzR-W6xx3How95dyZfToGKm1-_YzeY,95
|
|
5
5
|
redisbench_admin/compare/__init__.py,sha256=DtBXRp0Q01XgCFmY-1OIePMyyYihVNAjZ1Y8zwqSDN0,101
|
|
6
6
|
redisbench_admin/compare/args.py,sha256=10zbiT8roeTGnAubvoVFZTbJNbVxuRaRPtCKjxV8iNE,5226
|
|
7
|
-
redisbench_admin/compare/compare.py,sha256=
|
|
7
|
+
redisbench_admin/compare/compare.py,sha256=iGf9zrtB3X0iEmVxd_lJZNUpDbH4w8bVH6N02ZZEyOU,37739
|
|
8
8
|
redisbench_admin/deploy/__init__.py,sha256=DtBXRp0Q01XgCFmY-1OIePMyyYihVNAjZ1Y8zwqSDN0,101
|
|
9
9
|
redisbench_admin/deploy/args.py,sha256=neLUcQqI__HkJItkQg2C293hl5g3yHG40t171r7-E5Y,1732
|
|
10
10
|
redisbench_admin/deploy/deploy.py,sha256=c1srxDMaUHuyh6wGdgLqzTz3ljZFtGqiumtAmguVyuk,3791
|
|
@@ -176,7 +176,7 @@ redisbench_admin/run/ann/pkg/test/test-jaccard.py,sha256=oIhaQCQKrQokwv3fvgLSwPl
|
|
|
176
176
|
redisbench_admin/run/ann/pkg/test/test-metrics.py,sha256=vJdS8Kuk8bAnpB65Uqb-9rUUI35XrHwaO3cNwKX5gxc,3057
|
|
177
177
|
redisbench_admin/run/args.py,sha256=Sspv4eusQs9HMVMIyv_hB9vQ3S_s0lHYGAL1gPb2WGM,7864
|
|
178
178
|
redisbench_admin/run/cluster.py,sha256=QuptSW-IhdyFIoQ3hzY613jtQWxBrVIlgc8OarcEK20,6072
|
|
179
|
-
redisbench_admin/run/common.py,sha256=
|
|
179
|
+
redisbench_admin/run/common.py,sha256=MIuHUTpVX7G1JsO4TIfHraPQkxqOfMu04KvcJGBw-vI,28010
|
|
180
180
|
redisbench_admin/run/ftsb/__init__.py,sha256=DtBXRp0Q01XgCFmY-1OIePMyyYihVNAjZ1Y8zwqSDN0,101
|
|
181
181
|
redisbench_admin/run/ftsb/ftsb.py,sha256=plP-yxjMvvy-gITlXpuXJcyrPHfDoYYI8JRwTe5kK4M,2388
|
|
182
182
|
redisbench_admin/run/git.py,sha256=6UYGcTN0MPzf4QDVoJnFkou0yZasLF6jLG7f0zoySq8,3064
|
|
@@ -190,7 +190,7 @@ redisbench_admin/run/redis_benchmark/redis_benchmark.py,sha256=e-Az2uTlt3z2W4uzl
|
|
|
190
190
|
redisbench_admin/run/redisgraph_benchmark_go/__init__.py,sha256=DtBXRp0Q01XgCFmY-1OIePMyyYihVNAjZ1Y8zwqSDN0,101
|
|
191
191
|
redisbench_admin/run/redisgraph_benchmark_go/redisgraph_benchmark_go.py,sha256=DijIoWr73e2t7Zy-UmODzC51IjUh6hH5I0LaPRJW4Vk,2241
|
|
192
192
|
redisbench_admin/run/redistimeseries.py,sha256=x3PA7QoHXu53zs5v0ekK2sVmUnA9_ZF2JxgCDf1Mui4,21331
|
|
193
|
-
redisbench_admin/run/run.py,sha256=
|
|
193
|
+
redisbench_admin/run/run.py,sha256=WIBc1q5198Ln3Elfgk6D1_ezuAKx5kM_xsxnxGe66-I,5586
|
|
194
194
|
redisbench_admin/run/s3.py,sha256=pXQXZ1rrwDCWeBegGR4aKzbKqWWwMrmqvIjFxEB3bh4,442
|
|
195
195
|
redisbench_admin/run/ssh.py,sha256=gRW6ROoTKlaxLKhS5tM-Ejjd6zk2iO1KN9dzBzw7GOk,2835
|
|
196
196
|
redisbench_admin/run/tsbs_run_queries_redistimeseries/__init__.py,sha256=DtBXRp0Q01XgCFmY-1OIePMyyYihVNAjZ1Y8zwqSDN0,101
|
|
@@ -220,23 +220,23 @@ redisbench_admin/run_remote/remote_db.py,sha256=a1_fnLhsCGv_0HMBB91zscHTFcHwmab_
|
|
|
220
220
|
redisbench_admin/run_remote/remote_env.py,sha256=fTZliXW7Cz0ztew7IR2BNlqLd_l4_p-5Oc6rX7T5EdI,4605
|
|
221
221
|
redisbench_admin/run_remote/remote_failures.py,sha256=IOo6DyxarcwwMPCeN4gWB2JrhuC9iBLwq0nCROqr5ak,1567
|
|
222
222
|
redisbench_admin/run_remote/remote_helpers.py,sha256=gy10SuKheBiL568ldiOdJaHRPJ_J7DxH_uZpqgOuylo,9818
|
|
223
|
-
redisbench_admin/run_remote/run_remote.py,sha256=
|
|
224
|
-
redisbench_admin/run_remote/standalone.py,sha256=
|
|
223
|
+
redisbench_admin/run_remote/run_remote.py,sha256=Y2EIiNzkktp_yu0CB3C8yjUXkbLBZSQ6RKGPJju7v0A,67599
|
|
224
|
+
redisbench_admin/run_remote/standalone.py,sha256=jWL1yhkTYsSbXLzpqykFc2XE7t0uoGd-OU6C3MWvzL8,6861
|
|
225
225
|
redisbench_admin/run_remote/terraform.py,sha256=zD2gGuOmnTex6Dt2lhdAtNn21iL6sykPPXI10jJaim4,3945
|
|
226
226
|
redisbench_admin/utils/__init__.py,sha256=DtBXRp0Q01XgCFmY-1OIePMyyYihVNAjZ1Y8zwqSDN0,101
|
|
227
|
-
redisbench_admin/utils/benchmark_config.py,sha256=
|
|
227
|
+
redisbench_admin/utils/benchmark_config.py,sha256=bC2C6rnj89wkkSlOXyyfe0N15unn_M1t1zfskfVkb98,21387
|
|
228
228
|
redisbench_admin/utils/local.py,sha256=zUvyVI9LZMT3qyxs1pO3mXL6Bt_1z9EZUGppaRcWNRA,3890
|
|
229
229
|
redisbench_admin/utils/redisearch.py,sha256=lchUEzpt0zB1rHwlDlw9LLifAnxFWcLP-PePw7TjL-0,1602
|
|
230
230
|
redisbench_admin/utils/redisgraph_benchmark_go.py,sha256=os7EJt6kBxsFJLKkSoANbjMT7-cEq4-Ns-49alk2Tf8,2048
|
|
231
|
-
redisbench_admin/utils/remote.py,sha256=
|
|
231
|
+
redisbench_admin/utils/remote.py,sha256=UH2F8cLoMKSXigpZpfNOqnWBVs2x3powmj0eiTSLhSg,39135
|
|
232
232
|
redisbench_admin/utils/results.py,sha256=uKk3uNJ--bSXlUj_HGQ2OaV6MVqmXJVM8xTzFV6EOw4,3267
|
|
233
233
|
redisbench_admin/utils/ssh.py,sha256=QW4AwlocMHJt05QMdN_4f8WeDmxiEwR80ny8VBThq6k,6533
|
|
234
234
|
redisbench_admin/utils/utils.py,sha256=FLDjhGkW0PWwcu_nlTnIW6aZtHzJGz4LIwvu1CpCajw,14160
|
|
235
235
|
redisbench_admin/watchdog/__init__.py,sha256=cD7zfXt0VEmy0b7452HvcAxX_9kVj6Vm213yNdUHP20,95
|
|
236
236
|
redisbench_admin/watchdog/args.py,sha256=nKsG1G6ATOZlAMHMtT9u3kXxduKCbejSZ5x8oB_ynZ8,1312
|
|
237
237
|
redisbench_admin/watchdog/watchdog.py,sha256=jFGtm5ktjKuXKWvH7lnmf3pp-ch1WBJUOomXILJMDAg,6158
|
|
238
|
-
redisbench_admin-0.11.
|
|
239
|
-
redisbench_admin-0.11.
|
|
240
|
-
redisbench_admin-0.11.
|
|
241
|
-
redisbench_admin-0.11.
|
|
242
|
-
redisbench_admin-0.11.
|
|
238
|
+
redisbench_admin-0.11.3.dist-info/LICENSE,sha256=AAMtfs82zOOvmG68vILivm6lxi2rcOlGObmA8jzxQvw,10768
|
|
239
|
+
redisbench_admin-0.11.3.dist-info/METADATA,sha256=Bv2cCIczG0EyHajACJdt44hTX0Zfnj9ir6cP_fOB5nE,5437
|
|
240
|
+
redisbench_admin-0.11.3.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
|
|
241
|
+
redisbench_admin-0.11.3.dist-info/entry_points.txt,sha256=UUawXk_AS-PlieKJ1QxPQXGsRLb6OW_F0MtmA1W0KE8,113
|
|
242
|
+
redisbench_admin-0.11.3.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|