[
https://issues.apache.org/jira/browse/IGNITE-3999?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15632998#comment-15632998
]
Amir Akhmedov commented on IGNITE-3999:
---------------------------------------
[~vkulichenko], I have a concern on this ticket, can you please advise what
will be the correct way to solve it. As of today, fields are defined as
{{setFields(LinkedHashMap<String, String> fields)}}, with introduction of case
insensitive property need to create a new POJO e.g. {{QueryField(String type,
boolean caseInsensitive)}}. So, to keep backward compatibility we can introduce
a new method e.g. {{setQueryFields(LinkedHashMap<String, QueryField> fields)}},
in my opinion it looks like counter-intuitive with existing {{setFields}}
method. Another possible way, this change can be done with changing the generic
type of {{setFields}} (which will not be backward competible) and released in
Ignite 2.0.
Please advise on this, or maybe you have an alternative solutions?
Thanks!
> Support case insensitive search in SQL
> --------------------------------------
>
> Key: IGNITE-3999
> URL: https://issues.apache.org/jira/browse/IGNITE-3999
> Project: Ignite
> Issue Type: Improvement
> Components: cache
> Affects Versions: 1.7
> Reporter: Valentin Kulichenko
> Assignee: Amir Akhmedov
> Priority: Critical
> Fix For: 1.8
>
>
> Currently case insensitive search is possible only with the help of
> {{lower()}} function:
> {code}
> select name from MyValue where lower(name) = 'abc_5'
> {code}
> But this will always be a full scan, even if {{name}} field is indexed.
> We need to correctly support {{VARCHAR_IGNORECASE}} H2 type in Ignite and add
> a respective property to {{@QuerySqlField}} annotation.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)