Repository: phoenix Updated Branches: refs/heads/4.x-HBase-0.98 421620138 -> 70e1be931 refs/heads/4.x-HBase-1.1 c1f7bbe32 -> 94ae688d1 refs/heads/4.x-HBase-1.2 0fef552f6 -> 64b9f6ffc refs/heads/4.x-HBase-1.3 45e75de76 -> d1c48b6d7 refs/heads/5.x-HBase-2.0 0bcf1227b -> 2689b0a45 refs/heads/master 383d1a5ac -> e3889e2c1
PHOENIX-4662 Avoid NPE when server-caches are null (Csaba Skrabak) Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/e3889e2c Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/e3889e2c Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/e3889e2c Branch: refs/heads/master Commit: e3889e2c1c9f935f1d304b4592e751b10035acc9 Parents: 383d1a5 Author: Josh Elser <els...@apache.org> Authored: Thu Mar 22 16:03:21 2018 -0400 Committer: Josh Elser <els...@apache.org> Committed: Thu Mar 22 16:04:25 2018 -0400 ---------------------------------------------------------------------- .../java/org/apache/phoenix/iterate/TableResultIterator.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/phoenix/blob/e3889e2c/phoenix-core/src/main/java/org/apache/phoenix/iterate/TableResultIterator.java ---------------------------------------------------------------------- diff --git a/phoenix-core/src/main/java/org/apache/phoenix/iterate/TableResultIterator.java b/phoenix-core/src/main/java/org/apache/phoenix/iterate/TableResultIterator.java index e812854..f6902cc 100644 --- a/phoenix-core/src/main/java/org/apache/phoenix/iterate/TableResultIterator.java +++ b/phoenix-core/src/main/java/org/apache/phoenix/iterate/TableResultIterator.java @@ -198,9 +198,12 @@ public class TableResultIterator implements ResultIterator { retry--; try { Long cacheId = ((HashJoinCacheNotFoundException) e1).getCacheId(); + + ServerCache cache = caches == null ? null : + caches.get(new ImmutableBytesPtr(Bytes.toBytes(cacheId))); + if (!hashCacheClient.addHashCacheToServer(newScan.getStartRow(), - caches.get(new ImmutableBytesPtr(Bytes.toBytes(cacheId))), - plan.getTableRef().getTable())) { + cache, plan.getTableRef().getTable())) { throw e1; } this.scanIterator = ((BaseQueryPlan) plan).iterator(caches, scanGrouper, newScan);