[ https://issues.apache.org/jira/browse/IGNITE-14725?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17407856#comment-17407856 ]
Ignite TC Bot commented on IGNITE-14725: ---------------------------------------- {panel:title=Branch: [pull/9360/head] Base: [master] : Possible Blockers (1)|borderStyle=dashed|borderColor=#ccc|titleBGColor=#F7D6C1} {color:#d04437}Basic 1{color} [[tests 1|https://ci.ignite.apache.org/viewLog.html?buildId=6159004]] * IgniteBasicTestSuite: GridVersionSelfTest.testVersions - Test has low fail rate in base branch 0,0% and is not flaky {panel} {panel:title=Branch: [pull/9360/head] Base: [master] : New Tests (3)|borderStyle=dashed|borderColor=#ccc|titleBGColor=#D6F7C1} {color:#00008b}Basic 1{color} [[tests 3|https://ci.ignite.apache.org/viewLog.html?buildId=6159004]] * {color:#013220}IgniteBasicTestSuite: P2PUnsupportedClassVersionTest.testEntryProcessor - PASSED{color} * {color:#013220}IgniteBasicTestSuite: P2PUnsupportedClassVersionTest.testScanQuery - PASSED{color} * {color:#013220}IgniteBasicTestSuite: P2PUnsupportedClassVersionTest.testCompute - PASSED{color} {panel} [TeamCity *--> Run :: All* Results|https://ci.ignite.apache.org/viewLog.html?buildId=6158386&buildTypeId=IgniteTests24Java8_RunAll] > Cluster crashes when the client has a higher byte code version than server > -------------------------------------------------------------------------- > > Key: IGNITE-14725 > URL: https://issues.apache.org/jira/browse/IGNITE-14725 > Project: Ignite > Issue Type: Bug > Affects Versions: 2.10 > Reporter: Surkov Aleksandr > Assignee: Nikolay Izhikov > Priority: Blocker > Fix For: 2.11 > > Attachments: different-java.zip > > Time Spent: 40m > Remaining Estimate: 0h > > When the Java version on the server does not support the byte code that the > client node sends to server, then some operations(Scan Queries) can lead to > the fall of the cluster. > Steps to reproduce the situation: > 1. Start the server using Java 8(org.apache.ignite.SimpleServer#main) > 2. Start the client using Java 11(target byte code version 11), which will > run ScanQuery(org.apache.ignite.ThickClient#main) > Reproducer is attached. Logs from the server and client are located in the > errors folder. > {code:java} > SEVERE: Failed to process message > [senderId=53c4266d-8b74-480b-bbf5-670bd94c4192, msg=GridCacheQueryRequest > [id=13, cacheName=cache_scan, type=SCAN, fields=false, clause=null, limit=0, > clsName=null, keyValFilter=null, rdc=null, trans=null, pageSize=1024, > incBackups=false, cancel=false, incMeta=false, all=false, keepBinary=false, > subjId=53c4266d-8b74-480b-bbf5-670bd94c4192, taskHash=0, part=-1, > topVer=AffinityTopologyVersion [topVer=2, minorTopVer=1], mvccSnapshot=null, > flags=0, super=GridCacheIdMessage [cacheId=29045018, super=GridCacheMessage > [msgId=14, depInfo=GridDeploymentInfoBean > [clsLdrId=74845d87971-53c4266d-8b74-480b-bbf5-670bd94c4192, depMode=SHARED, > userVer=0, locDepOwner=false, participants=null], > lastAffChangedTopVer=AffinityTopologyVersion [topVer=2, minorTopVer=1], > err=null, skipPrepare=false]]]] > java.lang.UnsupportedClassVersionError: org/apache/ignite/ThickClient has > been compiled by a more recent version of the Java Runtime (class file > version 55.0), this version of the Java Runtime only recognizes class file > versions up to 52.0 > at java.lang.ClassLoader.defineClass1(Native Method) > at java.lang.ClassLoader.defineClass(ClassLoader.java:756) > at java.lang.ClassLoader.defineClass(ClassLoader.java:635) > at > org.apache.ignite.internal.managers.deployment.GridDeploymentClassLoader.findClass(GridDeploymentClassLoader.java:543) > at java.lang.ClassLoader.loadClass(ClassLoader.java:418) > at > org.apache.ignite.internal.managers.deployment.GridDeploymentClassLoader.loadClass(GridDeploymentClassLoader.java:461) > at java.lang.Class.forName0(Native Method) > at java.lang.Class.forName(Class.java:348) > at > org.apache.ignite.internal.util.IgniteUtils.forName(IgniteUtils.java:9014) > at > org.apache.ignite.internal.util.IgniteUtils.forName(IgniteUtils.java:8945) > at > org.apache.ignite.internal.managers.deployment.GridDeployment.deployedClass(GridDeployment.java:460) > at > org.apache.ignite.internal.managers.deployment.GridDeploymentPerVersionStore.getDeployment(GridDeploymentPerVersionStore.java:441) > at > org.apache.ignite.internal.managers.deployment.GridDeploymentManager.getGlobalDeployment(GridDeploymentManager.java:517) > at > org.apache.ignite.internal.processors.cache.GridCacheDeploymentManager$CacheClassLoader.tryToloadClassFromCacheDep(GridCacheDeploymentManager.java:816) > at > org.apache.ignite.internal.processors.cache.GridCacheDeploymentManager$CacheClassLoader.findClass(GridCacheDeploymentManager.java:783) > at > org.apache.ignite.internal.processors.cache.GridCacheDeploymentManager$CacheClassLoader.loadClass(GridCacheDeploymentManager.java:760) > at > org.apache.ignite.internal.util.IgniteUtils.forName(IgniteUtils.java:9012) > at > org.apache.ignite.internal.util.IgniteUtils.forName(IgniteUtils.java:8957) > at > org.apache.ignite.internal.MarshallerContextImpl.getClass(MarshallerContextImpl.java:376) > at > org.apache.ignite.internal.binary.BinaryContext.descriptorForTypeId(BinaryContext.java:693) > at > org.apache.ignite.internal.binary.BinaryUtils.doReadClass(BinaryUtils.java:1641) > at > org.apache.ignite.internal.binary.BinaryUtils.doReadClass(BinaryUtils.java:1578) > at > org.apache.ignite.internal.binary.BinaryUtils.doReadClass(BinaryUtils.java:1555) > at > org.apache.ignite.internal.binary.BinaryReaderExImpl.readClass(BinaryReaderExImpl.java:383) > at > org.apache.ignite.internal.binary.BinaryFieldAccessor$DefaultFinalClassAccessor.readFixedType(BinaryFieldAccessor.java:907) > at > org.apache.ignite.internal.binary.BinaryFieldAccessor$DefaultFinalClassAccessor.read0(BinaryFieldAccessor.java:703) > at > org.apache.ignite.internal.binary.BinaryFieldAccessor.read(BinaryFieldAccessor.java:188) > at > org.apache.ignite.internal.binary.BinaryClassDescriptor.read(BinaryClassDescriptor.java:932) > at > org.apache.ignite.internal.binary.BinaryReaderExImpl.deserialize0(BinaryReaderExImpl.java:1769) > at > org.apache.ignite.internal.binary.BinaryReaderExImpl.deserialize(BinaryReaderExImpl.java:1721) > at > org.apache.ignite.internal.binary.GridBinaryMarshaller.deserialize(GridBinaryMarshaller.java:319) > at > org.apache.ignite.internal.binary.GridBinaryMarshaller.deserialize(GridBinaryMarshaller.java:304) > at > org.apache.ignite.internal.binary.BinaryMarshaller.unmarshal0(BinaryMarshaller.java:101) > at > org.apache.ignite.marshaller.AbstractNodeNameAwareMarshaller.unmarshal(AbstractNodeNameAwareMarshaller.java:80) > at > org.apache.ignite.internal.util.IgniteUtils.unmarshal(IgniteUtils.java:10490) > at > org.apache.ignite.internal.processors.cache.query.GridCacheQueryRequest.finishUnmarshal(GridCacheQueryRequest.java:383) > at > org.apache.ignite.internal.processors.cache.GridCacheIoManager.unmarshall(GridCacheIoManager.java:1625) > at > org.apache.ignite.internal.processors.cache.GridCacheIoManager.onMessage0(GridCacheIoManager.java:586) > at > org.apache.ignite.internal.processors.cache.GridCacheIoManager.handleMessage(GridCacheIoManager.java:392) > at > org.apache.ignite.internal.processors.cache.GridCacheIoManager.handleMessage(GridCacheIoManager.java:318) > at > org.apache.ignite.internal.processors.cache.GridCacheIoManager.access$100(GridCacheIoManager.java:109) > at > org.apache.ignite.internal.processors.cache.GridCacheIoManager$1.onMessage(GridCacheIoManager.java:308) > at > org.apache.ignite.internal.managers.communication.GridIoManager.invokeListener(GridIoManager.java:1908) > at > org.apache.ignite.internal.managers.communication.GridIoManager.processRegularMessage0(GridIoManager.java:1529) > at > org.apache.ignite.internal.managers.communication.GridIoManager.access$5300(GridIoManager.java:242) > at > org.apache.ignite.internal.managers.communication.GridIoManager$9.execute(GridIoManager.java:1422) > at > org.apache.ignite.internal.managers.communication.TraceRunnable.run(TraceRunnable.java:55) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) > at java.lang.Thread.run(Thread.java:748) > {code} -- This message was sent by Atlassian Jira (v8.3.4#803005)