You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Aleksey Plekhanov (Jira)" <ji...@apache.org> on 2020/06/29 08:39:00 UTC
[jira] [Assigned] (IGNITE-13192) Thin client with compactFooter:
exception on get value after INSERT and put
[ https://issues.apache.org/jira/browse/IGNITE-13192?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Aleksey Plekhanov reassigned IGNITE-13192:
------------------------------------------
Assignee: Aleksey Plekhanov
> Thin client with compactFooter: exception on get value after INSERT and put
> ---------------------------------------------------------------------------
>
> Key: IGNITE-13192
> URL: https://issues.apache.org/jira/browse/IGNITE-13192
> Project: Ignite
> Issue Type: Bug
> Components: thin client
> Reporter: Surkov Aleksandr
> Assignee: Aleksey Plekhanov
> Priority: Major
> Labels: Thin
>
> Reproducer:
> {code:java}
> @Test
> public void testSql() throws Exception {
> try (Ignite ignored = Ignition.start(Config.getServerConfiguration()); Ignite ignored2 = Ignition.start(Config.getServerConfiguration());
> IgniteClient client = Ignition.startClient(new ClientConfiguration().setBinaryConfiguration(new BinaryConfiguration().setCompactFooter(true)).setAddresses(Config.SERVER))
> ) {
> // 1. Create table
> client.query(
> new SqlFieldsQuery(String.format(
> "CREATE TABLE IF NOT EXISTS Person (id INT PRIMARY KEY, name VARCHAR) WITH \"VALUE_TYPE=%s,CACHE_NAME=%s\"",
> Person.class.getName(), "PersonCache"
> )).setSchema("PUBLIC")
> ).getAll();
> int key = 1;
> Person val = new Person(key, "Person " + key);
>
> // 2. INSERT value to cache
> client.query(new SqlFieldsQuery("INSERT INTO Person(id, name) VALUES(?, ?)")
> .setArgs(val.getId(), val.getName())
> .setSchema("PUBLIC")
> )
> .getAll();
>
> // 4. Execute put(). The key must be different from what was in INSERT
> // Without this line, there will be no exception
> client.getOrCreateCache("PersonCache").put(2, val);
> // 5. Execute get(). There will be an exception: org.apache.ignite.binary.BinaryObjectException: Cannot find metadata for object with compact footer
> assertNotNull(client.getOrCreateCache("PersonCache").get(1));
> }
> }{code}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)