Fixed issues on node stop: - in service processor need guard depExe access with busyLock - do not error log IO errors in ClientImpl on stop
Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/d6449ffb Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/d6449ffb Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/d6449ffb Branch: refs/heads/master Commit: d6449ffbc65acda6a2cf4484608188367837dd17 Parents: 13dfcbe Author: sboikov <[email protected]> Authored: Wed Aug 24 18:34:02 2016 +0300 Committer: sboikov <[email protected]> Committed: Wed Aug 24 18:34:02 2016 +0300 ---------------------------------------------------------------------- .../processors/service/GridServiceProcessor.java | 18 +++++++++++++----- .../ignite/spi/discovery/tcp/ClientImpl.java | 7 ++++++- 2 files changed, 19 insertions(+), 6 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ignite/blob/d6449ffb/modules/core/src/main/java/org/apache/ignite/internal/processors/service/GridServiceProcessor.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/processors/service/GridServiceProcessor.java b/modules/core/src/main/java/org/apache/ignite/internal/processors/service/GridServiceProcessor.java index 01b7302..7b76c48 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/processors/service/GridServiceProcessor.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/processors/service/GridServiceProcessor.java @@ -1355,11 +1355,19 @@ public class GridServiceProcessor extends GridProcessorAdapter { private class ServiceEntriesListener implements CacheEntryUpdatedListener<Object, Object> { /** {@inheritDoc} */ @Override public void onUpdated(final Iterable<CacheEntryEvent<?, ?>> deps) { - depExe.submit(new BusyRunnable() { - @Override public void run0() { - onSystemCacheUpdated(deps); - } - }); + if (!busyLock.enterBusy()) + return; + + try { + depExe.submit(new BusyRunnable() { + @Override public void run0() { + onSystemCacheUpdated(deps); + } + }); + } + finally { + busyLock.leaveBusy(); + } } } http://git-wip-us.apache.org/repos/asf/ignite/blob/d6449ffb/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java index 9821134..1e71888 100644 --- a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java +++ b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ClientImpl.java @@ -1115,7 +1115,12 @@ class ClientImpl extends TcpDiscoveryImpl { } } catch (IgniteCheckedException e) { - U.error(log, "Failed to send message: " + msg, e); + if (spi.getSpiContext().isStopping()) { + if (log.isDebugEnabled()) + log.debug("Failed to send message, node is stopping [msg=" + msg + ", err=" + e + ']'); + } + else + U.error(log, "Failed to send message: " + msg, e); msg = null; }
