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

Pavel Tupitsyn updated IGNITE-21685:
------------------------------------
    Description: 
Add the following test to *ItThinClientComputeTest*:

{code:java}
    @Test
    void testExecuteColocatedEscapedTableName() {
        var session = client().sql().sessionBuilder().build();
        session.execute(null, "CREATE TABLE \"TBL ABC\" (key INT PRIMARY KEY, 
val INT)");

        var tableName = "TBL ABC";
        client().compute().executeColocated(tableName, 
Tuple.create().set("key", 1), List.of(), NodeNameJob.class.getName());
    }
{code}

It fails:

{code}
Caused by: java.lang.IllegalArgumentException: Fully qualified name is not 
expected [name=TBL ABC]
        at 
org.apache.ignite.lang.util.IgniteNameUtils.parseSimpleName(IgniteNameUtils.java:49)
        at 
org.apache.ignite.internal.table.distributed.TableManager.tableAsync(TableManager.java:1510)
        at 
org.apache.ignite.client.handler.requests.table.ClientTableGetRequest.process(ClientTableGetRequest.java:45)
        at 
org.apache.ignite.client.handler.ClientInboundMessageHandler.processOperation(ClientInboundMessageHandler.java:637)
        at 
org.apache.ignite.client.handler.ClientInboundMessageHandler.processOperation(ClientInboundMessageHandler.java:569)
{code}

> Thin 3.0: executeColocated does not work with escaped table names
> -----------------------------------------------------------------
>
>                 Key: IGNITE-21685
>                 URL: https://issues.apache.org/jira/browse/IGNITE-21685
>             Project: Ignite
>          Issue Type: Bug
>          Components: compute, 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
>
>
> Add the following test to *ItThinClientComputeTest*:
> {code:java}
>     @Test
>     void testExecuteColocatedEscapedTableName() {
>         var session = client().sql().sessionBuilder().build();
>         session.execute(null, "CREATE TABLE \"TBL ABC\" (key INT PRIMARY KEY, 
> val INT)");
>         var tableName = "TBL ABC";
>         client().compute().executeColocated(tableName, 
> Tuple.create().set("key", 1), List.of(), NodeNameJob.class.getName());
>     }
> {code}
> It fails:
> {code}
> Caused by: java.lang.IllegalArgumentException: Fully qualified name is not 
> expected [name=TBL ABC]
>       at 
> org.apache.ignite.lang.util.IgniteNameUtils.parseSimpleName(IgniteNameUtils.java:49)
>       at 
> org.apache.ignite.internal.table.distributed.TableManager.tableAsync(TableManager.java:1510)
>       at 
> org.apache.ignite.client.handler.requests.table.ClientTableGetRequest.process(ClientTableGetRequest.java:45)
>       at 
> org.apache.ignite.client.handler.ClientInboundMessageHandler.processOperation(ClientInboundMessageHandler.java:637)
>       at 
> org.apache.ignite.client.handler.ClientInboundMessageHandler.processOperation(ClientInboundMessageHandler.java:569)
> {code}



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

Reply via email to