mirror of
https://github.com/wavetermdev/backup.git
synced 2026-08-05 13:57:07 -07:00
fix bugs with history query paging
This commit is contained in:
+5
-2
@@ -221,7 +221,7 @@ func _getNextHistoryItem(items []*HistoryItemType, index int, filterFn func(*His
|
||||
|
||||
// returns true if done, false if we still need to process more items
|
||||
func (result *HistoryQueryResult) processItem(item *HistoryItemType, rawOffset int) bool {
|
||||
if result.Offset < result.prevItems {
|
||||
if result.prevItems < result.Offset {
|
||||
result.prevItems++
|
||||
return false
|
||||
}
|
||||
@@ -230,6 +230,9 @@ func (result *HistoryQueryResult) processItem(item *HistoryItemType, rawOffset i
|
||||
result.NextRawOffset = rawOffset
|
||||
return true
|
||||
}
|
||||
if len(result.Items) == 0 {
|
||||
result.RawOffset = rawOffset
|
||||
}
|
||||
result.Items = append(result.Items, item)
|
||||
return false
|
||||
}
|
||||
@@ -238,7 +241,7 @@ func runHistoryQueryWithFilter(tx *TxWrap, opts HistoryQueryOpts) (*HistoryQuery
|
||||
if opts.MaxItems == 0 {
|
||||
return nil, fmt.Errorf("invalid query, maxitems is 0")
|
||||
}
|
||||
rtn := &HistoryQueryResult{Offset: opts.RawOffset, MaxItems: opts.MaxItems}
|
||||
rtn := &HistoryQueryResult{Offset: opts.Offset, MaxItems: opts.MaxItems}
|
||||
var rawOffset int
|
||||
if opts.RawOffset >= opts.Offset {
|
||||
rtn.prevItems = opts.Offset
|
||||
|
||||
Reference in New Issue
Block a user