Skip to content

Commit d8904e9

Browse files
authored
IGNITE-27944 Fixed broken ZookeeperDiscoverySpiSslTest (#12791)
1 parent cb6286f commit d8904e9

File tree

6 files changed

+84
-61
lines changed

6 files changed

+84
-61
lines changed
Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
/*
2+
* Licensed to the Apache Software Foundation (ASF) under one or more
3+
* contributor license agreements. See the NOTICE file distributed with
4+
* this work for additional information regarding copyright ownership.
5+
* The ASF licenses this file to You under the Apache License, Version 2.0
6+
* (the "License"); you may not use this file except in compliance with
7+
* the License. You may obtain a copy of the License at
8+
*
9+
* http://www.apache.org/licenses/LICENSE-2.0
10+
*
11+
* Unless required by applicable law or agreed to in writing, software
12+
* distributed under the License is distributed on an "AS IS" BASIS,
13+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14+
* See the License for the specific language governing permissions and
15+
* limitations under the License.
16+
*/
17+
18+
package org.apache.ignite.spi.discovery.zk;
19+
20+
import org.apache.ignite.cluster.ClusterNode;
21+
import org.apache.ignite.internal.managers.discovery.IgniteDiscoverySpiInternalListener;
22+
import org.apache.ignite.spi.discovery.DiscoverySpiCustomMessage;
23+
import org.apache.ignite.spi.discovery.tcp.IgniteDiscoverySpiInternalListenerSupport;
24+
import org.apache.ignite.testframework.junits.GridAbstractTest;
25+
26+
/**
27+
* Test wrapper over {@link ZookeeperDiscoverySpi} that is compatible with Ignite Test Framework
28+
* (see {@link #cloneSpiConfiguration()}) and provides extended ability to intercept SPI events.
29+
*/
30+
public class TestZookeeperDiscoverySpi extends ZookeeperDiscoverySpi implements IgniteDiscoverySpiInternalListenerSupport {
31+
/** */
32+
private volatile IgniteDiscoverySpiInternalListener internalLsnr;
33+
34+
/** {@inheritDoc} */
35+
@Override public void sendCustomEvent(DiscoverySpiCustomMessage msg) {
36+
IgniteDiscoverySpiInternalListener internalLsnr = this.internalLsnr;
37+
38+
if (internalLsnr != null && !internalLsnr.beforeSendCustomEvent(this, log, msg))
39+
return;
40+
41+
super.sendCustomEvent(msg);
42+
}
43+
44+
/** {@inheritDoc} */
45+
@Override public void beforeJoinTopology(ClusterNode locNode) {
46+
IgniteDiscoverySpiInternalListener internalLsnr = this.internalLsnr;
47+
48+
if (internalLsnr != null)
49+
internalLsnr.beforeJoin(locNode, log);
50+
}
51+
52+
/** */
53+
@Override public void setInternalListener(IgniteDiscoverySpiInternalListener lsnr) {
54+
internalLsnr = lsnr;
55+
}
56+
57+
/**
58+
* Creates a copy of the current SPI instance. Called by Test Framework to run nodes across multiple JVMs.
59+
* This method is called using the Java Reflection API (see {@link GridAbstractTest#startRemoteGrid}).
60+
*
61+
* @return Copy of current SPI instance.
62+
*/
63+
public ZookeeperDiscoverySpi cloneSpiConfiguration() {
64+
ZookeeperDiscoverySpi spi = new TestZookeeperDiscoverySpi();
65+
66+
spi.setZkRootPath(getZkRootPath());
67+
spi.setZkConnectionString(getZkConnectionString());
68+
spi.setSessionTimeout(getSessionTimeout());
69+
spi.setJoinTimeout(getJoinTimeout());
70+
spi.setClientReconnectDisabled(isClientReconnectDisabled());
71+
72+
return spi;
73+
}
74+
}

modules/zookeeper/src/test/java/org/apache/ignite/spi/discovery/zk/ZookeeperDiscoverySpiTestConfigurator.java

Lines changed: 0 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -20,15 +20,10 @@
2020
import java.util.concurrent.locks.Lock;
2121
import java.util.concurrent.locks.ReentrantLock;
2222
import org.apache.curator.test.TestingCluster;
23-
import org.apache.ignite.cluster.ClusterNode;
2423
import org.apache.ignite.configuration.IgniteConfiguration;
25-
import org.apache.ignite.internal.managers.discovery.IgniteDiscoverySpiInternalListener;
2624
import org.apache.ignite.spi.discovery.DiscoverySpi;
27-
import org.apache.ignite.spi.discovery.DiscoverySpiCustomMessage;
28-
import org.apache.ignite.spi.discovery.tcp.IgniteDiscoverySpiInternalListenerSupport;
2925
import org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi;
3026
import org.apache.ignite.testframework.config.GridTestProperties;
31-
import org.apache.ignite.testframework.junits.GridAbstractTest;
3227

3328
/**
3429
* Allows to run regular Ignite tests with {@link org.apache.ignite.spi.discovery.zk.ZookeeperDiscoverySpi}.
@@ -90,51 +85,4 @@ public static void preprocessConfiguration(IgniteConfiguration cfg) {
9085
lock.unlock();
9186
}
9287
}
93-
94-
/** */
95-
private static class TestZookeeperDiscoverySpi extends ZookeeperDiscoverySpi implements IgniteDiscoverySpiInternalListenerSupport {
96-
/** */
97-
private volatile IgniteDiscoverySpiInternalListener internalLsnr;
98-
99-
/** {@inheritDoc} */
100-
@Override public void sendCustomEvent(DiscoverySpiCustomMessage msg) {
101-
IgniteDiscoverySpiInternalListener internalLsnr = this.internalLsnr;
102-
103-
if (internalLsnr != null && !internalLsnr.beforeSendCustomEvent(this, log, msg))
104-
return;
105-
106-
super.sendCustomEvent(msg);
107-
}
108-
109-
/** {@inheritDoc} */
110-
@Override public void beforeJoinTopology(ClusterNode locNode) {
111-
IgniteDiscoverySpiInternalListener internalLsnr = this.internalLsnr;
112-
113-
if (internalLsnr != null)
114-
internalLsnr.beforeJoin(locNode, log);
115-
}
116-
117-
/** */
118-
@Override public void setInternalListener(IgniteDiscoverySpiInternalListener lsnr) {
119-
internalLsnr = lsnr;
120-
}
121-
122-
/**
123-
* Creates copy of current SPI instance. Is called by test framework using reflection
124-
* (see {@link GridAbstractTest#startRemoteGrid}).
125-
*
126-
* @return Copy of current SPI instance.
127-
*/
128-
public ZookeeperDiscoverySpi cloneSpiConfiguration() {
129-
ZookeeperDiscoverySpi spi = new TestZookeeperDiscoverySpi();
130-
131-
spi.setZkRootPath(getZkRootPath());
132-
spi.setZkConnectionString(getZkConnectionString());
133-
spi.setSessionTimeout(getSessionTimeout());
134-
spi.setJoinTimeout(getJoinTimeout());
135-
spi.setClientReconnectDisabled(isClientReconnectDisabled());
136-
137-
return spi;
138-
}
139-
}
14088
}

modules/zookeeper/src/test/java/org/apache/ignite/spi/discovery/zk/internal/ZookeeperDiscoveryClientDisconnectTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@
3939
import org.apache.ignite.lang.IgnitePredicate;
4040
import org.apache.ignite.spi.IgniteSpiException;
4141
import org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi;
42-
import org.apache.ignite.spi.discovery.zk.ZookeeperDiscoverySpi;
42+
import org.apache.ignite.spi.discovery.zk.TestZookeeperDiscoverySpi;
4343
import org.apache.ignite.spi.discovery.zk.ZookeeperDiscoverySpiMBean;
4444
import org.apache.ignite.spi.discovery.zk.ZookeeperDiscoverySpiTestUtil;
4545
import org.apache.ignite.testframework.GridTestUtils;
@@ -89,7 +89,7 @@ public void testClientReconnects() throws Exception {
8989
assertEquals(1, srv1.cluster().forClients().nodes().size());
9090

9191
ZookeeperDiscoverySpiMBean bean = getMxBean(srv1.name(), "SPIs",
92-
ZookeeperDiscoverySpi.class, ZookeeperDiscoverySpiMBean.class);
92+
TestZookeeperDiscoverySpi.class, ZookeeperDiscoverySpiMBean.class);
9393

9494
assertNotNull(bean);
9595

modules/zookeeper/src/test/java/org/apache/ignite/spi/discovery/zk/internal/ZookeeperDiscoveryMiscTest.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@
4545
import org.apache.ignite.plugin.security.SecuritySubject;
4646
import org.apache.ignite.spi.IgniteSpiException;
4747
import org.apache.ignite.spi.discovery.DiscoverySpiNodeAuthenticator;
48-
import org.apache.ignite.spi.discovery.zk.ZookeeperDiscoverySpi;
48+
import org.apache.ignite.spi.discovery.zk.TestZookeeperDiscoverySpi;
4949
import org.apache.ignite.spi.discovery.zk.ZookeeperDiscoverySpiMBean;
5050
import org.apache.ignite.spi.metric.LongMetric;
5151
import org.apache.ignite.spi.metric.ObjectMetric;
@@ -231,7 +231,7 @@ public void testMbean() throws Exception {
231231
IgniteEx grid = grid(i);
232232

233233
ZookeeperDiscoverySpiMBean bean = getMxBean(grid.context().igniteInstanceName(), "SPIs",
234-
ZookeeperDiscoverySpi.class, ZookeeperDiscoverySpiMBean.class);
234+
TestZookeeperDiscoverySpi.class, ZookeeperDiscoverySpiMBean.class);
235235

236236
MetricRegistry discoReg = grid.context().metric().registry(DISCO_METRICS);
237237

@@ -275,7 +275,7 @@ public void testMbeanGetCoordinator() throws Exception {
275275
IgniteEx srv2 = startGrid(2);
276276

277277
ZookeeperDiscoverySpiMBean mbean = getMxBean(srv2.context().igniteInstanceName(), "SPIs",
278-
ZookeeperDiscoverySpi.class, ZookeeperDiscoverySpiMBean.class);
278+
TestZookeeperDiscoverySpi.class, ZookeeperDiscoverySpiMBean.class);
279279

280280
stopGrid(0);
281281

modules/zookeeper/src/test/java/org/apache/ignite/spi/discovery/zk/internal/ZookeeperDiscoveryRandomStopOrFailConcurrentTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@
3434
import org.apache.ignite.internal.IgniteEx;
3535
import org.apache.ignite.internal.util.typedef.G;
3636
import org.apache.ignite.spi.discovery.DiscoverySpiMBean;
37-
import org.apache.ignite.spi.discovery.zk.ZookeeperDiscoverySpi;
37+
import org.apache.ignite.spi.discovery.zk.TestZookeeperDiscoverySpi;
3838
import org.apache.ignite.spi.discovery.zk.ZookeeperDiscoverySpiMBean;
3939
import org.apache.ignite.testframework.GridTestUtils;
4040
import org.apache.zookeeper.ZkTestClientCnxnSocketNIO;
@@ -233,7 +233,7 @@ private int getCoordinatorIndex() {
233233
/** */
234234
private DiscoverySpiMBean getMbean(IgniteEx grid) {
235235
ZookeeperDiscoverySpiMBean bean = getMxBean(grid.context().igniteInstanceName(), "SPIs",
236-
ZookeeperDiscoverySpi.class, ZookeeperDiscoverySpiMBean.class);
236+
TestZookeeperDiscoverySpi.class, ZookeeperDiscoverySpiMBean.class);
237237

238238
assertNotNull(bean);
239239

modules/zookeeper/src/test/java/org/apache/ignite/spi/discovery/zk/internal/ZookeeperDiscoverySpiTestBase.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,7 @@
7575
import org.apache.ignite.spi.communication.tcp.TcpCommunicationSpi;
7676
import org.apache.ignite.spi.communication.tcp.internal.GridNioServerWrapper;
7777
import org.apache.ignite.spi.discovery.DiscoverySpiNodeAuthenticator;
78+
import org.apache.ignite.spi.discovery.zk.TestZookeeperDiscoverySpi;
7879
import org.apache.ignite.spi.discovery.zk.ZookeeperDiscoverySpi;
7980
import org.apache.ignite.spi.discovery.zk.ZookeeperDiscoverySpiTestUtil;
8081
import org.apache.ignite.testframework.GridTestUtils;
@@ -376,7 +377,7 @@ private void clearAckEveryEventSystemProperty() {
376377
if (!dfltConsistenId)
377378
cfg.setConsistentId(igniteInstanceName);
378379

379-
ZookeeperDiscoverySpi zkSpi = auth != null ? new TestAuthZookeeperDiscoverySpi() : new ZookeeperDiscoverySpi();
380+
ZookeeperDiscoverySpi zkSpi = auth != null ? new TestAuthZookeeperDiscoverySpi() : new TestZookeeperDiscoverySpi();
380381

381382
if (joinTimeout != 0)
382383
zkSpi.setJoinTimeout(joinTimeout);
@@ -932,7 +933,7 @@ private boolean blockHandshakeOnce() {
932933
}
933934

934935
/** */
935-
private static class TestAuthZookeeperDiscoverySpi extends ZookeeperDiscoverySpi {
936+
private static class TestAuthZookeeperDiscoverySpi extends TestZookeeperDiscoverySpi {
936937
/** */
937938
@Override public void spiStart(@Nullable String igniteInstanceName) throws IgniteSpiException {
938939
((IgniteEx)ignite).context().addNodeAttribute(

0 commit comments

Comments
 (0)