mirror of
https://github.com/zitadel/zitadel.git
synced 2025-08-11 21:37:32 +00:00
fix(eventstore): improve pagination of handler filter (#6968)
* fix(setup): add filter_offset to `projections.current_states` * fix(eventstore): allow offset in query * fix(handler): offset for already processed events
This commit is contained in:
@@ -17,6 +17,7 @@ type SearchQuery struct {
|
||||
AllowTimeTravel bool
|
||||
AwaitOpenTransactions bool
|
||||
Limit uint64
|
||||
Offset uint16
|
||||
Desc bool
|
||||
|
||||
InstanceID *Filter
|
||||
@@ -121,12 +122,12 @@ func QueryFromBuilder(builder *eventstore.SearchQueryBuilder) (*SearchQuery, err
|
||||
query := &SearchQuery{
|
||||
Columns: builder.GetColumns(),
|
||||
Limit: builder.GetLimit(),
|
||||
Offset: builder.GetOffset(),
|
||||
Desc: builder.GetDesc(),
|
||||
Tx: builder.GetTx(),
|
||||
AllowTimeTravel: builder.GetAllowTimeTravel(),
|
||||
AwaitOpenTransactions: builder.GetAwaitOpenTransactions(),
|
||||
// Queries: make([]*Filter, 0, 7),
|
||||
SubQueries: make([][]*Filter, len(builder.GetQueries())),
|
||||
SubQueries: make([][]*Filter, len(builder.GetQueries())),
|
||||
}
|
||||
|
||||
for _, f := range []func(builder *eventstore.SearchQueryBuilder, query *SearchQuery) *Filter{
|
||||
|
@@ -89,6 +89,11 @@ func query(ctx context.Context, criteria querier, searchQuery *eventstore.Search
|
||||
query += " LIMIT ?"
|
||||
}
|
||||
|
||||
if q.Offset > 0 {
|
||||
values = append(values, q.Offset)
|
||||
query += " OFFSET ?"
|
||||
}
|
||||
|
||||
query = criteria.placeholder(query)
|
||||
|
||||
var contextQuerier interface {
|
||||
|
Reference in New Issue
Block a user