You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Pavel Tupitsyn (Jira)" <ji...@apache.org> on 2023/04/25 05:18:00 UTC

[jira] [Comment Edited] (IGNITE-19241) Java thin 3.0: propagate table schema updates to client on write-only operations

    [ https://issues.apache.org/jira/browse/IGNITE-19241?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17716081#comment-17716081 ] 

Pavel Tupitsyn edited comment on IGNITE-19241 at 4/25/23 5:17 AM:
------------------------------------------------------------------

[~isapego] can you please help me with the C++ client? I'm not sure how to fix *table_impl::read_tuples* correctly, do we need *read_array_raw* there? I've only changed *packInt* to *packArrayHeader* on the server side.

https://github.com/apache/ignite-3/pull/1975


was (Author: ptupitsyn):
[~isapego] can you please help me with the C++ client? I'm not sure how to fix *table_impl::read_tuples* correctly, do we need *read_array_raw* there? I've only changed *packInt* to *packArrayHeader* on the server side.

> Java thin 3.0: propagate table schema updates to client on write-only operations
> --------------------------------------------------------------------------------
>
>                 Key: IGNITE-19241
>                 URL: https://issues.apache.org/jira/browse/IGNITE-19241
>             Project: Ignite
>          Issue Type: Improvement
>          Components: thin client
>    Affects Versions: 3.0.0-beta1
>            Reporter: Pavel Tupitsyn
>            Assignee: Pavel Tupitsyn
>            Priority: Major
>              Labels: ignite-3
>             Fix For: 3.0.0-beta2
>
>
> Currently, Java client receives table schema updates when write-read requests are performed. For example, client performs TUPLE_GET request, sends key tuple using old schema version, receives result tuple with the latest schema version, and retrieves the latest schema.
> However, some requests are "write-only": client sends a tuple, but does not receive one back, like TUPLE_UPSERT. No schema updates are performed in this case.
> To fix this, include the latest schema version into all write-only operation responses:
> * TUPLE_UPSERT
> * TUPLE_UPSERT_ALL
> * TUPLE_INSERT
> * TUPLE_INSERT_ALL
> * TUPLE_REPLACE
> * TUPLE_REPLACE_EXACT
> * TUPLE_DELETE
> * TUPLE_DELETE_ALL
> * TUPLE_DELETE_EXACT
> * TUPLE_DELETE_ALL_EXACT
> * TUPLE_CONTAINS_KEY
> Client will compare this version to the known one and perform a background update, if necessary.



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