Assing stateKeyNID if we don't have the expected count

This commit is contained in:
Till Faelligen 2022-11-11 10:04:24 +01:00
parent efa50253f6
commit f802598abb
No known key found for this signature in database
GPG key ID: ACCDC9606D472758

View file

@ -110,6 +110,19 @@ func (d *Database) eventStateKeyNIDs(
for eventStateKey, nid := range nids {
result[eventStateKey] = nid
}
// We received some nids, but are still missing some, work out which and create them
if len(eventStateKeys) < len(result) {
for _, eventStateKey := range eventStateKeys {
if _, ok := result[eventStateKey]; ok {
continue
}
nid, err := d.assignStateKeyNID(ctx, txn, eventStateKey)
if err != nil {
return result, err
}
result[eventStateKey] = nid
}
}
return result, nil
}