You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@ignite.apache.org by GitBox <gi...@apache.org> on 2021/12/23 15:20:29 UTC
[GitHub] [ignite] nizhikov edited a comment on pull request #9618: IGNITE-16028 Node failure with ClassNotFoundException: wrong validation for Object type
nizhikov edited a comment on pull request #9618:
URL: https://github.com/apache/ignite/pull/9618#issuecomment-1000291426
@vladErmakov07 ~I still don't quite understand the use-case and fix.
Extend your test a bit and stuck:~
Sorry test miss main line and now it passes - can we extend it in PR?
```
@Test
public void testCacheSecondaryCompositeIndex() throws Exception {
inlineSize = 70;
startGrid();
String cacheName = "TEST";
List<QueryIndex> indexes = Collections.singletonList(
new QueryIndex("val_obj", QueryIndexType.SORTED).setInlineSize(inlineSize)
);
grid().createCache(new CacheConfiguration<>()
.setName(cacheName)
.setSqlSchema(cacheName)
.setAffinity(new RendezvousAffinityFunction(false, 4))
.setQueryEntities(Collections.singleton(new QueryEntity()
.setTableName(cacheName)
.setKeyType(Integer.class.getName())
.setKeyFieldName("id")
.setValueType("TEST_VAL_SECONDARY_COMPOSITE")
.addQueryField("id", Integer.class.getName(), null)
.addQueryField("val_obj", Object.class.getName(), null)
.setIndexes(indexes)
))
);
BinaryObjectBuilder bob = grid().binary().builder("TEST_VAL_SECONDARY_COMPOSITE");
BinaryObjectBuilder bobInner = grid().binary().builder("inner");
bobInner.setField("inner_k", 0);
bobInner.setField("inner_uuid", UUID.randomUUID());
bob.setField("val_obj", bobInner.build());
IgniteCache<Object, Object> cache = grid().cache(cacheName);
cache.put(0, bob.build());
BinaryObjectBuilder alice = grid().binary().builder("TEST_VAL_SECONDARY_COMPOSITE");
BinaryObjectBuilder aliceInner = grid().binary().builder("inner2");
aliceInner.setField("inner_k2", 0);
aliceInner.setField("inner_uuid2", UUID.randomUUID());
alice.setField("val_obj", aliceInner.build());
cache.put(1, alice.build());
List<List<?>> rows = execSql(cache.withKeepBinary(), "SELECT id, val_obj FROM " + cacheName);
assertEquals(2, rows.size());
for (List<?> row : rows) {
assertNotNull(row.get(0));
assertNotNull("id = " + row.get(0), row.get(1));
}
}
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: notifications-unsubscribe@ignite.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org