mirror of
https://github.com/matrix-org/dendrite.git
synced 2026-01-09 23:23:10 -06:00
Return r.from instead of an empty token
This commit is contained in:
parent
dda77adb75
commit
bb3566a649
|
|
@ -336,10 +336,10 @@ func (r *messagesReq) retrieveEvents(ctx context.Context, rsAPI api.SyncRoomserv
|
||||||
// removed all of them. This means there are no events for this user
|
// removed all of them. This means there are no events for this user
|
||||||
// anymore. Let them know.
|
// anymore. Let them know.
|
||||||
if errors.Is(err, shared.ErrNoEventsForFilter) {
|
if errors.Is(err, shared.ErrNoEventsForFilter) {
|
||||||
return []synctypes.ClientEvent{}, emptyToken, emptyToken, nil
|
return []synctypes.ClientEvent{}, *r.from, emptyToken, nil
|
||||||
}
|
}
|
||||||
err = fmt.Errorf("GetEventsInRange: %w", err)
|
err = fmt.Errorf("GetEventsInRange: %w", err)
|
||||||
return []synctypes.ClientEvent{}, emptyToken, emptyToken, err
|
return []synctypes.ClientEvent{}, *r.from, emptyToken, err
|
||||||
}
|
}
|
||||||
|
|
||||||
var events []*rstypes.HeaderedEvent
|
var events []*rstypes.HeaderedEvent
|
||||||
|
|
@ -354,17 +354,17 @@ func (r *messagesReq) retrieveEvents(ctx context.Context, rsAPI api.SyncRoomserv
|
||||||
// on the ordering), or we've reached a backward extremity.
|
// on the ordering), or we've reached a backward extremity.
|
||||||
if len(streamEvents) == 0 {
|
if len(streamEvents) == 0 {
|
||||||
if events, err = r.handleEmptyEventsSlice(); err != nil {
|
if events, err = r.handleEmptyEventsSlice(); err != nil {
|
||||||
return []synctypes.ClientEvent{}, emptyToken, emptyToken, err
|
return []synctypes.ClientEvent{}, *r.from, emptyToken, err
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if events, err = r.handleNonEmptyEventsSlice(streamEvents); err != nil {
|
if events, err = r.handleNonEmptyEventsSlice(streamEvents); err != nil {
|
||||||
return []synctypes.ClientEvent{}, emptyToken, emptyToken, err
|
return []synctypes.ClientEvent{}, *r.from, emptyToken, err
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// If we didn't get any event, we don't need to proceed any further.
|
// If we didn't get any event, we don't need to proceed any further.
|
||||||
if len(events) == 0 {
|
if len(events) == 0 {
|
||||||
return []synctypes.ClientEvent{}, emptyToken, emptyToken, nil
|
return []synctypes.ClientEvent{}, *r.from, emptyToken, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// Apply room history visibility filter
|
// Apply room history visibility filter
|
||||||
|
|
@ -382,7 +382,7 @@ func (r *messagesReq) retrieveEvents(ctx context.Context, rsAPI api.SyncRoomserv
|
||||||
|
|
||||||
// No events left after applying history visibility
|
// No events left after applying history visibility
|
||||||
if len(filteredEvents) == 0 {
|
if len(filteredEvents) == 0 {
|
||||||
return []synctypes.ClientEvent{}, emptyToken, emptyToken, nil
|
return []synctypes.ClientEvent{}, *r.from, emptyToken, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
// Get the position of the first and the last event in the room's topology.
|
// Get the position of the first and the last event in the room's topology.
|
||||||
|
|
|
||||||
|
|
@ -224,7 +224,8 @@ func TestGetEventsInRangeWithTopologyToken(t *testing.T) {
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
// The purpose of this test is to ensure that backfill does indeed go backwards, using a topology token
|
// The purpose of this test is to ensure that backfilling returns no start/end if a given filter removes
|
||||||
|
// all events.
|
||||||
func TestGetEventsInRangeWithTopologyTokenNoEventsForFilter(t *testing.T) {
|
func TestGetEventsInRangeWithTopologyTokenNoEventsForFilter(t *testing.T) {
|
||||||
test.WithAllDatabases(t, func(t *testing.T, dbType test.DBType) {
|
test.WithAllDatabases(t, func(t *testing.T, dbType test.DBType) {
|
||||||
db, close := MustCreateDatabase(t, dbType)
|
db, close := MustCreateDatabase(t, dbType)
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue