Task #8778
Story #8756: Ensure replica auditor is effective
Ensure SystemMetadata replica auditing updates are saved and broadcast
0%
Description
In MNAuditTask.call()
, we process a batch of pids in need of auditing per Member Node. For each pid
in the auditPIDs
list, we call MN.getChecksum()
. Regardless of success or failure, we set the Replica.replicaVerified
date in the SystemMetadata
. However, the task has a copy of the system metadata from hzSystemMetadata.get()
, and the task doesn't subsequently call hzSystemMetadata.put(pid, sysmeta)
. This means that while we are auditing content, we may just not be recording the results! I need to look at the code more to see if we make an API call to CN.updateSystemMetadata()
elsewhere, but I would expect theMNAuditTask
to do this. Also, if this happens in the task, we also need to broadcast the system metadata change to the authoritative MN and all replica MNS. Lastly, we need to update the serialVersion
field to show the other CNs what the most recent replica list is.