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

Ignite TC Bot commented on IGNITE-23946:
----------------------------------------

{panel:title=Branch: [pull/11760/head] Base: [master] : No blockers 
found!|borderStyle=dashed|borderColor=#ccc|titleBGColor=#D6F7C1}{panel}
{panel:title=Branch: [pull/11760/head] Base: [master] : No new tests 
found!|borderStyle=dashed|borderColor=#ccc|titleBGColor=#F7D6C1}{panel}
[TeamCity *--> Run :: All* 
Results|https://ci2.ignite.apache.org/viewLog.html?buildId=8224321&buildTypeId=IgniteTests24Java8_RunAll]

> Improve clarity of 'Cache is already indexed' exception message
> ---------------------------------------------------------------
>
>                 Key: IGNITE-23946
>                 URL: https://issues.apache.org/jira/browse/IGNITE-23946
>             Project: Ignite
>          Issue Type: Task
>            Reporter: Oleg Valuyskiy
>            Assignee: Oleg Valuyskiy
>            Priority: Minor
>              Labels: ise
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> When a user sets an SQL schema for a cache and then attempts to execute a 
> "CREATE TABLE" query, the "Cache is already indexed" exception is thrown. 
> This happens because using the setSqlSchema method marks the cache as 
> supporting SQL. However, "CREATE TABLE" queries should only be executed on 
> caches without this marking.
> It appears that for some users, the "Cache is already indexed" message isn't 
> sufficiently informative since it's not entirely clear which user actions 
> trigger this exception.
> Therefore, it appears to be beneficial to revise the wording of this 
> exception to ensure greater clarity for users.
> A short reproducer:
> {code:java}
> private String schemaName = "PUBLIC";
> private String tableName = "TABLE1";
> ClientCacheConfiguration cacheCfg = new ClientCacheConfiguration()
>         .setName("SQL_" + schemaName + "_" + tableName);
> ClientConfiguration ccfg = new 
> ClientConfiguration().setAddresses("127.0.0.1:10800");
> String createQuery = String.format("CREATE TABLE IF NOT EXISTS %s (id INT 
> PRIMARY KEY, name VARCHAR) WITH \"CACHE_NAME=%s\"",
>         tableName, cacheCfg.getName());
> cacheCfg.setSqlSchema(schemaName);
> startGrid(0);
> IgniteClient cli = Ignition.startClient(ccfg);
> cli.getOrCreateCache(cacheCfg);
> assertThrows(log,
>       () -> cli.query(new SqlFieldsQuery(createQuery)).getAll(),
>       ClientException.class,
>       "Cache is already indexed");
> stopAllGrids();
> cli.close();
> {code}



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

Reply via email to