You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@unomi.apache.org by sh...@apache.org on 2017/01/09 16:21:56 UTC

[22/50] [abbrv] incubator-unomi git commit: Merge branch 'feature-UNOMI-28-ES2X' into feature-UNOMI-70-ES5X

Merge branch 'feature-UNOMI-28-ES2X' into feature-UNOMI-70-ES5X

# Conflicts:
#	persistence-elasticsearch/core/src/main/java/org/apache/unomi/persistence/elasticsearch/ElasticSearchPersistenceServiceImpl.java


Project: http://git-wip-us.apache.org/repos/asf/incubator-unomi/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-unomi/commit/923e4917
Tree: http://git-wip-us.apache.org/repos/asf/incubator-unomi/tree/923e4917
Diff: http://git-wip-us.apache.org/repos/asf/incubator-unomi/diff/923e4917

Branch: refs/heads/master
Commit: 923e49171fae139e2197b55ef4b5102d61221edc
Parents: a94fdb0 28d7dbd
Author: Serge Huber <sh...@apache.org>
Authored: Thu Dec 15 16:40:41 2016 +0100
Committer: Serge Huber <sh...@apache.org>
Committed: Thu Dec 15 16:40:41 2016 +0100

----------------------------------------------------------------------
 .../java/org/apache/unomi/api/PartialList.java  |  25 +++++
 buildAndRunNoTests.sh                           |  34 ++++++
 .../ElasticSearchPersistenceServiceImpl.java    |  95 +++++++++++++---
 .../persistence/spi/PersistenceService.java     |  33 ++++++
 .../PropertyConditionESQueryBuilder.java        |   3 +-
 .../services/services/SegmentServiceImpl.java   | 111 ++++++++++++-------
 .../resources/OSGI-INF/blueprint/blueprint.xml  |   2 +
 7 files changed, 242 insertions(+), 61 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-unomi/blob/923e4917/persistence-elasticsearch/core/src/main/java/org/apache/unomi/persistence/elasticsearch/ElasticSearchPersistenceServiceImpl.java
----------------------------------------------------------------------
diff --cc persistence-elasticsearch/core/src/main/java/org/apache/unomi/persistence/elasticsearch/ElasticSearchPersistenceServiceImpl.java
index fa4b5e1,d6a136e..0651c3f
--- a/persistence-elasticsearch/core/src/main/java/org/apache/unomi/persistence/elasticsearch/ElasticSearchPersistenceServiceImpl.java
+++ b/persistence-elasticsearch/core/src/main/java/org/apache/unomi/persistence/elasticsearch/ElasticSearchPersistenceServiceImpl.java
@@@ -699,7 -711,7 +699,7 @@@ public class ElasticSearchPersistenceSe
                      String itemType = (String) clazz.getField("ITEM_TYPE").get(null);
  
                      if (itemsMonthlyIndexed.contains(itemType) && dateHint == null) {
-                         PartialList<T> r = query(QueryBuilders.idsQuery(itemType).addIds(itemId), null, clazz, 0, 1, null);
 -                        PartialList<T> r = query(QueryBuilders.idsQuery(itemType).ids(itemId), null, clazz, 0, 1, null, null);
++                        PartialList<T> r = query(QueryBuilders.idsQuery(itemType).addIds(itemId), null, clazz, 0, 1, null, null);
                          if (r.size() > 0) {
                              return r.get(0);
                          }
@@@ -1238,35 -1262,14 +1256,36 @@@
                      SearchResponse response = requestBuilder
                              .execute()
                              .actionGet();
 -                    SearchHits searchHits = response.getHits();
 -                    scrollIdentifier = response.getScrollId();
 -                    totalHits = searchHits.getTotalHits();
 -                    for (SearchHit searchHit : searchHits) {
 -                        String sourceAsString = searchHit.getSourceAsString();
 -                        final T value = CustomObjectMapper.getObjectMapper().readValue(sourceAsString, clazz);
 -                        value.setItemId(searchHit.getId());
 -                        results.add(value);
 +                    if (size == -1) {
 +                        // Scroll until no more hits are returned
 +                        while (true) {
 +
 +                            for (SearchHit searchHit : response.getHits().getHits()) {
 +                                // add hit to results
 +                                String sourceAsString = searchHit.getSourceAsString();
 +                                final T value = CustomObjectMapper.getObjectMapper().readValue(sourceAsString, clazz);
 +                                value.setItemId(searchHit.getId());
 +                                results.add(value);
 +                            }
 +
 +                            response = client.prepareSearchScroll(response.getScrollId()).setScroll(keepAlive).execute().actionGet();
 +
 +                            // If we have no more hits, exit
 +                            if (response.getHits().getHits().length == 0) {
 +                                break;
 +                            }
 +                        }
 +                        client.prepareClearScroll().addScrollId(response.getScrollId()).execute().actionGet();
 +                    } else {
 +                        SearchHits searchHits = response.getHits();
++                        scrollIdentifier = response.getScrollId();
 +                        totalHits = searchHits.getTotalHits();
 +                        for (SearchHit searchHit : searchHits) {
 +                            String sourceAsString = searchHit.getSourceAsString();
 +                            final T value = CustomObjectMapper.getObjectMapper().readValue(sourceAsString, clazz);
 +                            value.setItemId(searchHit.getId());
 +                            results.add(value);
 +                        }
                      }
                  } catch (Exception t) {
                      logger.error("Error loading itemType=" + clazz.getName() + " query=" + query + " sortBy=" + sortBy, t);

http://git-wip-us.apache.org/repos/asf/incubator-unomi/blob/923e4917/persistence-spi/src/main/java/org/apache/unomi/persistence/spi/PersistenceService.java
----------------------------------------------------------------------