Repository: incubator-unomi Updated Branches: refs/heads/master afd7a6832 -> d4d6306b2
UNOMI-40 : initialize score map when needed Project: http://git-wip-us.apache.org/repos/asf/incubator-unomi/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-unomi/commit/d4d6306b Tree: http://git-wip-us.apache.org/repos/asf/incubator-unomi/tree/d4d6306b Diff: http://git-wip-us.apache.org/repos/asf/incubator-unomi/diff/d4d6306b Branch: refs/heads/master Commit: d4d6306b2e2992a12029f74ea944b0617b6d6157 Parents: afd7a68 Author: Thomas Draier <[email protected]> Authored: Mon Jul 11 14:35:18 2016 +0200 Committer: Thomas Draier <[email protected]> Committed: Mon Jul 11 14:35:30 2016 +0200 ---------------------------------------------------------------------- .../org/apache/unomi/services/services/SegmentServiceImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-unomi/blob/d4d6306b/services/src/main/java/org/apache/unomi/services/services/SegmentServiceImpl.java ---------------------------------------------------------------------- diff --git a/services/src/main/java/org/apache/unomi/services/services/SegmentServiceImpl.java b/services/src/main/java/org/apache/unomi/services/services/SegmentServiceImpl.java index 4efbec4..b000c94 100644 --- a/services/src/main/java/org/apache/unomi/services/services/SegmentServiceImpl.java +++ b/services/src/main/java/org/apache/unomi/services/services/SegmentServiceImpl.java @@ -659,7 +659,7 @@ public class SegmentServiceImpl implements SegmentService, SynchronousBundleList persistenceService.updateWithScript(profileToRemove.getItemId(), null, Profile.class, "ctx._source.scores.remove(scoringId)", scriptParams); } if(scoring.getMetadata().isEnabled()) { - String script = "if (ctx._source.scores.containsKey(scoringId)) { ctx._source.scores[scoringId] += scoringValue } else { ctx._source.scores[scoringId] = scoringValue }"; + String script = "if (ctx._source.scores == null) { ctx._source.scores=[:] } ; if (ctx._source.scores.containsKey(scoringId)) { ctx._source.scores[scoringId] += scoringValue } else { ctx._source.scores[scoringId] = scoringValue }"; for (ScoringElement element : scoring.getElements()) { scriptParams.put("scoringValue", element.getValue()); for (Profile p : persistenceService.query(element.getCondition(), null, Profile.class)) {
