You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Valentin Kulichenko (JIRA)" <ji...@apache.org> on 2017/01/03 20:07:58 UTC
[jira] [Commented] (IGNITE-4511) Set QueryIndexType.SORTED by
default for an index
[ https://issues.apache.org/jira/browse/IGNITE-4511?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15796051#comment-15796051 ]
Valentin Kulichenko commented on IGNITE-4511:
---------------------------------------------
I think we should remove the {{QueryIndex}} constructor without parameters as it doesn't initialize any default values. This doesn't make much sense and very error-prone.
However, the bug in code is obvious. In case {{idx.getIndexType() == null}}, we should throw an exception.
> Set QueryIndexType.SORTED by default for an index
> --------------------------------------------------
>
> Key: IGNITE-4511
> URL: https://issues.apache.org/jira/browse/IGNITE-4511
> Project: Ignite
> Issue Type: Improvement
> Affects Versions: 1.7
> Environment: Windows Server + Java 8
> Reporter: Steve Hostettler
> Priority: Minor
>
> The code snippet below creates a index of type FULL TEXT which much slower and that I do not need;
> QueryIndex idx1 = new QueryIndex();
> LinkedHashMap<String, Boolean> idxFlds1 = new LinkedHashMap<>();
> idxFlds1.put("field1", true);
> idxFlds1.put("field2", true);
> idx1.setFields(idxFlds1);
> idxs.add(idx1);
> To avoid this I must explicitly set
> idx1.setIndexType(QueryIndexType.SORTED);
> This is because with the above code snippet, the Index Type is null and that null is interpreted as FULL TEXT in GridQueryProcessor.java
> if (idx.getIndexType() == QueryIndexType.SORTED || idx.getIndexType() == QueryIndexType.GEOSPATIAL) {
> ....
> } else {
> assert idx.getIndexType() == QueryIndexType.FULLTEXT;
> for (String field : idx.getFields().keySet()) {
> String alias = aliases.get(field);
> if (alias != null)
> field = alias;
> d.addFieldToTextIndex(field);
> }
> }
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)