Return some more usefully wrapped errors when doing sync

This commit is contained in:
Neil Alexander 2022-04-20 15:32:37 +01:00
parent a9f0a390c6
commit 51a929e332
No known key found for this signature in database
GPG key ID: A02A2019A2BB0944

View file

@ -3,6 +3,7 @@ package streams
import ( import (
"context" "context"
"database/sql" "database/sql"
"fmt"
"sync" "sync"
"time" "time"
@ -228,13 +229,13 @@ func (p *PDUStreamProvider) addRoomDeltaToResponse(
eventFilter, true, true, eventFilter, true, true,
) )
if err != nil { if err != nil {
return r.From, err return r.From, fmt.Errorf("p.DB.RecentEvents: %w", err)
} }
recentEvents := p.DB.StreamEventsToEvents(device, recentStreamEvents) recentEvents := p.DB.StreamEventsToEvents(device, recentStreamEvents)
delta.StateEvents = removeDuplicates(delta.StateEvents, recentEvents) // roll back delta.StateEvents = removeDuplicates(delta.StateEvents, recentEvents) // roll back
prevBatch, err := p.DB.GetBackwardTopologyPos(ctx, recentStreamEvents) prevBatch, err := p.DB.GetBackwardTopologyPos(ctx, recentStreamEvents)
if err != nil { if err != nil {
return r.From, err return r.From, fmt.Errorf("p.DB.GetBackwardTopologyPos: %w", err)
} }
// If we didn't return any events at all then don't bother doing anything else. // If we didn't return any events at all then don't bother doing anything else.
@ -276,7 +277,7 @@ func (p *PDUStreamProvider) addRoomDeltaToResponse(
device, recentEvents, delta.StateEvents, device, recentEvents, delta.StateEvents,
) )
if err != nil { if err != nil {
return r.From, err return r.From, fmt.Errorf("p.lazyLoadMembers: %w", err)
} }
} }