redisbench-admin 0.10.20__tar.gz → 0.10.22__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.
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/PKG-INFO +1 -1
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/pyproject.toml +1 -1
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/compare/compare.py +1 -1
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/args.py +8 -1
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run_local/args.py +9 -0
- redisbench_admin-0.10.22/redisbench_admin/run_local/local_db.py +216 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run_local/run_local.py +54 -7
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run_remote/args.py +0 -7
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/utils/remote.py +2 -2
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/setup.py +1 -1
- redisbench_admin-0.10.20/redisbench_admin/run_local/local_db.py +0 -185
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/LICENSE +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/README.md +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/__init__.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/cli.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/commands/__init__.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/commands/commands.json.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/compare/__init__.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/compare/args.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/deploy/__init__.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/deploy/args.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/deploy/deploy.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/environments/__init__.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/environments/oss_cluster.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/environments/oss_standalone.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/export/__init__.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/export/args.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/export/common/__init__.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/export/common/common.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/export/export.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/export/google_benchmark/__init__.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/export/google_benchmark/google_benchmark_json_format.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/export/memtier_benchmark/__init__.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/export/memtier_benchmark/memtier_benchmark_json_format.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/export/pyperf/__init__.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/export/pyperf/pyperf_json_format.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/export/redis_benchmark/__init__.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/export/redis_benchmark/metrics_definition.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/export/redis_benchmark/redis_benchmark_csv_format.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/extract/__init__.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/extract/args.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/extract/extract.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/grafana_api/__init__.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/grafana_api/app.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/grafana_api/args.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/grafana_api/grafana_api.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/profilers/__init__.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/profilers/daemon.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/profilers/flamegraph.pl +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/profilers/perf.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/profilers/perf_daemon_caller.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/profilers/pprof.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/profilers/profilers.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/profilers/profilers_local.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/profilers/profilers_schema.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/profilers/stackcollapse-perf.pl +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/profilers/vtune.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/__init__.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/aibench_run_inference_redisai_vision/__init__.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/aibench_run_inference_redisai_vision/aibench_run_inference_redisai_vision.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/__init__.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/ann.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/.dockerignore +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/.git +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/.github/workflows/benchmarks.yml +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/.gitignore +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/LICENSE +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/README.md +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/algos.yaml +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/algosP.yaml +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/__init__.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/__init__.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/annoy.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/balltree.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/base.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/bruteforce.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/ckdtree.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/datasketch.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/definitions.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/diskann.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/dolphinnpy.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/dummy_algo.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/elasticsearch.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/elastiknn.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/faiss.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/faiss_gpu.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/faiss_hnsw.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/flann.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/hnswlib.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/kdtree.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/kgraph.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/lshf.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/milvus.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/mrpt.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/n2.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/nearpy.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/nmslib.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/onng_ngt.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/opensearchknn.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/panng_ngt.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/pinecone.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/puffinn.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/pynndescent.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/qg_ngt.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/redisearch.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/rpforest.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/scann.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/sptag.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/subprocess.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/vald.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/vecsim-hnsw.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/algorithms/vespa.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/constants.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/data.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/datasets.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/distance.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/main.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/plotting/__init__.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/plotting/metrics.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/plotting/plot_variants.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/plotting/utils.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/results.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/ann_benchmarks/runner.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/create_dataset.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/create_hybrid_dataset.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/create_text_to_image_ds.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/create_website.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/install/Dockerfile +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/install/Dockerfile.annoy +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/install/Dockerfile.datasketch +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/install/Dockerfile.diskann +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/install/Dockerfile.diskann_pq +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/install/Dockerfile.dolphinn +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/install/Dockerfile.elasticsearch +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/install/Dockerfile.elastiknn +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/install/Dockerfile.faiss +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/install/Dockerfile.flann +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/install/Dockerfile.hnswlib +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/install/Dockerfile.kgraph +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/install/Dockerfile.mih +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/install/Dockerfile.milvus +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/install/Dockerfile.mrpt +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/install/Dockerfile.n2 +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/install/Dockerfile.nearpy +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/install/Dockerfile.ngt +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/install/Dockerfile.nmslib +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/install/Dockerfile.opensearchknn +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/install/Dockerfile.puffinn +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/install/Dockerfile.pynndescent +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/install/Dockerfile.redisearch +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/install/Dockerfile.rpforest +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/install/Dockerfile.scann +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/install/Dockerfile.scipy +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/install/Dockerfile.sklearn +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/install/Dockerfile.sptag +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/install/Dockerfile.vald +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/install/Dockerfile.vespa +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/install.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/logging.conf +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/multirun.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/plot.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/protocol/bf-runner +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/protocol/bf-runner.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/protocol/ext-add-query-metric.md +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/protocol/ext-batch-queries.md +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/protocol/ext-prepared-queries.md +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/protocol/ext-query-parameters.md +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/protocol/specification.md +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/requirements.txt +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/requirements_py38.txt +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/results/fashion-mnist-784-euclidean.png +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/results/gist-960-euclidean.png +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/results/glove-100-angular.png +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/results/glove-25-angular.png +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/results/lastfm-64-dot.png +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/results/mnist-784-euclidean.png +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/results/nytimes-256-angular.png +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/results/sift-128-euclidean.png +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/run.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/run_algorithm.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/templates/chartjs.template +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/templates/detail_page.html +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/templates/general.html +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/templates/latex.template +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/templates/summary.html +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/test/__init__.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/test/test-jaccard.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ann/pkg/test/test-metrics.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/cluster.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/common.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ftsb/__init__.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ftsb/ftsb.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/git.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/grafana.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/memtier_benchmark/__init__.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/memtier_benchmark/memtier_benchmark.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/metrics.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/modules.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/redis_benchmark/__init__.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/redis_benchmark/redis_benchmark.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/redisgraph_benchmark_go/__init__.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/redisgraph_benchmark_go/redisgraph_benchmark_go.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/redistimeseries.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/run.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/s3.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ssh.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/tsbs_run_queries_redistimeseries/__init__.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/tsbs_run_queries_redistimeseries/tsbs_run_queries_redistimeseries.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ycsb/__init__.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run/ycsb/ycsb.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run_async/__init__.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run_async/async_env.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run_async/async_terraform.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run_async/benchmark.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run_async/log.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run_async/render_files.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run_async/run_async.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run_local/__init__.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run_local/local_client.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run_local/local_helpers.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run_remote/__init__.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run_remote/consts.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run_remote/log.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run_remote/notifications.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run_remote/remote_client.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run_remote/remote_db.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run_remote/remote_env.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run_remote/remote_failures.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run_remote/remote_helpers.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run_remote/run_remote.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run_remote/standalone.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run_remote/terraform.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/utils/__init__.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/utils/benchmark_config.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/utils/local.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/utils/redisearch.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/utils/redisgraph_benchmark_go.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/utils/results.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/utils/ssh.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/utils/utils.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/watchdog/__init__.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/watchdog/args.py +0 -0
- {redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/watchdog/watchdog.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: redisbench-admin
|
|
3
|
-
Version: 0.10.
|
|
3
|
+
Version: 0.10.22
|
|
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
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[tool.poetry]
|
|
2
2
|
name = "redisbench-admin"
|
|
3
|
-
version = "0.10.
|
|
3
|
+
version = "0.10.22"
|
|
4
4
|
description = "Redis benchmark run helper. A wrapper around Redis and Redis Modules benchmark tools ( ftsb_redisearch, memtier_benchmark, redis-benchmark, aibench, etc... )."
|
|
5
5
|
authors = ["filipecosta90 <filipecosta.90@gmail.com>","Redis Performance Group <performance@redis.com>"]
|
|
6
6
|
readme = "README.md"
|
|
@@ -722,7 +722,7 @@ def from_rts_to_regression_table(
|
|
|
722
722
|
total_comparison_points = 0
|
|
723
723
|
noise_waterline = 3
|
|
724
724
|
progress = tqdm(unit="benchmark time-series", total=len(test_names))
|
|
725
|
-
at_comparison=0
|
|
725
|
+
at_comparison = 0
|
|
726
726
|
for test_name in test_names:
|
|
727
727
|
multi_value_baseline = check_multi_value_filter(baseline_str)
|
|
728
728
|
multi_value_comparison = check_multi_value_filter(comparison_str)
|
|
@@ -40,9 +40,10 @@ COMMANDSTATS_ENABLED = bool(int(os.getenv("COMMANDSTATS_ENABLED", 1)))
|
|
|
40
40
|
PROFILERS = os.getenv("PROFILERS", PROFILERS_DEFAULT)
|
|
41
41
|
MAX_PROFILERS_PER_TYPE = int(os.getenv("MAX_PROFILERS", 1))
|
|
42
42
|
PROFILE_FREQ = os.getenv("PROFILE_FREQ", PROFILE_FREQ_DEFAULT)
|
|
43
|
-
KEEP_ENV = bool(os.getenv("KEEP_ENV",
|
|
43
|
+
KEEP_ENV = bool(int(os.getenv("KEEP_ENV", "0")))
|
|
44
44
|
ALLOWED_TOOLS_DEFAULT = "memtier_benchmark,redis-benchmark,redisgraph-benchmark-go,ycsb,go-ycsb,tsbs_run_queries_redistimeseries,tsbs_load_redistimeseries,ftsb_redisearch,aibench_run_inference_redisai_vision,ann-benchmarks"
|
|
45
45
|
ALLOWED_BENCH_TOOLS = os.getenv("ALLOWED_BENCH_TOOLS", ALLOWED_TOOLS_DEFAULT)
|
|
46
|
+
SKIP_DB_SETUP = bool(int(os.getenv("SKIP_DB_SETUP", "0")))
|
|
46
47
|
|
|
47
48
|
|
|
48
49
|
def common_run_args(parser):
|
|
@@ -53,6 +54,12 @@ def common_run_args(parser):
|
|
|
53
54
|
action="store_true",
|
|
54
55
|
help="Keep environment and topology up after benchmark.",
|
|
55
56
|
)
|
|
57
|
+
parser.add_argument(
|
|
58
|
+
"--skip-db-setup",
|
|
59
|
+
type=bool,
|
|
60
|
+
default=SKIP_DB_SETUP,
|
|
61
|
+
help="skip db setup/teardown steps. Usefull when you want to target an existing DB",
|
|
62
|
+
)
|
|
56
63
|
parser.add_argument(
|
|
57
64
|
"--fail_fast",
|
|
58
65
|
required=False,
|
|
@@ -3,13 +3,22 @@
|
|
|
3
3
|
# Copyright (c) 2021., Redis Labs Modules
|
|
4
4
|
# All rights reserved.
|
|
5
5
|
#
|
|
6
|
+
import os
|
|
6
7
|
|
|
7
8
|
from redisbench_admin.run.args import common_run_args
|
|
8
9
|
from redisbench_admin.run.common import REDIS_BINARY
|
|
9
10
|
|
|
11
|
+
FLUSHALL_AT_START = bool(int(os.getenv("FLUSHALL_AT_START", "0")))
|
|
12
|
+
|
|
10
13
|
|
|
11
14
|
def create_run_local_arguments(parser):
|
|
12
15
|
parser = common_run_args(parser)
|
|
13
16
|
parser.add_argument("--port", type=int, default=6379)
|
|
14
17
|
parser.add_argument("--redis-binary", type=str, default=REDIS_BINARY)
|
|
18
|
+
parser.add_argument(
|
|
19
|
+
"--flushall_on_every_test_start",
|
|
20
|
+
type=bool,
|
|
21
|
+
default=FLUSHALL_AT_START,
|
|
22
|
+
help="At the start of every test send a FLUSHALL",
|
|
23
|
+
)
|
|
15
24
|
return parser
|
|
@@ -0,0 +1,216 @@
|
|
|
1
|
+
# BSD 3-Clause License
|
|
2
|
+
#
|
|
3
|
+
# Copyright (c) 2021., Redis Labs Modules
|
|
4
|
+
# All rights reserved.
|
|
5
|
+
#
|
|
6
|
+
import logging
|
|
7
|
+
import tempfile
|
|
8
|
+
import datetime
|
|
9
|
+
|
|
10
|
+
import redis
|
|
11
|
+
|
|
12
|
+
from redisbench_admin.run.run import calculate_client_tool_duration_and_check
|
|
13
|
+
from redisbench_admin.run_local.local_helpers import (
|
|
14
|
+
check_benchmark_binaries_local_requirements,
|
|
15
|
+
run_local_benchmark,
|
|
16
|
+
)
|
|
17
|
+
|
|
18
|
+
from redisbench_admin.environments.oss_cluster import (
|
|
19
|
+
spin_up_local_redis_cluster,
|
|
20
|
+
setup_redis_cluster_from_conns,
|
|
21
|
+
)
|
|
22
|
+
from redisbench_admin.environments.oss_standalone import spin_up_local_redis
|
|
23
|
+
from redisbench_admin.run.cluster import cluster_init_steps
|
|
24
|
+
from redisbench_admin.run.common import (
|
|
25
|
+
run_redis_pre_steps,
|
|
26
|
+
check_dbconfig_tool_requirement,
|
|
27
|
+
prepare_benchmark_parameters,
|
|
28
|
+
dbconfig_keyspacelen_check,
|
|
29
|
+
)
|
|
30
|
+
from redisbench_admin.utils.benchmark_config import extract_redis_dbconfig_parameters
|
|
31
|
+
from redisbench_admin.utils.local import (
|
|
32
|
+
check_dataset_local_requirements,
|
|
33
|
+
is_process_alive,
|
|
34
|
+
)
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
def local_db_spin(
|
|
38
|
+
binary,
|
|
39
|
+
args,
|
|
40
|
+
benchmark_config,
|
|
41
|
+
clusterconfig,
|
|
42
|
+
dbdir_folder,
|
|
43
|
+
dirname,
|
|
44
|
+
local_module_file,
|
|
45
|
+
redis_processes,
|
|
46
|
+
required_modules,
|
|
47
|
+
setup_type,
|
|
48
|
+
shard_count,
|
|
49
|
+
flushall_on_every_test_start=False,
|
|
50
|
+
):
|
|
51
|
+
redis_conns = []
|
|
52
|
+
artifact_version = "n/a"
|
|
53
|
+
result = True
|
|
54
|
+
temporary_dir = tempfile.mkdtemp()
|
|
55
|
+
cluster_api_enabled = False
|
|
56
|
+
if setup_type == "oss-cluster":
|
|
57
|
+
cluster_api_enabled = True
|
|
58
|
+
dataset, dataset_name, _, _ = check_dataset_local_requirements(
|
|
59
|
+
benchmark_config,
|
|
60
|
+
temporary_dir,
|
|
61
|
+
dirname,
|
|
62
|
+
"./datasets",
|
|
63
|
+
"dbconfig",
|
|
64
|
+
shard_count,
|
|
65
|
+
cluster_api_enabled,
|
|
66
|
+
)
|
|
67
|
+
|
|
68
|
+
if args.skip_db_setup:
|
|
69
|
+
logging.info("Skipping DB Setup...")
|
|
70
|
+
if dataset is not None:
|
|
71
|
+
logging.info("Given this benchmark requires an RDB load will skip it...")
|
|
72
|
+
result = False
|
|
73
|
+
return (
|
|
74
|
+
result,
|
|
75
|
+
artifact_version,
|
|
76
|
+
cluster_api_enabled,
|
|
77
|
+
redis_conns,
|
|
78
|
+
redis_processes,
|
|
79
|
+
)
|
|
80
|
+
else:
|
|
81
|
+
# setup Redis
|
|
82
|
+
# copy the rdb to DB machine
|
|
83
|
+
redis_7 = args.redis_7
|
|
84
|
+
logging.info(
|
|
85
|
+
"Using local temporary dir to spin up Redis Instance. Path: {}".format(
|
|
86
|
+
temporary_dir
|
|
87
|
+
)
|
|
88
|
+
)
|
|
89
|
+
if dbdir_folder is not None:
|
|
90
|
+
from distutils.dir_util import copy_tree
|
|
91
|
+
|
|
92
|
+
copy_tree(dbdir_folder, temporary_dir)
|
|
93
|
+
logging.info(
|
|
94
|
+
"Copied entire content of {} into temporary path: {}".format(
|
|
95
|
+
dbdir_folder, temporary_dir
|
|
96
|
+
)
|
|
97
|
+
)
|
|
98
|
+
(
|
|
99
|
+
_,
|
|
100
|
+
_,
|
|
101
|
+
redis_configuration_parameters,
|
|
102
|
+
dataset_load_timeout_secs,
|
|
103
|
+
modules_configuration_parameters_map,
|
|
104
|
+
) = extract_redis_dbconfig_parameters(benchmark_config, "dbconfig")
|
|
105
|
+
|
|
106
|
+
logging.info(
|
|
107
|
+
"Using a dataset load timeout of {} seconds.".format(
|
|
108
|
+
dataset_load_timeout_secs
|
|
109
|
+
)
|
|
110
|
+
)
|
|
111
|
+
|
|
112
|
+
if setup_type == "oss-cluster":
|
|
113
|
+
cluster_api_enabled = True
|
|
114
|
+
shard_host = "127.0.0.1"
|
|
115
|
+
redis_processes, redis_conns = spin_up_local_redis_cluster(
|
|
116
|
+
binary,
|
|
117
|
+
temporary_dir,
|
|
118
|
+
shard_count,
|
|
119
|
+
shard_host,
|
|
120
|
+
args.port,
|
|
121
|
+
local_module_file,
|
|
122
|
+
redis_configuration_parameters,
|
|
123
|
+
dataset_load_timeout_secs,
|
|
124
|
+
modules_configuration_parameters_map,
|
|
125
|
+
redis_7,
|
|
126
|
+
)
|
|
127
|
+
|
|
128
|
+
status = setup_redis_cluster_from_conns(
|
|
129
|
+
redis_conns, shard_count, shard_host, args.port
|
|
130
|
+
)
|
|
131
|
+
if status is False:
|
|
132
|
+
raise Exception("Redis cluster setup failed. Failing test.")
|
|
133
|
+
|
|
134
|
+
if setup_type == "oss-standalone":
|
|
135
|
+
redis_processes = spin_up_local_redis(
|
|
136
|
+
binary,
|
|
137
|
+
args.port,
|
|
138
|
+
temporary_dir,
|
|
139
|
+
local_module_file,
|
|
140
|
+
redis_configuration_parameters,
|
|
141
|
+
dbdir_folder,
|
|
142
|
+
dataset_load_timeout_secs,
|
|
143
|
+
modules_configuration_parameters_map,
|
|
144
|
+
redis_7,
|
|
145
|
+
)
|
|
146
|
+
if setup_type == "oss-cluster":
|
|
147
|
+
for shardn, redis_process in enumerate(redis_processes):
|
|
148
|
+
logging.info(
|
|
149
|
+
"Checking if shard #{} process with pid={} is alive".format(
|
|
150
|
+
shardn + 1, redis_process.pid
|
|
151
|
+
)
|
|
152
|
+
)
|
|
153
|
+
if is_process_alive(redis_process) is False:
|
|
154
|
+
raise Exception("Redis process is not alive. Failing test.")
|
|
155
|
+
cluster_init_steps(clusterconfig, redis_conns, local_module_file)
|
|
156
|
+
|
|
157
|
+
if setup_type == "oss-standalone":
|
|
158
|
+
r = redis.Redis(port=args.port)
|
|
159
|
+
r.ping()
|
|
160
|
+
r.client_setname("redisbench-admin-standalone")
|
|
161
|
+
redis_conns.append(r)
|
|
162
|
+
|
|
163
|
+
if dataset is None:
|
|
164
|
+
if flushall_on_every_test_start:
|
|
165
|
+
logging.info("Will flush all data at test start...")
|
|
166
|
+
for shard_n, shard_conn in enumerate(redis_conns):
|
|
167
|
+
logging.info(f"Flushing all in shard {shard_n}...")
|
|
168
|
+
shard_conn.flushall()
|
|
169
|
+
|
|
170
|
+
if check_dbconfig_tool_requirement(benchmark_config):
|
|
171
|
+
logging.info("Detected the requirements to load data via client tool")
|
|
172
|
+
local_benchmark_output_filename = "{}/load-data.txt".format(temporary_dir)
|
|
173
|
+
(
|
|
174
|
+
benchmark_tool,
|
|
175
|
+
full_benchmark_path,
|
|
176
|
+
benchmark_tool_workdir,
|
|
177
|
+
) = check_benchmark_binaries_local_requirements(
|
|
178
|
+
benchmark_config, args.allowed_tools, "./binaries", "dbconfig"
|
|
179
|
+
)
|
|
180
|
+
|
|
181
|
+
# prepare the benchmark command
|
|
182
|
+
command, command_str = prepare_benchmark_parameters(
|
|
183
|
+
benchmark_config,
|
|
184
|
+
full_benchmark_path,
|
|
185
|
+
args.port,
|
|
186
|
+
"localhost",
|
|
187
|
+
local_benchmark_output_filename,
|
|
188
|
+
False,
|
|
189
|
+
benchmark_tool_workdir,
|
|
190
|
+
cluster_api_enabled,
|
|
191
|
+
"dbconfig",
|
|
192
|
+
)
|
|
193
|
+
|
|
194
|
+
# run the benchmark
|
|
195
|
+
load_via_benchmark_start_time = datetime.datetime.now()
|
|
196
|
+
run_local_benchmark(benchmark_tool, command)
|
|
197
|
+
load_via_benchmark_end_time = datetime.datetime.now()
|
|
198
|
+
load_via_benchmark_duration_seconds = calculate_client_tool_duration_and_check(
|
|
199
|
+
load_via_benchmark_end_time, load_via_benchmark_start_time
|
|
200
|
+
)
|
|
201
|
+
logging.info(
|
|
202
|
+
"Loading data via benchmark tool took {} secs.".format(
|
|
203
|
+
load_via_benchmark_duration_seconds
|
|
204
|
+
)
|
|
205
|
+
)
|
|
206
|
+
|
|
207
|
+
dbconfig_keyspacelen_check(
|
|
208
|
+
benchmark_config,
|
|
209
|
+
redis_conns,
|
|
210
|
+
)
|
|
211
|
+
|
|
212
|
+
artifact_version = run_redis_pre_steps(
|
|
213
|
+
benchmark_config, redis_conns[0], required_modules
|
|
214
|
+
)
|
|
215
|
+
|
|
216
|
+
return result, artifact_version, cluster_api_enabled, redis_conns, redis_processes
|
{redisbench_admin-0.10.20 → redisbench_admin-0.10.22}/redisbench_admin/run_local/run_local.py
RENAMED
|
@@ -11,6 +11,7 @@ import sys
|
|
|
11
11
|
import datetime
|
|
12
12
|
import traceback
|
|
13
13
|
import redis
|
|
14
|
+
from redisbench_admin.run.git import git_vars_crosscheck
|
|
14
15
|
|
|
15
16
|
import redisbench_admin.run.metrics
|
|
16
17
|
from redisbench_admin.profilers.perf import PERF_CALLGRAPH_MODE
|
|
@@ -30,7 +31,10 @@ from redisbench_admin.run.metrics import (
|
|
|
30
31
|
from_info_to_overall_shard_cpu,
|
|
31
32
|
collect_cpu_data,
|
|
32
33
|
)
|
|
33
|
-
from redisbench_admin.run.redistimeseries import
|
|
34
|
+
from redisbench_admin.run.redistimeseries import (
|
|
35
|
+
datasink_profile_tabular_data,
|
|
36
|
+
timeseries_test_sucess_flow,
|
|
37
|
+
)
|
|
34
38
|
from redisbench_admin.run.run import (
|
|
35
39
|
calculate_client_tool_duration_and_check,
|
|
36
40
|
define_benchmark_plan,
|
|
@@ -49,6 +53,7 @@ from redisbench_admin.profilers.profilers_local import (
|
|
|
49
53
|
from redisbench_admin.utils.benchmark_config import (
|
|
50
54
|
prepare_benchmark_definitions,
|
|
51
55
|
results_dict_kpi_check,
|
|
56
|
+
get_metadata_tags,
|
|
52
57
|
)
|
|
53
58
|
from redisbench_admin.utils.local import (
|
|
54
59
|
get_local_run_full_filename,
|
|
@@ -67,20 +72,28 @@ def run_local_command_logic(args, project_name, project_version):
|
|
|
67
72
|
project_name=project_name, project_version=project_version
|
|
68
73
|
)
|
|
69
74
|
)
|
|
75
|
+
tf_github_org = args.github_org
|
|
76
|
+
tf_github_actor = args.github_actor
|
|
77
|
+
tf_github_repo = args.github_repo
|
|
78
|
+
tf_github_sha = args.github_sha
|
|
79
|
+
tf_github_branch = args.github_branch
|
|
80
|
+
|
|
70
81
|
(
|
|
82
|
+
github_actor,
|
|
83
|
+
github_branch,
|
|
71
84
|
github_org_name,
|
|
72
85
|
github_repo_name,
|
|
73
86
|
github_sha,
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
) = extract_git_vars()
|
|
87
|
+
) = git_vars_crosscheck(
|
|
88
|
+
tf_github_actor, tf_github_branch, tf_github_org, tf_github_repo, tf_github_sha
|
|
89
|
+
)
|
|
78
90
|
|
|
79
91
|
dbdir_folder = args.dbdir_folder
|
|
80
92
|
os.path.abspath(".")
|
|
81
93
|
required_modules = args.required_module
|
|
82
94
|
profilers_enabled = args.enable_profilers
|
|
83
95
|
s3_bucket_name = args.s3_bucket_name
|
|
96
|
+
flushall_on_every_test_start = args.flushall_on_every_test_start
|
|
84
97
|
profilers_list = []
|
|
85
98
|
if profilers_enabled:
|
|
86
99
|
profilers_list = args.profilers.split(",")
|
|
@@ -125,7 +138,7 @@ def run_local_command_logic(args, project_name, project_version):
|
|
|
125
138
|
_,
|
|
126
139
|
benchmark_definitions,
|
|
127
140
|
default_metrics,
|
|
128
|
-
|
|
141
|
+
exporter_timemetric_path,
|
|
129
142
|
default_specs,
|
|
130
143
|
clusterconfig,
|
|
131
144
|
) = prepare_benchmark_definitions(args)
|
|
@@ -189,6 +202,8 @@ def run_local_command_logic(args, project_name, project_version):
|
|
|
189
202
|
if " " in binary:
|
|
190
203
|
binary = binary.split(" ")
|
|
191
204
|
(
|
|
205
|
+
result_db_spin,
|
|
206
|
+
artifact_version,
|
|
192
207
|
cluster_api_enabled,
|
|
193
208
|
redis_conns,
|
|
194
209
|
redis_processes,
|
|
@@ -204,7 +219,13 @@ def run_local_command_logic(args, project_name, project_version):
|
|
|
204
219
|
required_modules,
|
|
205
220
|
setup_type,
|
|
206
221
|
shard_count,
|
|
222
|
+
flushall_on_every_test_start,
|
|
207
223
|
)
|
|
224
|
+
if result_db_spin is False:
|
|
225
|
+
logging.warning(
|
|
226
|
+
"Skipping this test given DB spin stage failed..."
|
|
227
|
+
)
|
|
228
|
+
continue
|
|
208
229
|
if benchmark_type == "read-only":
|
|
209
230
|
logging.info(
|
|
210
231
|
"Given the benchmark for this setup is ready-only we will prepare to reuse it on the next read-only benchmarks (if any )."
|
|
@@ -352,6 +373,7 @@ def run_local_command_logic(args, project_name, project_version):
|
|
|
352
373
|
s3_bucket_name,
|
|
353
374
|
test_name,
|
|
354
375
|
)
|
|
376
|
+
|
|
355
377
|
if (
|
|
356
378
|
profilers_enabled
|
|
357
379
|
and args.push_results_redistimeseries
|
|
@@ -377,7 +399,7 @@ def run_local_command_logic(args, project_name, project_version):
|
|
|
377
399
|
start_time_str,
|
|
378
400
|
stdout,
|
|
379
401
|
)
|
|
380
|
-
|
|
402
|
+
results_dict = {}
|
|
381
403
|
with open(
|
|
382
404
|
local_benchmark_output_filename, "r"
|
|
383
405
|
) as json_file:
|
|
@@ -395,6 +417,31 @@ def run_local_command_logic(args, project_name, project_version):
|
|
|
395
417
|
return_code = results_dict_kpi_check(
|
|
396
418
|
benchmark_config, results_dict, return_code
|
|
397
419
|
)
|
|
420
|
+
|
|
421
|
+
metadata_tags = get_metadata_tags(benchmark_config)
|
|
422
|
+
(
|
|
423
|
+
_,
|
|
424
|
+
branch_target_tables,
|
|
425
|
+
) = timeseries_test_sucess_flow(
|
|
426
|
+
args.push_results_redistimeseries,
|
|
427
|
+
artifact_version,
|
|
428
|
+
benchmark_config,
|
|
429
|
+
benchmark_duration_seconds,
|
|
430
|
+
0,
|
|
431
|
+
default_metrics,
|
|
432
|
+
setup_name,
|
|
433
|
+
setup_type,
|
|
434
|
+
exporter_timemetric_path,
|
|
435
|
+
results_dict,
|
|
436
|
+
rts,
|
|
437
|
+
start_time_ms,
|
|
438
|
+
test_name,
|
|
439
|
+
github_branch,
|
|
440
|
+
github_org_name,
|
|
441
|
+
github_repo_name,
|
|
442
|
+
tf_triggering_env,
|
|
443
|
+
)
|
|
444
|
+
|
|
398
445
|
if setup_details["env"] is None:
|
|
399
446
|
if args.keep_env_and_topo is False:
|
|
400
447
|
for conn in redis_conns:
|
|
@@ -21,7 +21,6 @@ TF_OVERRIDE_NAME = os.getenv("TF_OVERRIDE_NAME", None)
|
|
|
21
21
|
REMOTE_DB_PORT = int(os.getenv("REMOTE_DB_PORT", "6379"))
|
|
22
22
|
REMOTE_DB_PASS = os.getenv("REMOTE_DB_PASS", None)
|
|
23
23
|
REMOTE_PRIVATE_KEYNAME = os.getenv("REMOTE_PRIVATE_KEYNAME", DEFAULT_PRIVATE_KEY)
|
|
24
|
-
REMOTE_SKIP_DB_SETUP = bool(int(os.getenv("REMOTE_SKIP_DB_SETUP", "0")))
|
|
25
24
|
FLUSHALL_AT_START = bool(int(os.getenv("FLUSHALL_AT_START", "0")))
|
|
26
25
|
FLUSHALL_AT_END = bool(int(os.getenv("FLUSHALL_AT_END", "0")))
|
|
27
26
|
IGNORE_KEYSPACE_ERRORS = bool(int(os.getenv("IGNORE_KEYSPACE_ERRORS", "0")))
|
|
@@ -60,12 +59,6 @@ def create_run_remote_arguments(parser):
|
|
|
60
59
|
)
|
|
61
60
|
parser.add_argument("--db_port", type=int, default=REMOTE_DB_PORT)
|
|
62
61
|
parser.add_argument("--db_pass", type=str, default=REMOTE_DB_PASS)
|
|
63
|
-
parser.add_argument(
|
|
64
|
-
"--skip-db-setup",
|
|
65
|
-
type=bool,
|
|
66
|
-
default=REMOTE_SKIP_DB_SETUP,
|
|
67
|
-
help="skip db setup/teardown steps. Usefull when you want to target an existing DB",
|
|
68
|
-
)
|
|
69
62
|
parser.add_argument(
|
|
70
63
|
"--flushall_on_every_test_start",
|
|
71
64
|
type=bool,
|
|
@@ -30,7 +30,7 @@ from redisbench_admin.utils.utils import (
|
|
|
30
30
|
)
|
|
31
31
|
|
|
32
32
|
# environment variables
|
|
33
|
-
PERFORMANCE_RTS_PUSH = bool(os.getenv("PUSH_RTS",
|
|
33
|
+
PERFORMANCE_RTS_PUSH = bool(int(os.getenv("PUSH_RTS", "0")))
|
|
34
34
|
PERFORMANCE_RTS_AUTH = os.getenv("PERFORMANCE_RTS_AUTH", None)
|
|
35
35
|
PERFORMANCE_RTS_USER = os.getenv("PERFORMANCE_RTS_USER", None)
|
|
36
36
|
PERFORMANCE_RTS_HOST = os.getenv("PERFORMANCE_RTS_HOST", "localhost")
|
|
@@ -51,7 +51,7 @@ def get_git_root(path):
|
|
|
51
51
|
|
|
52
52
|
def view_bar_simple(a, b):
|
|
53
53
|
res = a / int(b) * 100
|
|
54
|
-
sys.stdout.write("\r Complete
|
|
54
|
+
sys.stdout.write("\r Complete percent: %.2f %%" % res)
|
|
55
55
|
sys.stdout.flush()
|
|
56
56
|
|
|
57
57
|
|
|
@@ -82,7 +82,7 @@ entry_points = \
|
|
|
82
82
|
|
|
83
83
|
setup_kwargs = {
|
|
84
84
|
'name': 'redisbench-admin',
|
|
85
|
-
'version': '0.10.
|
|
85
|
+
'version': '0.10.22',
|
|
86
86
|
'description': 'Redis benchmark run helper. A wrapper around Redis and Redis Modules benchmark tools ( ftsb_redisearch, memtier_benchmark, redis-benchmark, aibench, etc... ).',
|
|
87
87
|
'long_description': '[](https://codecov.io/gh/redis-performance/redisbench-admin)\n\n\n\n# [redisbench-admin](https://github.com/redis-performance/redisbench-admin)\n\nRedis benchmark run helper can help you with the following tasks:\n\n- Setup abd teardown of benchmarking infrastructure specified\n on [redis-performance/testing-infrastructure](https://github.com/redis-performance/testing-infrastructure)\n- Setup and teardown of an Redis and Redis Modules DBs for benchmarking\n- Management of benchmark data and specifications across different setups\n- Running benchmarks and recording results\n- Exporting performance results in several formats (CSV, RedisTimeSeries, JSON)\n- Finding on-cpu, off-cpu, io, and threading performance problems by attaching profiling tools/probers ( perf (a.k.a. perf_events), bpf tooling, vtune )\n- **[SOON]** Finding performance problems by attaching telemetry probes\n\nCurrent supported benchmark tools:\n\n- [redis-benchmark](https://github.com/redis/redis)\n- [memtier_benchmark](https://github.com/RedisLabs/memtier_benchmark)\n- [redis-benchmark-go](https://github.com/redis-performance/redis-benchmark-go)\n- [YCSB](https://github.com/RediSearch/YCSB)\n- [tsbs](https://github.com/RedisTimeSeries/tsbs)\n- [redisgraph-benchmark-go](https://github.com/RedisGraph/redisgraph-benchmark-go)\n- [ftsb_redisearch](https://github.com/RediSearch/ftsb)\n- [ann-benchmarks](https://github.com/RedisAI/ann-benchmarks)\n\n## Installation\n\nInstallation is done using pip, the package installer for Python, in the following manner:\n\n```bash\npython3 -m pip install redisbench-admin\n```\n\n## Profiler daemon\n\nYou can use the profiler daemon by itself in the following manner. \nOn the target machine do as follow:\n\n```bash\npip3 install --upgrade pip\npip3 install redisbench-admin --ignore-installed PyYAML\n\n# install perf\napt install linux-tools-common linux-tools-generic linux-tools-`uname -r` -y\n\n# ensure perf is working\nperf --version\n\n# install awscli\nsnap install aws-cli --classic\n\n\n# configure aws\naws configure\n\n# start the perf-daemon\nperf-daemon start\nWARNING:root:Unable to detected github_actor. caught the following error: No section: \'user\'\nWritting log to /tmp/perf-daemon.log\nStarting perf-daemon. PID file /tmp/perfdaemon.pid. Daemon workdir: /root/RedisGraph\n\n# check daemon is working appropriatelly\ncurl localhost:5000/ping\n\n# start a profile\ncurl -X POST localhost:5000/profiler/perf/start/<pid to profile>\n\n# stop a profile\ncurl -X POST -d \'{"aws_access_key_id":$AWS_ACCESS_KEY_ID,"aws_secret_access_key":$AWS_SECRET_ACCESS_KEY}\' localhost:5000/profiler/perf/stop/<pid to profile>\n```\n\n\n## Development\n\n1. Install [pypoetry](https://python-poetry.org/) to manage your dependencies and trigger tooling.\n```sh\npip install poetry\n```\n\n2. Installing dependencies from lock file\n\n```\npoetry install\n```\n\n### Running formaters\n\n```sh\npoetry run black .\n```\n\n\n### Running linters\n\n```sh\npoetry run flake8\n```\n\n\n### Running tests\n\nA test suite is provided, and can be run with:\n\n```sh\n$ tox\n```\n\nTo run a specific test:\n```sh\n$ tox -- tests/test_redistimeseries.py\n```\n\n## License\n\nredisbench-admin is distributed under the BSD3 license - see [LICENSE](LICENSE)\n',
|
|
88
88
|
'author': 'filipecosta90',
|
|
@@ -1,185 +0,0 @@
|
|
|
1
|
-
# BSD 3-Clause License
|
|
2
|
-
#
|
|
3
|
-
# Copyright (c) 2021., Redis Labs Modules
|
|
4
|
-
# All rights reserved.
|
|
5
|
-
#
|
|
6
|
-
import logging
|
|
7
|
-
import tempfile
|
|
8
|
-
import datetime
|
|
9
|
-
|
|
10
|
-
import redis
|
|
11
|
-
|
|
12
|
-
from redisbench_admin.run.run import calculate_client_tool_duration_and_check
|
|
13
|
-
from redisbench_admin.run_local.local_helpers import (
|
|
14
|
-
check_benchmark_binaries_local_requirements,
|
|
15
|
-
run_local_benchmark,
|
|
16
|
-
)
|
|
17
|
-
|
|
18
|
-
from redisbench_admin.environments.oss_cluster import (
|
|
19
|
-
spin_up_local_redis_cluster,
|
|
20
|
-
setup_redis_cluster_from_conns,
|
|
21
|
-
)
|
|
22
|
-
from redisbench_admin.environments.oss_standalone import spin_up_local_redis
|
|
23
|
-
from redisbench_admin.run.cluster import cluster_init_steps
|
|
24
|
-
from redisbench_admin.run.common import (
|
|
25
|
-
run_redis_pre_steps,
|
|
26
|
-
check_dbconfig_tool_requirement,
|
|
27
|
-
prepare_benchmark_parameters,
|
|
28
|
-
dbconfig_keyspacelen_check,
|
|
29
|
-
)
|
|
30
|
-
from redisbench_admin.utils.benchmark_config import extract_redis_dbconfig_parameters
|
|
31
|
-
from redisbench_admin.utils.local import (
|
|
32
|
-
check_dataset_local_requirements,
|
|
33
|
-
is_process_alive,
|
|
34
|
-
)
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
def local_db_spin(
|
|
38
|
-
binary,
|
|
39
|
-
args,
|
|
40
|
-
benchmark_config,
|
|
41
|
-
clusterconfig,
|
|
42
|
-
dbdir_folder,
|
|
43
|
-
dirname,
|
|
44
|
-
local_module_file,
|
|
45
|
-
redis_processes,
|
|
46
|
-
required_modules,
|
|
47
|
-
setup_type,
|
|
48
|
-
shard_count,
|
|
49
|
-
):
|
|
50
|
-
# setup Redis
|
|
51
|
-
# copy the rdb to DB machine
|
|
52
|
-
temporary_dir = tempfile.mkdtemp()
|
|
53
|
-
redis_7 = args.redis_7
|
|
54
|
-
logging.info(
|
|
55
|
-
"Using local temporary dir to spin up Redis Instance. Path: {}".format(
|
|
56
|
-
temporary_dir
|
|
57
|
-
)
|
|
58
|
-
)
|
|
59
|
-
if dbdir_folder is not None:
|
|
60
|
-
from distutils.dir_util import copy_tree
|
|
61
|
-
|
|
62
|
-
copy_tree(dbdir_folder, temporary_dir)
|
|
63
|
-
logging.info(
|
|
64
|
-
"Copied entire content of {} into temporary path: {}".format(
|
|
65
|
-
dbdir_folder, temporary_dir
|
|
66
|
-
)
|
|
67
|
-
)
|
|
68
|
-
(
|
|
69
|
-
_,
|
|
70
|
-
_,
|
|
71
|
-
redis_configuration_parameters,
|
|
72
|
-
dataset_load_timeout_secs,
|
|
73
|
-
modules_configuration_parameters_map,
|
|
74
|
-
) = extract_redis_dbconfig_parameters(benchmark_config, "dbconfig")
|
|
75
|
-
cluster_api_enabled = False
|
|
76
|
-
logging.info(
|
|
77
|
-
"Using a dataset load timeout of {} seconds.".format(dataset_load_timeout_secs)
|
|
78
|
-
)
|
|
79
|
-
redis_conns = []
|
|
80
|
-
if setup_type == "oss-cluster":
|
|
81
|
-
cluster_api_enabled = True
|
|
82
|
-
shard_host = "127.0.0.1"
|
|
83
|
-
redis_processes, redis_conns = spin_up_local_redis_cluster(
|
|
84
|
-
binary,
|
|
85
|
-
temporary_dir,
|
|
86
|
-
shard_count,
|
|
87
|
-
shard_host,
|
|
88
|
-
args.port,
|
|
89
|
-
local_module_file,
|
|
90
|
-
redis_configuration_parameters,
|
|
91
|
-
dataset_load_timeout_secs,
|
|
92
|
-
modules_configuration_parameters_map,
|
|
93
|
-
redis_7,
|
|
94
|
-
)
|
|
95
|
-
|
|
96
|
-
status = setup_redis_cluster_from_conns(
|
|
97
|
-
redis_conns, shard_count, shard_host, args.port
|
|
98
|
-
)
|
|
99
|
-
if status is False:
|
|
100
|
-
raise Exception("Redis cluster setup failed. Failing test.")
|
|
101
|
-
|
|
102
|
-
dataset, dataset_name, _, _ = check_dataset_local_requirements(
|
|
103
|
-
benchmark_config,
|
|
104
|
-
temporary_dir,
|
|
105
|
-
dirname,
|
|
106
|
-
"./datasets",
|
|
107
|
-
"dbconfig",
|
|
108
|
-
shard_count,
|
|
109
|
-
cluster_api_enabled,
|
|
110
|
-
)
|
|
111
|
-
if setup_type == "oss-standalone":
|
|
112
|
-
redis_processes = spin_up_local_redis(
|
|
113
|
-
binary,
|
|
114
|
-
args.port,
|
|
115
|
-
temporary_dir,
|
|
116
|
-
local_module_file,
|
|
117
|
-
redis_configuration_parameters,
|
|
118
|
-
dbdir_folder,
|
|
119
|
-
dataset_load_timeout_secs,
|
|
120
|
-
modules_configuration_parameters_map,
|
|
121
|
-
redis_7,
|
|
122
|
-
)
|
|
123
|
-
|
|
124
|
-
r = redis.Redis(port=args.port)
|
|
125
|
-
r.ping()
|
|
126
|
-
r.client_setname("redisbench-admin-stadalone")
|
|
127
|
-
redis_conns.append(r)
|
|
128
|
-
if setup_type == "oss-cluster":
|
|
129
|
-
for shardn, redis_process in enumerate(redis_processes):
|
|
130
|
-
logging.info(
|
|
131
|
-
"Checking if shard #{} process with pid={} is alive".format(
|
|
132
|
-
shardn + 1, redis_process.pid
|
|
133
|
-
)
|
|
134
|
-
)
|
|
135
|
-
if is_process_alive(redis_process) is False:
|
|
136
|
-
raise Exception("Redis process is not alive. Failing test.")
|
|
137
|
-
|
|
138
|
-
if setup_type == "oss-cluster":
|
|
139
|
-
cluster_init_steps(clusterconfig, redis_conns, local_module_file)
|
|
140
|
-
|
|
141
|
-
if check_dbconfig_tool_requirement(benchmark_config):
|
|
142
|
-
logging.info("Detected the requirements to load data via client tool")
|
|
143
|
-
local_benchmark_output_filename = "{}/load-data.txt".format(temporary_dir)
|
|
144
|
-
(
|
|
145
|
-
benchmark_tool,
|
|
146
|
-
full_benchmark_path,
|
|
147
|
-
benchmark_tool_workdir,
|
|
148
|
-
) = check_benchmark_binaries_local_requirements(
|
|
149
|
-
benchmark_config, args.allowed_tools, "./binaries", "dbconfig"
|
|
150
|
-
)
|
|
151
|
-
|
|
152
|
-
# prepare the benchmark command
|
|
153
|
-
command, command_str = prepare_benchmark_parameters(
|
|
154
|
-
benchmark_config,
|
|
155
|
-
full_benchmark_path,
|
|
156
|
-
args.port,
|
|
157
|
-
"localhost",
|
|
158
|
-
local_benchmark_output_filename,
|
|
159
|
-
False,
|
|
160
|
-
benchmark_tool_workdir,
|
|
161
|
-
cluster_api_enabled,
|
|
162
|
-
"dbconfig",
|
|
163
|
-
)
|
|
164
|
-
|
|
165
|
-
# run the benchmark
|
|
166
|
-
load_via_benchmark_start_time = datetime.datetime.now()
|
|
167
|
-
run_local_benchmark(benchmark_tool, command)
|
|
168
|
-
load_via_benchmark_end_time = datetime.datetime.now()
|
|
169
|
-
load_via_benchmark_duration_seconds = calculate_client_tool_duration_and_check(
|
|
170
|
-
load_via_benchmark_end_time, load_via_benchmark_start_time
|
|
171
|
-
)
|
|
172
|
-
logging.info(
|
|
173
|
-
"Loading data via benchmark tool took {} secs.".format(
|
|
174
|
-
load_via_benchmark_duration_seconds
|
|
175
|
-
)
|
|
176
|
-
)
|
|
177
|
-
|
|
178
|
-
dbconfig_keyspacelen_check(
|
|
179
|
-
benchmark_config,
|
|
180
|
-
redis_conns,
|
|
181
|
-
)
|
|
182
|
-
|
|
183
|
-
run_redis_pre_steps(benchmark_config, redis_conns[0], required_modules)
|
|
184
|
-
|
|
185
|
-
return cluster_api_enabled, redis_conns, redis_processes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|