diff options
author | Lester Solbakken <lesters@oath.com> | 2021-04-28 12:02:12 +0200 |
---|---|---|
committer | Lester Solbakken <lesters@oath.com> | 2021-04-28 12:02:12 +0200 |
commit | b5c513e94d636fdd0943127dd84b086de37f375d (patch) | |
tree | 24756117fa84e47b9d388dd52ee6668523460892 /vespajlib/src/main/java/com/yahoo/tensor/functions/Reduce.java | |
parent | 4fbd27dddde4aff5de1be48f79057b6357bed123 (diff) |
Don't expose initial aggregator values when reducing empty tensors
Diffstat (limited to 'vespajlib/src/main/java/com/yahoo/tensor/functions/Reduce.java')
-rw-r--r-- | vespajlib/src/main/java/com/yahoo/tensor/functions/Reduce.java | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/vespajlib/src/main/java/com/yahoo/tensor/functions/Reduce.java b/vespajlib/src/main/java/com/yahoo/tensor/functions/Reduce.java index 86f23487efb..879daefaf72 100644 --- a/vespajlib/src/main/java/com/yahoo/tensor/functions/Reduce.java +++ b/vespajlib/src/main/java/com/yahoo/tensor/functions/Reduce.java @@ -114,7 +114,9 @@ public class Reduce<NAMETYPE extends Name> extends PrimitiveTensorFunction<NAMET // Special case: Reduce all if (dimensions.isEmpty() || dimensions.size() == argument.type().dimensions().size()) - if (argument.type().dimensions().size() == 1 && argument instanceof IndexedTensor) + if (argument.isEmpty()) + return Tensor.from(0.0); + else if (argument.type().dimensions().size() == 1 && argument instanceof IndexedTensor) return reduceIndexedVector((IndexedTensor)argument, aggregator); else return reduceAllGeneral(argument, aggregator); |