Optimize storage, GC, and upload hot paths
This commit is contained in:
@@ -0,0 +1,32 @@
|
||||
#!/usr/bin/env bash
|
||||
# Run the dedup-GC phase-1 benchmark against a fresh database in the existing
|
||||
# local PostgreSQL container. The trap drops the database even on interruption.
|
||||
set -euo pipefail
|
||||
|
||||
container="${OXICLOUD_POSTGRES_CONTAINER:-oxicloud-postgres-1}"
|
||||
db="oxicloud_perf_gc_${$}_${RANDOM}"
|
||||
repo_root="$(cd "$(dirname "$0")/../.." && pwd)"
|
||||
pg_host="${OXICLOUD_POSTGRES_HOST:-127.0.0.1}"
|
||||
|
||||
cleanup() {
|
||||
docker exec "$container" dropdb --if-exists --force -U postgres "$db" >/dev/null 2>&1 || true
|
||||
}
|
||||
trap cleanup EXIT INT TERM
|
||||
|
||||
docker exec "$container" createdb -U postgres "$db"
|
||||
|
||||
# Pin IPv4 and disable TLS explicitly. The local container exposes plain TCP;
|
||||
# avoiding localhost/SSL negotiation keeps the harness independent of host
|
||||
# resolver and optional SQLx TLS features.
|
||||
export DATABASE_URL="postgres://postgres:postgres@${pg_host}:5432/$db?sslmode=disable"
|
||||
export GC_MANIFEST_COUNTS="${GC_MANIFEST_COUNTS:-10000,50000}"
|
||||
export GC_CHUNKS_PER_MANIFEST="${GC_CHUNKS_PER_MANIFEST:-16}"
|
||||
export GC_SHARED_PERCENT="${GC_SHARED_PERCENT:-50}"
|
||||
export GC_SHARED_POOL="${GC_SHARED_POOL:-512}"
|
||||
export GC_WARMUPS="${GC_WARMUPS:-1}"
|
||||
export GC_SAMPLES="${GC_SAMPLES:-5}"
|
||||
|
||||
cargo run \
|
||||
--release \
|
||||
--manifest-path "$repo_root/tools/perf-audit/Cargo.toml" \
|
||||
--bin gc_manifest_batch
|
||||
Reference in New Issue
Block a user