IGNITE-7441 Drop IGNITE_SERVICES_COMPATIBILITY_MODE system property - Fixes #5482.
Signed-off-by: Ilya Kasnacheev <ilya.kasnach...@gmail.com> Project: http://git-wip-us.apache.org/repos/asf/ignite/repo Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/19060028 Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/19060028 Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/19060028 Branch: refs/heads/ignite-9720 Commit: 19060028185a82878891768ec34adc553384ef5e Parents: 41f4225 Author: Vyacheslav Daradur <daradu...@gmail.com> Authored: Tue Nov 27 18:45:28 2018 +0300 Committer: Ilya Kasnacheev <ilya.kasnach...@gmail.com> Committed: Tue Nov 27 18:45:28 2018 +0300 ---------------------------------------------------------------------- .../apache/ignite/IgniteSystemProperties.java | 15 ------- .../ignite/internal/IgniteNodeAttributes.java | 3 -- .../discovery/GridDiscoveryManager.java | 17 -------- .../service/GridServiceProcessor.java | 12 ------ .../ignite/spi/discovery/tcp/ServerImpl.java | 41 -------------------- .../GridDiscoveryManagerAttributesSelfTest.java | 37 ------------------ 6 files changed, 125 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ignite/blob/19060028/modules/core/src/main/java/org/apache/ignite/IgniteSystemProperties.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/IgniteSystemProperties.java b/modules/core/src/main/java/org/apache/ignite/IgniteSystemProperties.java index 3c59ea1..d581e75 100644 --- a/modules/core/src/main/java/org/apache/ignite/IgniteSystemProperties.java +++ b/modules/core/src/main/java/org/apache/ignite/IgniteSystemProperties.java @@ -591,21 +591,6 @@ public final class IgniteSystemProperties { "IGNITE_H2_INDEXING_CACHE_THREAD_USAGE_TIMEOUT"; /** - * Manages backward compatibility of {@link IgniteServices}. All nodes in cluster must have identical value - * of this property. - * <p> - * If property is {@code false} then node is not required to have service implementation class if service is not - * deployed on this node. - * <p> - * If the property is {@code true} then service implementation class is required on node even if service - * is not deployed on this node. - * <p> - * If the property is not set ({@code null}) then Ignite will automatically detect which compatibility mode - * should be used. - */ - public static final String IGNITE_SERVICES_COMPATIBILITY_MODE = "IGNITE_SERVICES_COMPATIBILITY_MODE"; - - /** * Manages backward compatibility of {@link StreamTransformer#from(CacheEntryProcessor)} method. * <p> * If the property is {@code true}, then the wrapped {@link CacheEntryProcessor} won't be able to be loaded over http://git-wip-us.apache.org/repos/asf/ignite/blob/19060028/modules/core/src/main/java/org/apache/ignite/internal/IgniteNodeAttributes.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/IgniteNodeAttributes.java b/modules/core/src/main/java/org/apache/ignite/internal/IgniteNodeAttributes.java index 4ca4f1b..24a71a8 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/IgniteNodeAttributes.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/IgniteNodeAttributes.java @@ -174,9 +174,6 @@ public final class IgniteNodeAttributes { /** Late affinity assignment mode. */ public static final String ATTR_LATE_AFFINITY_ASSIGNMENT = ATTR_PREFIX + ".cache.lateAffinity"; - /** Ignite services compatibility mode (can be {@code null}). */ - public static final String ATTR_SERVICES_COMPATIBILITY_MODE = ATTR_PREFIX + ".services.compatibility.enabled"; - /** Late affinity assignment mode. */ public static final String ATTR_ACTIVE_ON_START = ATTR_PREFIX + ".active.on.start"; http://git-wip-us.apache.org/repos/asf/ignite/blob/19060028/modules/core/src/main/java/org/apache/ignite/internal/managers/discovery/GridDiscoveryManager.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/internal/managers/discovery/GridDiscoveryManager.java b/modules/core/src/main/java/org/apache/ignite/internal/managers/discovery/GridDiscoveryManager.java index 0a982b0..9a0ca92 100644 --- a/modules/core/src/main/java/org/apache/ignite/internal/managers/discovery/GridDiscoveryManager.java +++ b/modules/core/src/main/java/org/apache/ignite/internal/managers/discovery/GridDiscoveryManager.java @@ -144,7 +144,6 @@ import static org.apache.ignite.IgniteSystemProperties.IGNITE_BINARY_MARSHALLER_ import static org.apache.ignite.IgniteSystemProperties.IGNITE_DISCOVERY_HISTORY_SIZE; import static org.apache.ignite.IgniteSystemProperties.IGNITE_OPTIMIZED_MARSHALLER_USE_DEFAULT_SUID; import static org.apache.ignite.IgniteSystemProperties.IGNITE_SECURITY_COMPATIBILITY_MODE; -import static org.apache.ignite.IgniteSystemProperties.IGNITE_SERVICES_COMPATIBILITY_MODE; import static org.apache.ignite.IgniteSystemProperties.getInteger; import static org.apache.ignite.events.EventType.EVT_CLIENT_NODE_DISCONNECTED; import static org.apache.ignite.events.EventType.EVT_CLIENT_NODE_RECONNECTED; @@ -165,7 +164,6 @@ import static org.apache.ignite.internal.IgniteNodeAttributes.ATTR_OFFHEAP_SIZE; import static org.apache.ignite.internal.IgniteNodeAttributes.ATTR_PEER_CLASSLOADING; import static org.apache.ignite.internal.IgniteNodeAttributes.ATTR_PHY_RAM; import static org.apache.ignite.internal.IgniteNodeAttributes.ATTR_SECURITY_COMPATIBILITY_MODE; -import static org.apache.ignite.internal.IgniteNodeAttributes.ATTR_SERVICES_COMPATIBILITY_MODE; import static org.apache.ignite.internal.IgniteNodeAttributes.ATTR_USER_NAME; import static org.apache.ignite.internal.IgniteVersionUtils.VER; import static org.apache.ignite.internal.events.DiscoveryCustomEvent.EVT_DISCOVERY_CUSTOM_EVT; @@ -1219,7 +1217,6 @@ public class GridDiscoveryManager extends GridManagerAdapter<DiscoverySpi> { boolean locDelayAssign = locNode.attribute(ATTR_LATE_AFFINITY_ASSIGNMENT); - Boolean locSrvcCompatibilityEnabled = locNode.attribute(ATTR_SERVICES_COMPATIBILITY_MODE); Boolean locSecurityCompatibilityEnabled = locNode.attribute(ATTR_SECURITY_COMPATIBILITY_MODE); for (ClusterNode n : nodes) { @@ -1305,20 +1302,6 @@ public class GridDiscoveryManager extends GridManagerAdapter<DiscoverySpi> { ", rmtAddrs=" + U.addressesAsString(n) + ", rmtNode=" + U.toShortString(n) + "]"); } - Boolean rmtSrvcCompatibilityEnabled = n.attribute(ATTR_SERVICES_COMPATIBILITY_MODE); - - if (!F.eq(locSrvcCompatibilityEnabled, rmtSrvcCompatibilityEnabled)) { - throw new IgniteCheckedException("Local node's " + IGNITE_SERVICES_COMPATIBILITY_MODE + - " property value differs from remote node's value " + - "(to make sure all nodes in topology have identical IgniteServices compatibility mode enabled, " + - "configure system property explicitly) " + - "[locSrvcCompatibilityEnabled=" + locSrvcCompatibilityEnabled + - ", rmtSrvcCompatibilityEnabled=" + rmtSrvcCompatibilityEnabled + - ", locNodeAddrs=" + U.addressesAsString(locNode) + - ", rmtNodeAddrs=" + U.addressesAsString(n) + - ", locNodeId=" + locNode.id() + ", rmtNode=" + U.toShortString(n) + "]"); - } - if (n.version().compareToIgnoreTimestamp(SERVICE_PERMISSIONS_SINCE) >= 0 && ctx.security().enabled() // Matters only if security enabled. ) { http://git-wip-us.apache.org/repos/asf/ignite/blob/19060028/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 271204c..d4ec78f 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 @@ -110,11 +110,8 @@ import org.apache.ignite.transactions.Transaction; import org.jetbrains.annotations.Nullable; import static javax.cache.event.EventType.REMOVED; -import static org.apache.ignite.IgniteSystemProperties.IGNITE_SERVICES_COMPATIBILITY_MODE; -import static org.apache.ignite.IgniteSystemProperties.getString; import static org.apache.ignite.configuration.DeploymentMode.ISOLATED; import static org.apache.ignite.configuration.DeploymentMode.PRIVATE; -import static org.apache.ignite.internal.IgniteNodeAttributes.ATTR_SERVICES_COMPATIBILITY_MODE; import static org.apache.ignite.transactions.TransactionConcurrency.PESSIMISTIC; import static org.apache.ignite.transactions.TransactionIsolation.READ_COMMITTED; import static org.apache.ignite.transactions.TransactionIsolation.REPEATABLE_READ; @@ -124,9 +121,6 @@ import static org.apache.ignite.transactions.TransactionIsolation.REPEATABLE_REA */ @SuppressWarnings({"SynchronizationOnLocalVariableOrMethodParameter", "ConstantConditions"}) public class GridServiceProcessor extends GridProcessorAdapter implements IgniteChangeGlobalStateSupport { - /** */ - private final Boolean srvcCompatibilitySysProp; - /** Time to wait before reassignment retries. */ private static final long RETRY_TIMEOUT = 1000; @@ -183,10 +177,6 @@ public class GridServiceProcessor extends GridProcessorAdapter implements Ignite depExe = Executors.newSingleThreadExecutor(new IgniteThreadFactory(ctx.igniteInstanceName(), "srvc-deploy", oomeHnd)); - - String servicesCompatibilityMode = getString(IGNITE_SERVICES_COMPATIBILITY_MODE); - - srvcCompatibilitySysProp = servicesCompatibilityMode == null ? null : Boolean.valueOf(servicesCompatibilityMode); } /** @@ -205,8 +195,6 @@ public class GridServiceProcessor extends GridProcessorAdapter implements Ignite /** {@inheritDoc} */ @Override public void start() throws IgniteCheckedException { - ctx.addNodeAttribute(ATTR_SERVICES_COMPATIBILITY_MODE, srvcCompatibilitySysProp); - if (ctx.isDaemon()) return; http://git-wip-us.apache.org/repos/asf/ignite/blob/19060028/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java ---------------------------------------------------------------------- diff --git a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java index 2c3569e..4c74706 100644 --- a/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java +++ b/modules/core/src/main/java/org/apache/ignite/spi/discovery/tcp/ServerImpl.java @@ -150,7 +150,6 @@ import org.jetbrains.annotations.Nullable; import static org.apache.ignite.IgniteSystemProperties.IGNITE_BINARY_MARSHALLER_USE_STRING_SERIALIZATION_VER_2; import static org.apache.ignite.IgniteSystemProperties.IGNITE_DISCOVERY_CLIENT_RECONNECT_HISTORY_SIZE; import static org.apache.ignite.IgniteSystemProperties.IGNITE_OPTIMIZED_MARSHALLER_USE_DEFAULT_SUID; -import static org.apache.ignite.IgniteSystemProperties.IGNITE_SERVICES_COMPATIBILITY_MODE; import static org.apache.ignite.IgniteSystemProperties.getInteger; import static org.apache.ignite.events.EventType.EVT_NODE_FAILED; import static org.apache.ignite.events.EventType.EVT_NODE_JOINED; @@ -164,7 +163,6 @@ import static org.apache.ignite.internal.IgniteNodeAttributes.ATTR_MARSHALLER; import static org.apache.ignite.internal.IgniteNodeAttributes.ATTR_MARSHALLER_COMPACT_FOOTER; import static org.apache.ignite.internal.IgniteNodeAttributes.ATTR_MARSHALLER_USE_BINARY_STRING_SER_VER_2; import static org.apache.ignite.internal.IgniteNodeAttributes.ATTR_MARSHALLER_USE_DFLT_SUID; -import static org.apache.ignite.internal.IgniteNodeAttributes.ATTR_SERVICES_COMPATIBILITY_MODE; import static org.apache.ignite.spi.IgnitePortProtocol.TCP; import static org.apache.ignite.spi.discovery.tcp.internal.TcpDiscoverySpiState.AUTH_FAILED; import static org.apache.ignite.spi.discovery.tcp.internal.TcpDiscoverySpiState.CHECK_FAILED; @@ -4030,45 +4028,6 @@ class ServerImpl extends TcpDiscoveryImpl { return; } - final Boolean locSrvcCompatibilityEnabled = locNode.attribute(ATTR_SERVICES_COMPATIBILITY_MODE); - - final Boolean rmtSrvcCompatibilityEnabled = node.attribute(ATTR_SERVICES_COMPATIBILITY_MODE); - - if (!F.eq(locSrvcCompatibilityEnabled, rmtSrvcCompatibilityEnabled)) { - utilityPool.execute( - new Runnable() { - @Override public void run() { - String errMsg = "Local node's " + IGNITE_SERVICES_COMPATIBILITY_MODE + - " property value differs from remote node's value " + - "(to make sure all nodes in topology have identical IgniteServices compatibility mode, " + - "configure system property explicitly) " + - "[locSrvcCompatibilityEnabled=" + locSrvcCompatibilityEnabled + - ", rmtSrvcCompatibilityEnabled=" + rmtSrvcCompatibilityEnabled + - ", locNodeAddrs=" + U.addressesAsString(locNode) + - ", rmtNodeAddrs=" + U.addressesAsString(node) + - ", locNodeId=" + locNode.id() + ", rmtNodeId=" + msg.creatorNodeId() + ']'; - - String sndMsg = "Local node's " + IGNITE_SERVICES_COMPATIBILITY_MODE + - " property value differs from remote node's value " + - "(to make sure all nodes in topology have identical IgniteServices compatibility mode, " + - "configure system property explicitly) " + - "[locSrvcCompatibilityEnabled=" + rmtSrvcCompatibilityEnabled + - ", rmtSrvcCompatibilityEnabled=" + locSrvcCompatibilityEnabled + - ", locNodeAddrs=" + U.addressesAsString(node) + ", locPort=" + node.discoveryPort() + - ", rmtNodeAddr=" + U.addressesAsString(locNode) + ", locNodeId=" + node.id() + - ", rmtNodeId=" + locNode.id() + ']'; - - nodeCheckError( - node, - errMsg, - sndMsg); - } - }); - - // Ignore join request. - return; - } - // Handle join. node.internalOrder(ring.nextNodeOrder()); http://git-wip-us.apache.org/repos/asf/ignite/blob/19060028/modules/core/src/test/java/org/apache/ignite/internal/managers/discovery/GridDiscoveryManagerAttributesSelfTest.java ---------------------------------------------------------------------- diff --git a/modules/core/src/test/java/org/apache/ignite/internal/managers/discovery/GridDiscoveryManagerAttributesSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/managers/discovery/GridDiscoveryManagerAttributesSelfTest.java index 69f95e8..d19ae72 100644 --- a/modules/core/src/test/java/org/apache/ignite/internal/managers/discovery/GridDiscoveryManagerAttributesSelfTest.java +++ b/modules/core/src/test/java/org/apache/ignite/internal/managers/discovery/GridDiscoveryManagerAttributesSelfTest.java @@ -34,7 +34,6 @@ import org.apache.ignite.testframework.junits.common.GridCommonAbstractTest; import static org.apache.ignite.IgniteSystemProperties.IGNITE_BINARY_MARSHALLER_USE_STRING_SERIALIZATION_VER_2; import static org.apache.ignite.IgniteSystemProperties.IGNITE_OPTIMIZED_MARSHALLER_USE_DEFAULT_SUID; import static org.apache.ignite.IgniteSystemProperties.IGNITE_SECURITY_COMPATIBILITY_MODE; -import static org.apache.ignite.IgniteSystemProperties.IGNITE_SERVICES_COMPATIBILITY_MODE; import static org.apache.ignite.configuration.DeploymentMode.CONTINUOUS; import static org.apache.ignite.configuration.DeploymentMode.SHARED; @@ -248,42 +247,6 @@ public abstract class GridDiscoveryManagerAttributesSelfTest extends GridCommonA /** * @throws Exception If failed. */ - public void testServiceCompatibilityEnabled() throws Exception { - String backup = System.getProperty(IGNITE_SERVICES_COMPATIBILITY_MODE); - - try { - doTestServiceCompatibilityEnabled(true, null, true); - doTestServiceCompatibilityEnabled(false, null, true); - doTestServiceCompatibilityEnabled(null, false, true); - doTestServiceCompatibilityEnabled(true, false, true); - doTestServiceCompatibilityEnabled(null, true, true); - doTestServiceCompatibilityEnabled(false, true, true); - - doTestServiceCompatibilityEnabled(true, true, false); - doTestServiceCompatibilityEnabled(false, false, false); - doTestServiceCompatibilityEnabled(null, null, false); - } - finally { - if (backup != null) - System.setProperty(IGNITE_SERVICES_COMPATIBILITY_MODE, backup); - else - System.clearProperty(IGNITE_SERVICES_COMPATIBILITY_MODE); - } - } - - /** - * @param first Service compatibility enabled flag for first node. - * @param second Service compatibility enabled flag for second node. - * @param fail Fail flag. - * @throws Exception If failed. - */ - private void doTestServiceCompatibilityEnabled(Object first, Object second, boolean fail) throws Exception { - doTestCompatibilityEnabled(IGNITE_SERVICES_COMPATIBILITY_MODE, first, second, fail); - } - - /** - * @throws Exception If failed. - */ public void testSecurityCompatibilityEnabled() throws Exception { TestReconnectPluginProvider.enabled = true; TestReconnectProcessor.enabled = true;