[ 
https://issues.apache.org/jira/browse/IGNITE-23164?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Pavel Pereslegin updated IGNITE-23164:
--------------------------------------
    Description: 
The tuple returned by {{ClientKeyValueBinaryView.get()}} method must have only 
value fields.
But we still can access the key column using the column name.
Reproducer (for ClientKeyValueBinaryViewTest):

{code:java}
    @Test
    public void testGet() {
        KeyValueView<Tuple, Tuple> kvView = defaultTable().keyValueView();

        Tuple key = tupleKey(1);

        // insert tuple (id=1, name="test)
        kvView.put(null, key, tupleVal("test"));

        // get value by key
        Tuple val = kvView.get(null, key);

        // correct
        assertEquals(1, val.columnCount());
        assertEquals("test", val.value(0));
        assertEquals("test", val.value("name"));

        // incorrect
        assertEquals(1L, val.longValue("id"));
    }
{code}


  was:
The tuple returned by {{ClientKeyValueBinaryView.get()}} method must have only 
value fields.
But we can access the key column using the column name.
Reproducer (for ClientKeyValueBinaryViewTest):

{code:java}
    @Test
    public void testGet() {
        KeyValueView<Tuple, Tuple> kvView = defaultTable().keyValueView();

        Tuple key = tupleKey(1);

        // insert tuple (id=1, name="test)
        kvView.put(null, key, tupleVal("test"));

        // get value by key
        Tuple val = kvView.get(null, key);

        // correct
        assertEquals(1, val.columnCount());
        assertEquals("test", val.value(0));
        assertEquals("test", val.value("name"));

        // incorrect
        assertEquals(1L, val.longValue("id"));
    }
{code}



> ClientKeyValueBinaryView.get() operation returns tuple with key column
> ----------------------------------------------------------------------
>
>                 Key: IGNITE-23164
>                 URL: https://issues.apache.org/jira/browse/IGNITE-23164
>             Project: Ignite
>          Issue Type: Bug
>          Components: thin client
>            Reporter: Pavel Pereslegin
>            Priority: Major
>              Labels: ignite-3
>
> The tuple returned by {{ClientKeyValueBinaryView.get()}} method must have 
> only value fields.
> But we still can access the key column using the column name.
> Reproducer (for ClientKeyValueBinaryViewTest):
> {code:java}
>     @Test
>     public void testGet() {
>         KeyValueView<Tuple, Tuple> kvView = defaultTable().keyValueView();
>         Tuple key = tupleKey(1);
>         // insert tuple (id=1, name="test)
>         kvView.put(null, key, tupleVal("test"));
>         // get value by key
>         Tuple val = kvView.get(null, key);
>         // correct
>         assertEquals(1, val.columnCount());
>         assertEquals("test", val.value(0));
>         assertEquals("test", val.value("name"));
>         // incorrect
>         assertEquals(1L, val.longValue("id"));
>     }
> {code}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to