Hej,

Mam problem z pobraniem wszystkich rekordów z elastic`a co robię źle?

public Map searchByIndexParams(AuctionIndexSearchParams searchParams, Pageable pageable) {
        final List<FilterBuilder> filters = Lists.newArrayList();
        final NativeSearchQueryBuilder searchQuery = new NativeSearchQueryBuilder().withQuery(matchAllQuery());
        	
        Optional.ofNullable(searchParams.getCategoryId()).ifPresent(v -> filters.add(boolFilter().must(termFilter("cat", v))));
        Optional.ofNullable(searchParams.getCurrency()).ifPresent(v -> filters.add(boolFilter().must(termFilter("curr", v))));
        Optional.ofNullable(searchParams.getTreeCategoryId()).ifPresent(v -> filters.add(boolFilter().must(termFilter("tcat", v))));
        Optional.ofNullable(searchParams.getUid()).ifPresent(v -> filters.add(boolFilter().must(termFilter("uid", v))));
        
        
        //access for many uids
        if(searchParams.getUids() != null){
        	Optional.ofNullable(searchParams.getUids().split(",")).ifPresent(v -> {
            	filters.add(boolFilter().must(termsFilter("uid", v)));
            });
        }
        
        
        //access for many categories
        if(searchParams.getCategories() != null){
        	Optional.ofNullable(searchParams.getCategories().split(",")).ifPresent(v -> {
            	filters.add(boolFilter().must(termsFilter("cat", v)));
            });
        }
        
       final BoolQueryBuilder boolQueryBuilder = new BoolQueryBuilder();

        if (Optional.ofNullable(searchParams.getTitle()).isPresent()) {
            boolQueryBuilder.should(queryStringQuery(searchParams.getTitle()).analyzeWildcard(true).field("title"));
        }

        if (Optional.ofNullable(searchParams.getStartDateFrom()).isPresent()
                || Optional.ofNullable(searchParams.getStartDateTo()).isPresent()) {
            filters.add(rangeFilter("start_date").from(searchParams.getStartDateFrom()).to(searchParams.getStartDateTo()));
        }

        if (Optional.ofNullable(searchParams.getEndDateFrom()).isPresent()
                || Optional.ofNullable(searchParams.getEndDateTo()).isPresent()) {
            filters.add(rangeFilter("end_date").from(searchParams.getEndDateFrom()).to(searchParams.getEndDateTo()));
        }

        if (Optional.ofNullable(searchParams.getPriceFrom()).isPresent()
                || Optional.ofNullable(searchParams.getPriceTo()).isPresent()) {
            filters.add(rangeFilter("price").from(searchParams.getPriceFrom()).to(searchParams.getPriceTo()));
        }
        
        
        searchQuery.withPageable(pageable);
        searchQuery.withQuery(boolQueryBuilder);
        
        FilterBuilder[] filterArr = new FilterBuilder[filters.size()];
        filterArr = filters.toArray(filterArr);
        searchQuery.withFilter(andFilter(filterArr));
        

        
        String scrollId = searchTemplate.scan(searchQuery.build(), 1000, false);

        Page<AuctionIndex> page = searchTemplate.scroll(scrollId, 15000L, AuctionIndex.class);
        Integer i = 0;
        if (page != null && page.hasContent()) {
        	
        	while(page.hasContent()){
        		
        		page = searchTemplate.scroll(scrollId, 15000L, AuctionIndex.class);
        		
        		if(page.hasContent()){
        			System.out.println(i);
        			i++;
        		}
        		
        		
        	}
        	
        }
    }

Iteracja przechodzi do 166 i staje ocb?

edit.
Jakieś pomysły jak to ugryść ?