netpanzer-0001: UnitInterface::removeUnit std::find on PlayerUnitList vector O(D*U) during mass destruction. Fix: unordered_map index + swap-and-pop O(1) removal. MEDIUM, 3.7x at U=2000 D=1000. netpanzer-0002: UnitBucketArray::getUnitBucketIndex scans all buckets O(B*U) per misplaced unit in sortBucketArray fallback path. Fix: unordered_map<UnitID, bucket_index> for O(1) lookup. HIGH, 9.4x at B=200 U=2000 M=500. MOAD 0003 (ThreadLocal): CLEAN, no thread_local patterns MOAD 0004 (Logged Secret): CLEAN, passwords not logged verbatim MOAD 0005 (Thundering Herd): CLEAN, PathCache is single-threaded |
||
|---|---|---|
| .. | ||
| test | ||
| test_bucket_lookup.cpp | ||