From b2ba0e97814bc9b8764d83e485b2a578049e3a11 Mon Sep 17 00:00:00 2001 From: Ilya Kasnacheev Date: Tue, 27 Mar 2018 19:03:14 +0300 Subject: [PATCH] IGNITE-7962 Avoid swallowing unexpected exceptions. --- .../datastreamer/DataStreamerImpl.java | 37 ++++++++++++------- 1 file changed, 23 insertions(+), 14 deletions(-) diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/datastreamer/DataStreamerImpl.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/datastreamer/DataStreamerImpl.java index e1ab23722e1af..43012925a31eb 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/datastreamer/DataStreamerImpl.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/datastreamer/DataStreamerImpl.java @@ -1753,7 +1753,9 @@ private void submit( topicBytes = U.marshal(ctx, topic); } catch (IgniteCheckedException e) { - U.error(log, "Failed to marshal (request will not be sent).", e); + U.error(log, "Failed to marshal.", e); + + curFut.onDone(new IgniteException("Failed to marshal.", e)); return; } @@ -1771,8 +1773,9 @@ private void submit( cache.context().deploy().onEnter(); } catch (IgniteCheckedException e) { - U.error(log, "Failed to deploy class (request will not be sent): " + - jobPda0.deployClass(), e); + U.error(log, "Failed to deploy class: " + jobPda0.deployClass(), e); + + curFut.onDone(new IgniteException("Failed to deploy class: " + jobPda0.deployClass(), e)); return; } @@ -2108,16 +2111,16 @@ else if (ttl == CU.TTL_NOT_CHANGED) expiryTime = CU.toExpireTime(ttl); } - boolean primary = cctx.affinity().primaryByKey(cctx.localNode(), entry.key(), topVer); + boolean primary = cctx.affinity().primaryByKey(cctx.localNode(), entry.key(), topVer); - entry.initialValue(e.getValue(), - ver, - ttl, - expiryTime, - false, - topVer, - primary ? GridDrType.DR_LOAD : GridDrType.DR_PRELOAD, - false); + entry.initialValue(e.getValue(), + ver, + ttl, + expiryTime, + false, + topVer, + primary ? GridDrType.DR_LOAD : GridDrType.DR_PRELOAD, + false); cctx.evicts().touch(entry, topVer); @@ -2132,7 +2135,11 @@ else if (ttl == CU.TTL_NOT_CHANGED) // No-op. } catch (IgniteCheckedException ex) { - throw new IgniteException("Failed to set initial value for cache entry", ex); + IgniteLogger log = cache.unwrap(Ignite.class).log(); + + U.error(log, "Failed to set initial value for cache entry: " + e, ex); + + throw new IgniteException("Failed to set initial value for cache entry.", ex); } finally { cctx.shared().database().checkpointReadUnlock(); @@ -2153,7 +2160,9 @@ else if (ttl == CU.TTL_NOT_CHANGED) cctx.shared().wal().fsync(null); } catch (IgniteCheckedException e) { - U.error(log, "Failed to write preloaded entries into write-ahead log: " + e, e); + U.error(log, "Failed to write preloaded entries into write-ahead log.", e); + + throw new IgniteException("Failed to write preloaded entries into write-ahead log.", e); } } }