From 64d3af2bc4d06b9193c61f3c0440c2e16516edd9 Mon Sep 17 00:00:00 2001 From: alimy Date: Sat, 11 Jun 2022 11:14:32 +0800 Subject: [PATCH] fixed cache index calculate offset/limit error --- internal/dao/cache_index.go | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/internal/dao/cache_index.go b/internal/dao/cache_index.go index c469b3e6c..7d8d01ce8 100644 --- a/internal/dao/cache_index.go +++ b/internal/dao/cache_index.go @@ -29,11 +29,11 @@ func newSimpleCacheIndexServant(getIndexPosts func(offset, limit int) ([]*model. func (s *simpleCacheIndexServant) IndexPosts(offset int, limit int) ([]*model.PostFormated, bool) { posts := s.atomicIndex.Load().([]*model.PostFormated) - start := offset * limit - end := start + limit - if len(posts) >= end { - logrus.Debugln("get index posts from cached") - return posts[start:end], true + end := offset + limit + size := len(posts) + logrus.Debugf("get index posts from posts: %d offset:%d limit:%d start:%d, end:%d", size, offset, limit, offset, end) + if size >= end { + return posts[offset:end], true } return nil, false }