[
https://issues.apache.org/jira/browse/IGNITE-13135?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17132584#comment-17132584
]
Aleksey Plekhanov commented on IGNITE-13135:
--------------------------------------------
[~akalashnikov], [~sergey-chugunov], but what about dynamic caches
(testClientFindsValueByAffinityKeyDynamicCacheWithoutExtraRequest is failed to)?
For example, I have started server node without user-defined classes.
I started client node and create cache with indexed types. Right now, binary
types are registered locally and not proposed to the cluster. After that any
binary type access from the server lead to error. Here is reproducer for this
case:
{code:java}
public static void main(String[] args) {
Ignite ignite = Ignition.start(new
IgniteConfiguration().setClientMode(true).setDiscoverySpi(new TcpDiscoverySpi()
.setIpFinder(new
TcpDiscoveryVmIpFinder().setAddresses(Collections.singleton("localhost")))));
IgniteCache cache = ignite.getOrCreateCache(new CacheConfiguration<>("test")
.setIndexedTypes(Integer.class, MyVal.class)
);
cache.put(1, new MyVal());
System.out.println(cache.query(new SqlFieldsQuery("SELECT * FROM
MyVal")).getAll());
}
public static class MyVal {
@QuerySqlField
int val;
}
{code}
Thow the error:
{noformat}
General error: "class org.apache.ignite.binary.BinaryObjectException: Cannot
find metadata for object with compact footer (Ignite work directory might have
been cleared after restart. Make sure that IGNITE_HOME does not point to a temp
folder or any other folder that is destroyed/cleared on restarts)
[typeId=-739451784, IGNITE_HOME='null']{noformat}
I think it's better to get original patch, but not fix tests.
> CacheRegisterMetadataLocallyTest.testClientFindsValueByAffinityKeyStaticCacheWithoutExtraRequest
> failed
> -------------------------------------------------------------------------------------------------------
>
> Key: IGNITE-13135
> URL: https://issues.apache.org/jira/browse/IGNITE-13135
> Project: Ignite
> Issue Type: Bug
> Reporter: Aleksey Plekhanov
> Assignee: Aleksey Plekhanov
> Priority: Major
> Time Spent: 10m
> Remaining Estimate: 0h
>
> Test failed with error:
> {noformat}
> java.lang.AssertionError: []
> Expected :2
> Actual :0
> at
> org.apache.ignite.testframework.junits.JUnitAssertAware.assertEquals(JUnitAssertAware.java:119)
> at
> org.apache.ignite.internal.processors.cache.CacheRegisterMetadataLocallyTest.assertCustomMessages(CacheRegisterMetadataLocallyTest.java:230)
> at
> org.apache.ignite.internal.processors.cache.CacheRegisterMetadataLocallyTest.testClientFindsValueByAffinityKeyStaticCacheWithoutExtraRequest(CacheRegisterMetadataLocallyTest.java:153){noformat}
> After fix IGNITE-13096
> Also test fails sometimes due to ConcurrentModificationException in
> CacheRegisterMetadataLocallyTest.assertCommunicationMessages:
> {noformat}
> class org.apache.ignite.IgniteException: null
> at
> org.apache.ignite.internal.util.tostring.GridToStringBuilder.toStringImpl0(GridToStringBuilder.java:1162)
> at
> org.apache.ignite.internal.util.tostring.GridToStringBuilder.toStringImpl(GridToStringBuilder.java:1045)
> at
> org.apache.ignite.internal.util.tostring.GridToStringBuilder.toString(GridToStringBuilder.java:755)
> at
> org.apache.ignite.internal.util.tostring.GridToStringBuilder.toString(GridToStringBuilder.java:714)
> at
> org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionDemandMessage.toString(GridDhtPartitionDemandMessage.java:387)
> at
> org.apache.ignite.internal.processors.cache.CacheRegisterMetadataLocallyTest.lambda$assertCommunicationMessages$1(CacheRegisterMetadataLocallyTest.java:241)
> at
> java.base/java.util.concurrent.ConcurrentLinkedQueue.forEachFrom(ConcurrentLinkedQueue.java:1037)
> at
> java.base/java.util.concurrent.ConcurrentLinkedQueue.forEach(ConcurrentLinkedQueue.java:1054)
> at
> org.apache.ignite.internal.processors.cache.CacheRegisterMetadataLocallyTest.assertCommunicationMessages(CacheRegisterMetadataLocallyTest.java:240)
> at
> org.apache.ignite.internal.processors.cache.CacheRegisterMetadataLocallyTest.testClientFindsValueByAffinityKeyStaticCacheWithoutExtraRequest(CacheRegisterMetadataLocallyTest.java:154)
> at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native
> Method)
> at
> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at
> java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.base/java.lang.reflect.Method.invoke(Method.java:566)
> at
> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47)
> at
> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
> at
> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44)
> at
> org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
> at
> org.apache.ignite.testframework.junits.GridAbstractTest$7.run(GridAbstractTest.java:2234)
> at java.base/java.lang.Thread.run(Thread.java:834)
> Caused by: class org.apache.ignite.IgniteException: null
> at
> org.apache.ignite.internal.util.tostring.GridToStringBuilder.toStringImpl0(GridToStringBuilder.java:1162)
> at
> org.apache.ignite.internal.util.tostring.GridToStringBuilder.toStringImpl(GridToStringBuilder.java:1045)
> at
> org.apache.ignite.internal.util.tostring.GridToStringBuilder.toString(GridToStringBuilder.java:831)
> at
> org.apache.ignite.internal.processors.cache.distributed.dht.preloader.IgniteDhtDemandedPartitionsMap.toString(IgniteDhtDemandedPartitionsMap.java:167)
> at java.base/java.lang.String.valueOf(String.java:2951)
> at
> org.apache.ignite.internal.util.GridStringBuilder.a(GridStringBuilder.java:102)
> at
> org.apache.ignite.internal.util.tostring.SBLimitedLength.a(SBLimitedLength.java:100)
> at
> org.apache.ignite.internal.util.tostring.GridToStringBuilder.toString(GridToStringBuilder.java:900)
> at
> org.apache.ignite.internal.util.tostring.GridToStringBuilder.toStringImpl0(GridToStringBuilder.java:1111)
> ... 19 more
> Caused by: java.util.ConcurrentModificationException
> at java.base/java.util.HashMap$HashIterator.nextNode(HashMap.java:1493)
> at java.base/java.util.HashMap$KeyIterator.next(HashMap.java:1516)
> at
> org.apache.ignite.internal.util.tostring.GridToStringBuilder.addCollection(GridToStringBuilder.java:950)
> at
> org.apache.ignite.internal.util.tostring.GridToStringBuilder.toString(GridToStringBuilder.java:896)
> at
> org.apache.ignite.internal.util.tostring.GridToStringBuilder.toStringImpl0(GridToStringBuilder.java:1111)
> ... 27 more{noformat}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)