homelab/orchestration/ansible/roles
Dan V 7a8ea3e88f fix: correct CPU and memory slot deduplication on HP ProLiant
- discovery.cpp: remove K_SERIAL emission from dmidecode CPU "ID" field
  (it is the CPUID instruction result, identical across matching processors
  in a multi-socket system, not a unique per-slot serial number)
  → upsert_part now falls through to K_SOCKET natural key, correctly
    inserting both "Proc 1" and "Proc 2" as separate records

- discovery.cpp: skip memory slot blocks with missing or empty Locator
  (HP ProLiant firmware returns a phantom type-17 block with no Locator;
  this was causing a 19th slot record to be inserted with empty locator
  that could never be deduplicated on subsequent runs)

Verified on HP ProLiant DL360 G7:
  cpu=2, cpu_slots=2, memory_sticks=12, memory_slots=18, disks=5, nics=4

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-31 22:50:33 +02:00
..
inventory-cli/files fix: correct CPU and memory slot deduplication on HP ProLiant 2026-03-31 22:50:33 +02:00