You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by il...@apache.org on 2020/06/04 08:36:13 UTC

[ignite] branch master updated: IGNITE-13094 Fix peer loading errors when package name contains 'class' - Fixes #7887.

This is an automated email from the ASF dual-hosted git repository.

ilyak pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ignite.git


The following commit(s) were added to refs/heads/master by this push:
     new a1c9561  IGNITE-13094 Fix peer loading errors when package name contains 'class' - Fixes #7887.
a1c9561 is described below

commit a1c95611fd565b57fdffc4a4c9d17e833c6d965c
Author: Ilya Kasnacheev <il...@gmail.com>
AuthorDate: Thu Jun 4 11:35:39 2020 +0300

    IGNITE-13094 Fix peer loading errors when package name contains 'class' - Fixes #7887.
    
    Signed-off-by: Ilya Kasnacheev <il...@gmail.com>
---
 .../managers/deployment/GridDeploymentCommunication.java         | 9 +++++----
 .../managers/deployment/GridDeploymentMessageCountSelfTest.java  | 2 +-
 .../internal/marshaller/optimized/OptimizedMarshallerTest.java   | 4 ++--
 .../direct/redeploy/GridSingleSplitsRedeployLoadTest.java        | 2 +-
 modules/extdata/p2p/META-INF/ignite.xml                          | 2 +-
 .../ignite/tests/p2p/{ => classic}/SingleSplitTestTask.java      | 3 ++-
 6 files changed, 12 insertions(+), 10 deletions(-)

diff --git a/modules/core/src/main/java/org/apache/ignite/internal/managers/deployment/GridDeploymentCommunication.java b/modules/core/src/main/java/org/apache/ignite/internal/managers/deployment/GridDeploymentCommunication.java
index 2f76ac3..3cd5861 100644
--- a/modules/core/src/main/java/org/apache/ignite/internal/managers/deployment/GridDeploymentCommunication.java
+++ b/modules/core/src/main/java/org/apache/ignite/internal/managers/deployment/GridDeploymentCommunication.java
@@ -54,6 +54,9 @@ import static org.apache.ignite.internal.GridTopic.TOPIC_CLASSLOAD;
 @GridToStringExclude
 class GridDeploymentCommunication {
     /** */
+    private static final String CLASS_FILE_EXTENSION = ".class";
+
+    /** */
     private final IgniteLogger log;
 
     /** */
@@ -208,10 +211,8 @@ class GridDeploymentCommunication {
                 String clsName = req.resourceName().replace('/', '.');
 
                 try {
-                    int idx = clsName.indexOf(".class");
-
-                    if (idx >= 0)
-                        clsName = clsName.substring(0, idx);
+                    if (clsName.endsWith(CLASS_FILE_EXTENSION))
+                        clsName = clsName.substring(0, clsName.length() - CLASS_FILE_EXTENSION.length());
 
                     Class<?> cls = Class.forName(clsName, true, ldr);
 
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/managers/deployment/GridDeploymentMessageCountSelfTest.java b/modules/core/src/test/java/org/apache/ignite/internal/managers/deployment/GridDeploymentMessageCountSelfTest.java
index 3cb7d3a..71d6e62 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/managers/deployment/GridDeploymentMessageCountSelfTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/managers/deployment/GridDeploymentMessageCountSelfTest.java
@@ -41,7 +41,7 @@ import static org.apache.ignite.cache.CacheWriteSynchronizationMode.FULL_SYNC;
  */
 public class GridDeploymentMessageCountSelfTest extends GridCommonAbstractTest {
     /** Test p2p task. */
-    private static final String TEST_TASK = "org.apache.ignite.tests.p2p.SingleSplitTestTask";
+    private static final String TEST_TASK = "org.apache.ignite.tests.p2p.classic.SingleSplitTestTask";
 
     /** SPIs. */
     private Map<String, MessageCountingCommunicationSpi> commSpis = new ConcurrentHashMap<>();
diff --git a/modules/core/src/test/java/org/apache/ignite/internal/marshaller/optimized/OptimizedMarshallerTest.java b/modules/core/src/test/java/org/apache/ignite/internal/marshaller/optimized/OptimizedMarshallerTest.java
index f283eb7..e52be7f 100644
--- a/modules/core/src/test/java/org/apache/ignite/internal/marshaller/optimized/OptimizedMarshallerTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/internal/marshaller/optimized/OptimizedMarshallerTest.java
@@ -303,8 +303,8 @@ public class OptimizedMarshallerTest extends GridCommonAbstractTest {
         try {
             Ignite ignite = startGridsMultiThreaded(2);
 
-            String taskClsName = "org.apache.ignite.tests.p2p.SingleSplitTestTask";
-            String jobClsName = "org.apache.ignite.tests.p2p.SingleSplitTestTask$SingleSplitTestJob";
+            String taskClsName = "org.apache.ignite.tests.p2p.classic.SingleSplitTestTask";
+            String jobClsName = "org.apache.ignite.tests.p2p.classic.SingleSplitTestTask$SingleSplitTestJob";
 
             ClassLoader ldr = getExternalClassLoader();
 
diff --git a/modules/core/src/test/java/org/apache/ignite/loadtests/direct/redeploy/GridSingleSplitsRedeployLoadTest.java b/modules/core/src/test/java/org/apache/ignite/loadtests/direct/redeploy/GridSingleSplitsRedeployLoadTest.java
index e1edb36..09d09d5 100644
--- a/modules/core/src/test/java/org/apache/ignite/loadtests/direct/redeploy/GridSingleSplitsRedeployLoadTest.java
+++ b/modules/core/src/test/java/org/apache/ignite/loadtests/direct/redeploy/GridSingleSplitsRedeployLoadTest.java
@@ -41,7 +41,7 @@ import org.junit.Test;
 @GridCommonTest(group = "Load Test")
 public class GridSingleSplitsRedeployLoadTest extends GridCommonAbstractTest {
     /** Load test task type ID. */
-    public static final String TASK_NAME = "org.apache.ignite.tests.p2p.SingleSplitTestTask";
+    public static final String TASK_NAME = "org.apache.ignite.tests.p2p.classic.SingleSplitTestTask";
 
     /** */
     public GridSingleSplitsRedeployLoadTest() {
diff --git a/modules/extdata/p2p/META-INF/ignite.xml b/modules/extdata/p2p/META-INF/ignite.xml
index fb3b95b..9b09ab7 100644
--- a/modules/extdata/p2p/META-INF/ignite.xml
+++ b/modules/extdata/p2p/META-INF/ignite.xml
@@ -35,6 +35,6 @@
     <util:list id="tasks">
         <value>org.apache.ignite.tests.p2p.P2PTestTaskExternalPath1</value>
         <value>org.apache.ignite.tests.p2p.P2PTestTaskExternalPath2</value>
-        <value>org.apache.ignite.tests.p2p.SingleSplitTestTask</value>
+        <value>org.apache.ignite.tests.p2p.classic.SingleSplitTestTask</value>
     </util:list>
 </beans>
diff --git a/modules/extdata/p2p/src/main/java/org/apache/ignite/tests/p2p/SingleSplitTestTask.java b/modules/extdata/p2p/src/main/java/org/apache/ignite/tests/p2p/classic/SingleSplitTestTask.java
similarity index 95%
rename from modules/extdata/p2p/src/main/java/org/apache/ignite/tests/p2p/SingleSplitTestTask.java
rename to modules/extdata/p2p/src/main/java/org/apache/ignite/tests/p2p/classic/SingleSplitTestTask.java
index 2eec50b..b786b9d 100644
--- a/modules/extdata/p2p/src/main/java/org/apache/ignite/tests/p2p/SingleSplitTestTask.java
+++ b/modules/extdata/p2p/src/main/java/org/apache/ignite/tests/p2p/classic/SingleSplitTestTask.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.ignite.tests.p2p;
+package org.apache.ignite.tests.p2p.classic;
 
 import java.io.Serializable;
 import java.util.ArrayList;
@@ -25,6 +25,7 @@ import org.apache.ignite.compute.ComputeJob;
 import org.apache.ignite.compute.ComputeJobAdapter;
 import org.apache.ignite.compute.ComputeJobResult;
 import org.apache.ignite.compute.ComputeTaskSplitAdapter;
+import org.apache.ignite.tests.p2p.GridSingleSplitTestJobTarget;
 
 /**
  * Test task for P2P deployment tests.