From 7853e3da717c0e7316605796f3af7c888bde93b0 Mon Sep 17 00:00:00 2001 From: Rizwan Idrees Date: Wed, 20 Mar 2013 09:37:21 +0000 Subject: [PATCH] Fix for pagination issue https://github.com/BioMedCentralLtd/spring-data-elasticsearch/issues/15 --- .../data/elasticsearch/core/ElasticsearchTemplate.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/main/java/org/springframework/data/elasticsearch/core/ElasticsearchTemplate.java b/src/main/java/org/springframework/data/elasticsearch/core/ElasticsearchTemplate.java index 29e8ba608..45528b1f8 100644 --- a/src/main/java/org/springframework/data/elasticsearch/core/ElasticsearchTemplate.java +++ b/src/main/java/org/springframework/data/elasticsearch/core/ElasticsearchTemplate.java @@ -267,10 +267,10 @@ public class ElasticsearchTemplate implements ElasticsearchOperations { client.prepareMoreLikeThis(indexName,type, query.getId()); if(query.getPageable() != null){ - startRecord = ((query.getPageable().getPageNumber() - 1) * query.getPageable().getPageSize()); + startRecord = query.getPageable().getPageNumber() * query.getPageable().getPageSize(); requestBuilder.setSearchSize(query.getPageable().getPageSize()); } - requestBuilder.setSearchFrom(startRecord < 0 ? 0 : startRecord); + requestBuilder.setSearchFrom(startRecord); if(isNotEmpty(query.getSearchIndices())){ requestBuilder.setSearchIndices(toArray(query.getSearchIndices())); @@ -363,10 +363,10 @@ public class ElasticsearchTemplate implements ElasticsearchOperations { .setTypes(toArray(query.getTypes())); if(query.getPageable() != null){ - startRecord = ((query.getPageable().getPageNumber() - 1) * query.getPageable().getPageSize()); + startRecord = query.getPageable().getPageNumber() * query.getPageable().getPageSize(); searchRequestBuilder.setSize(query.getPageable().getPageSize()); } - searchRequestBuilder.setFrom(startRecord < 0 ? 0 : startRecord); + searchRequestBuilder.setFrom(startRecord); if(!query.getFields().isEmpty()){