30 lines
1.5 KiB
Python
30 lines
1.5 KiB
Python
#!/usr/bin/env python3
|
|
"""wanderer_mem.py — R-1338 on 9202: a fresh Wanderer from the drill (v0.21.2 + MEILI_MAX_INDEXING_MEMORY), the cap read
|
|
back from the running search container, the fixture's seed, box_walk's own 600 s memory soak, the seed read back, removed."""
|
|
import json, os, sys
|
|
sys.path.insert(0, "/mnt/5_hdd/felhom.eu/git/app-catalog-felhom.eu/scripts")
|
|
import box_walk as w
|
|
import upgrade_fixtures_box as fb
|
|
EV = os.environ["EV"]; os.makedirs(EV, exist_ok=True)
|
|
rec = {}
|
|
w.login()
|
|
try:
|
|
if w.stack("wanderer").get("deployed"):
|
|
w.remove("wanderer")
|
|
w.refresh_box_mirror(); w.sync_rescan()
|
|
if not w.deploy("wanderer", "hike"):
|
|
print("install failed"); sys.exit(1)
|
|
rec["cap_in_container"] = [l for l in w.guest("docker inspect -f '{{range .Config.Env}}{{println .}}{{end}}' wanderer-search").split("\n") if "MAX_INDEXING" in l]
|
|
t = fb.Wanderer().seed(w, "hike", w.say)
|
|
rec["seed"] = bool(t)
|
|
rec["memory"] = w.soak("wanderer", 600)
|
|
rec["read_back"] = bool(t) and fb.Wanderer().verify(w, "hike", t, w.say)
|
|
finally:
|
|
rec["log"] = w.LOG
|
|
json.dump(rec, open(os.path.join(EV, "wanderer-mem-9202.json"), "w"), indent=1, default=str)
|
|
if w.stack("wanderer").get("deployed"):
|
|
w.remove("wanderer")
|
|
c = (rec.get("memory") or {}).get("containers") or {}
|
|
print("cap:", rec.get("cap_in_container"), "| read back:", rec.get("read_back"))
|
|
print({k: (v.get("anon_peak_pct"), v.get("oom_kill_delta"), v.get("restarts_delta")) for k, v in c.items()})
|