Minor bug fixes with latest event updater

This commit is contained in:
Neil Alexander 2022-02-03 13:17:24 +00:00
parent 31cc9be470
commit 9a2210495b
No known key found for this signature in database
GPG key ID: A02A2019A2BB0944
3 changed files with 10 additions and 3 deletions

View file

@ -405,7 +405,7 @@ func (u *latestEventsUpdater) extraEventsForIDs(roomVersion gomatrixserverlib.Ro
if len(extraEventIDs) == 0 { if len(extraEventIDs) == 0 {
return nil, nil return nil, nil
} }
extraEvents, err := u.api.DB.EventsFromIDs(u.ctx, extraEventIDs) extraEvents, err := u.updater.EventsFromIDs(u.ctx, extraEventIDs)
if err != nil { if err != nil {
return nil, err return nil, err
} }
@ -428,7 +428,7 @@ func (u *latestEventsUpdater) stateEventMap() (map[types.EventNID]string, error)
stateEventNIDs = append(stateEventNIDs, entry.EventNID) stateEventNIDs = append(stateEventNIDs, entry.EventNID)
} }
stateEventNIDs = stateEventNIDs[:util.SortAndUnique(eventNIDSorter(stateEventNIDs))] stateEventNIDs = stateEventNIDs[:util.SortAndUnique(eventNIDSorter(stateEventNIDs))]
return u.api.DB.EventIDs(u.ctx, stateEventNIDs) return u.updater.EventIDs(u.ctx, stateEventNIDs)
} }
type eventNIDSorter []types.EventNID type eventNIDSorter []types.EventNID

View file

@ -181,6 +181,12 @@ func (u *RoomUpdater) RoomInfo(ctx context.Context, roomID string) (*types.RoomI
return u.d.roomInfo(ctx, u.txn, roomID) return u.d.roomInfo(ctx, u.txn, roomID)
} }
func (u *RoomUpdater) EventIDs(
ctx context.Context, eventNIDs []types.EventNID,
) (map[types.EventNID]string, error) {
return u.d.EventsTable.BulkSelectEventID(ctx, u.txn, eventNIDs)
}
func (u *RoomUpdater) StateAtEventIDs( func (u *RoomUpdater) StateAtEventIDs(
ctx context.Context, eventIDs []string, ctx context.Context, eventIDs []string,
) ([]types.StateAtEvent, error) { ) ([]types.StateAtEvent, error) {

View file

@ -93,7 +93,8 @@ func (s *stateBlockStatements) BulkInsertStateData(
if err != nil { if err != nil {
return 0, fmt.Errorf("json.Marshal: %w", err) return 0, fmt.Errorf("json.Marshal: %w", err)
} }
err = s.insertStateDataStmt.QueryRowContext( stmt := sqlutil.TxStmt(txn, s.insertStateDataStmt)
err = stmt.QueryRowContext(
ctx, nids.Hash(), js, ctx, nids.Hash(), js,
).Scan(&id) ).Scan(&id)
return return