You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by vo...@apache.org on 2017/04/25 14:34:16 UTC

ignite git commit: IGNITE-5036: @QuerySqlField and @QueryTextField can no longer be applied to methods. This closes #1863.

Repository: ignite
Updated Branches:
  refs/heads/ignite-2.0 5ef610c07 -> 9649733ce


IGNITE-5036: @QuerySqlField and @QueryTextField can no longer be applied to methods. This closes #1863.


Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/9649733c
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/9649733c
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/9649733c

Branch: refs/heads/ignite-2.0
Commit: 9649733ce561166e308b53393e252d7efa087964
Parents: 5ef610c
Author: tledkov-gridgain <tl...@gridgain.com>
Authored: Tue Apr 25 17:34:05 2017 +0300
Committer: devozerov <vo...@gridgain.com>
Committed: Tue Apr 25 17:34:05 2017 +0300

----------------------------------------------------------------------
 .../examples/IndexingBridgeMethodTest.java      | 93 --------------------
 .../IgniteExamplesJ8SelfTestSuite.java          |  2 -
 .../cassandra/common/PropertyMappingHelper.java | 21 +----
 .../persistence/KeyPersistenceSettings.java     | 18 ++--
 .../store/cassandra/persistence/PojoField.java  | 21 +----
 .../cassandra/persistence/PojoKeyField.java     |  7 --
 .../cassandra/persistence/PojoValueField.java   |  6 --
 .../persistence/ValuePersistenceSettings.java   | 12 ++-
 .../org/apache/ignite/tests/pojos/Person.java   | 10 ++-
 .../org/apache/ignite/tests/pojos/Product.java  |  7 --
 .../apache/ignite/tests/pojos/ProductOrder.java |  8 --
 .../internal/jdbc2/JdbcResultSetSelfTest.java   |  2 +-
 .../cache/query/annotations/QuerySqlField.java  |  2 +-
 .../cache/query/annotations/QueryTextField.java |  4 +-
 .../configuration/CacheConfiguration.java       | 26 ------
 .../cache/GridCacheQueryTestValue.java          |  2 +-
 .../IgniteCacheAbstractFieldsQuerySelfTest.java | 29 +-----
 .../cache/IgniteCacheDistributedJoinTest.java   |  6 +-
 18 files changed, 30 insertions(+), 246 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ignite/blob/9649733c/examples/src/test/java8/org/apache/ignite/java8/examples/IndexingBridgeMethodTest.java
----------------------------------------------------------------------
diff --git a/examples/src/test/java8/org/apache/ignite/java8/examples/IndexingBridgeMethodTest.java b/examples/src/test/java8/org/apache/ignite/java8/examples/IndexingBridgeMethodTest.java
deleted file mode 100644
index 2837ed6..0000000
--- a/examples/src/test/java8/org/apache/ignite/java8/examples/IndexingBridgeMethodTest.java
+++ /dev/null
@@ -1,93 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.ignite.java8.examples;
-
-
-import org.apache.ignite.Ignite;
-import org.apache.ignite.IgniteCache;
-import org.apache.ignite.cache.query.SqlFieldsQuery;
-import org.apache.ignite.cache.query.annotations.QuerySqlField;
-import org.apache.ignite.configuration.CacheConfiguration;
-import org.apache.ignite.testframework.junits.common.GridCommonAbstractTest;
-
-/**
- * Test covering bridge methods changes in Java 8.
- */
-public class IndexingBridgeMethodTest extends GridCommonAbstractTest {
-    /**
-     * @throws Exception If failed.
-     */
-    public void testBridgeMethod() throws Exception {
-        Ignite ignite = startGrid();
-
-        CacheConfiguration<Integer, MyType> ccfg = new CacheConfiguration<>();
-
-        ccfg.setName("mytype");
-        ccfg.setIndexedTypes(Integer.class, MyType.class);
-
-        IgniteCache<Integer,MyType> c = ignite.getOrCreateCache(ccfg);
-
-        for (int i = 0; i < 100; i++)
-            c.put(i, new MyType(i));
-
-        assertEquals(100L, c.query(new SqlFieldsQuery(
-            "select count(*) from MyType")).getAll().get(0).get(0));
-        assertEquals(15, c.query(new SqlFieldsQuery(
-            "select id from MyType where _key = 15")).getAll().get(0).get(0));
-        assertEquals(25, c.query(new SqlFieldsQuery(
-            "select _key from MyType where id = 25")).getAll().get(0).get(0));
-    }
-
-    /** {@inheritDoc} */
-    @Override protected void afterTestsStopped() throws Exception {
-        stopAllGrids();
-    }
-
-    /**
-     * Classes implementing this method, will have bridge method.
-     */
-    private static interface HasId<T extends Number> {
-        /**
-         * @return ID.
-         */
-        public T getId();
-    }
-
-    /**
-     *
-     */
-    private static class MyType implements HasId<Integer> {
-        /** */
-        private int id;
-
-        /**
-         * @param id Id.
-         */
-        private MyType(int id) {
-            this.id = id;
-        }
-
-        /**
-         * @return ID.
-         */
-        @QuerySqlField(index = true)
-        @Override public Integer getId() {
-            return id;
-        }
-    }
-}

http://git-wip-us.apache.org/repos/asf/ignite/blob/9649733c/examples/src/test/java8/org/apache/ignite/java8/testsuites/IgniteExamplesJ8SelfTestSuite.java
----------------------------------------------------------------------
diff --git a/examples/src/test/java8/org/apache/ignite/java8/testsuites/IgniteExamplesJ8SelfTestSuite.java b/examples/src/test/java8/org/apache/ignite/java8/testsuites/IgniteExamplesJ8SelfTestSuite.java
index 7b62ea8..9a5f36a 100644
--- a/examples/src/test/java8/org/apache/ignite/java8/testsuites/IgniteExamplesJ8SelfTestSuite.java
+++ b/examples/src/test/java8/org/apache/ignite/java8/testsuites/IgniteExamplesJ8SelfTestSuite.java
@@ -24,7 +24,6 @@ import org.apache.ignite.java8.examples.CacheExamplesMultiNodeSelfTest;
 import org.apache.ignite.java8.examples.CacheExamplesSelfTest;
 import org.apache.ignite.java8.examples.EventsExamplesMultiNodeSelfTest;
 import org.apache.ignite.java8.examples.EventsExamplesSelfTest;
-import org.apache.ignite.java8.examples.IndexingBridgeMethodTest;
 import org.apache.ignite.java8.examples.MessagingExamplesSelfTest;
 import org.apache.ignite.testframework.GridTestUtils;
 
@@ -46,7 +45,6 @@ public class IgniteExamplesJ8SelfTestSuite extends TestSuite {
 
         TestSuite suite = new TestSuite("Ignite Examples Test Suite");
 
-        suite.addTest(new TestSuite(IndexingBridgeMethodTest.class));
         suite.addTest(new TestSuite(CacheExamplesSelfTest.class));
         suite.addTest(new TestSuite(BasicExamplesSelfTest.class));
 

http://git-wip-us.apache.org/repos/asf/ignite/blob/9649733c/modules/cassandra/store/src/main/java/org/apache/ignite/cache/store/cassandra/common/PropertyMappingHelper.java
----------------------------------------------------------------------
diff --git a/modules/cassandra/store/src/main/java/org/apache/ignite/cache/store/cassandra/common/PropertyMappingHelper.java b/modules/cassandra/store/src/main/java/org/apache/ignite/cache/store/cassandra/common/PropertyMappingHelper.java
index 64b784b..cb89bf0 100644
--- a/modules/cassandra/store/src/main/java/org/apache/ignite/cache/store/cassandra/common/PropertyMappingHelper.java
+++ b/modules/cassandra/store/src/main/java/org/apache/ignite/cache/store/cassandra/common/PropertyMappingHelper.java
@@ -20,7 +20,6 @@ package org.apache.ignite.cache.store.cassandra.common;
 import com.datastax.driver.core.DataType;
 import com.datastax.driver.core.Row;
 import java.beans.PropertyDescriptor;
-import java.lang.annotation.Annotation;
 import java.math.BigDecimal;
 import java.math.BigInteger;
 import java.net.InetAddress;
@@ -103,25 +102,12 @@ public class PropertyMappingHelper {
      * Extracts all property descriptors from a class.
      *
      * @param clazz class which property descriptors should be extracted.
-     * @param primitive boolean flag indicating that only property descriptors for primitive properties should be extracted.
+     * @param primitive boolean flag indicating that only property descriptors for primitive properties
+     *      should be extracted.
      *
      * @return list of class property descriptors
      */
     public static List<PropertyDescriptor> getPojoPropertyDescriptors(Class clazz, boolean primitive) {
-        return getPojoPropertyDescriptors(clazz, null, primitive);
-    }
-
-    /**
-     * Extracts all property descriptors having specific annotation from a class.
-     *
-     * @param clazz class which property descriptors should be extracted.
-     * @param annotation annotation to look for.
-     * @param primitive boolean flag indicating that only property descriptors for primitive properties should be extracted.
-     *
-     * @return list of class property descriptors
-     */
-    public static <T extends Annotation> List<PropertyDescriptor> getPojoPropertyDescriptors(Class clazz,
-        Class<T> annotation, boolean primitive) {
         PropertyDescriptor[] descriptors = PropertyUtils.getPropertyDescriptors(clazz);
 
         List<PropertyDescriptor> list = new ArrayList<>(descriptors == null ? 1 : descriptors.length);
@@ -133,8 +119,7 @@ public class PropertyMappingHelper {
             if (descriptor.getReadMethod() == null || (primitive && !isPrimitivePropertyDescriptor(descriptor)))
                 continue;
 
-            if (annotation == null || descriptor.getReadMethod().getAnnotation(annotation) != null)
-                list.add(descriptor);
+            list.add(descriptor);
         }
 
         return list;

http://git-wip-us.apache.org/repos/asf/ignite/blob/9649733c/modules/cassandra/store/src/main/java/org/apache/ignite/cache/store/cassandra/persistence/KeyPersistenceSettings.java
----------------------------------------------------------------------
diff --git a/modules/cassandra/store/src/main/java/org/apache/ignite/cache/store/cassandra/persistence/KeyPersistenceSettings.java b/modules/cassandra/store/src/main/java/org/apache/ignite/cache/store/cassandra/persistence/KeyPersistenceSettings.java
index c614abf..c12c3e8 100644
--- a/modules/cassandra/store/src/main/java/org/apache/ignite/cache/store/cassandra/persistence/KeyPersistenceSettings.java
+++ b/modules/cassandra/store/src/main/java/org/apache/ignite/cache/store/cassandra/persistence/KeyPersistenceSettings.java
@@ -22,8 +22,6 @@ import java.util.LinkedList;
 import java.util.List;
 
 import org.apache.ignite.IgniteException;
-import org.apache.ignite.cache.affinity.AffinityKeyMapped;
-import org.apache.ignite.cache.query.annotations.QuerySqlField;
 import org.apache.ignite.cache.store.cassandra.common.PropertyMappingHelper;
 import org.w3c.dom.Element;
 import org.w3c.dom.NodeList;
@@ -214,12 +212,8 @@ public class KeyPersistenceSettings extends PersistenceSettings {
 
         if (el == null) {
             for (PropertyDescriptor desc : descriptors) {
-                boolean valid = desc.getWriteMethod() != null ||
-                        desc.getReadMethod().getAnnotation(QuerySqlField.class) != null ||
-                        desc.getReadMethod().getAnnotation(AffinityKeyMapped.class) != null;
-
-                // Skip POJO field if it's read-only and is not annotated with @QuerySqlField or @AffinityKeyMapped.
-                if (valid)
+                // Skip POJO field if it's read-only
+                if (desc.getWriteMethod() != null)
                     list.add(new PojoKeyField(desc));
             }
 
@@ -256,11 +250,8 @@ public class KeyPersistenceSettings extends PersistenceSettings {
      * @return POJO field descriptors for partition key.
      */
     private List<PropertyDescriptor> getPartitionKeyDescriptors() {
-        List<PropertyDescriptor> primitivePropDescriptors = PropertyMappingHelper.getPojoPropertyDescriptors(getJavaClass(),
-            AffinityKeyMapped.class, true);
-
-        primitivePropDescriptors = primitivePropDescriptors != null && !primitivePropDescriptors.isEmpty() ?
-            primitivePropDescriptors : PropertyMappingHelper.getPojoPropertyDescriptors(getJavaClass(), true);
+        List<PropertyDescriptor> primitivePropDescriptors = PropertyMappingHelper.getPojoPropertyDescriptors(
+            getJavaClass(), true);
 
         boolean valid = false;
 
@@ -281,6 +272,7 @@ public class KeyPersistenceSettings extends PersistenceSettings {
     }
 
     /**
+     * @param partKeyFields List of fields.
      * @return POJO field descriptors for cluster key.
      */
     private List<PropertyDescriptor> getClusterKeyDescriptors(List<PojoField> partKeyFields) {

http://git-wip-us.apache.org/repos/asf/ignite/blob/9649733c/modules/cassandra/store/src/main/java/org/apache/ignite/cache/store/cassandra/persistence/PojoField.java
----------------------------------------------------------------------
diff --git a/modules/cassandra/store/src/main/java/org/apache/ignite/cache/store/cassandra/persistence/PojoField.java b/modules/cassandra/store/src/main/java/org/apache/ignite/cache/store/cassandra/persistence/PojoField.java
index 99b96d5..566c0b9 100644
--- a/modules/cassandra/store/src/main/java/org/apache/ignite/cache/store/cassandra/persistence/PojoField.java
+++ b/modules/cassandra/store/src/main/java/org/apache/ignite/cache/store/cassandra/persistence/PojoField.java
@@ -21,9 +21,7 @@ import com.datastax.driver.core.DataType;
 import com.datastax.driver.core.Row;
 import java.beans.PropertyDescriptor;
 import java.io.Serializable;
-import java.lang.reflect.Method;
 import org.apache.ignite.IgniteException;
-import org.apache.ignite.cache.query.annotations.QuerySqlField;
 import org.apache.ignite.cache.store.cassandra.common.PropertyMappingHelper;
 import org.apache.ignite.cache.store.cassandra.serializer.Serializer;
 import org.w3c.dom.Element;
@@ -86,19 +84,9 @@ public abstract class PojoField implements Serializable {
     public PojoField(PropertyDescriptor desc) {
         this.name = desc.getName();
 
-        Method rdMthd = desc.getReadMethod();
-
-        QuerySqlField sqlField = rdMthd != null && rdMthd.getAnnotation(QuerySqlField.class) != null
-            ? rdMthd.getAnnotation(QuerySqlField.class)
-            : desc.getWriteMethod() == null ? null : desc.getWriteMethod().getAnnotation(QuerySqlField.class);
-
-        col = sqlField != null && sqlField.name() != null &&
-            !sqlField.name().trim().isEmpty() ? sqlField.name() : name.toLowerCase();
+        col = name.toLowerCase();
 
         init(desc);
-
-        if (sqlField != null)
-            init(sqlField);
     }
 
     /**
@@ -202,13 +190,6 @@ public abstract class PojoField implements Serializable {
     }
 
     /**
-     * Initializes field info from annotation.
-     *
-     * @param sqlField {@link QuerySqlField} annotation.
-     */
-    protected abstract void init(QuerySqlField sqlField);
-
-    /**
      * Initializes field info from property descriptor.
      *
      * @param desc {@link PropertyDescriptor} descriptor.

http://git-wip-us.apache.org/repos/asf/ignite/blob/9649733c/modules/cassandra/store/src/main/java/org/apache/ignite/cache/store/cassandra/persistence/PojoKeyField.java
----------------------------------------------------------------------
diff --git a/modules/cassandra/store/src/main/java/org/apache/ignite/cache/store/cassandra/persistence/PojoKeyField.java b/modules/cassandra/store/src/main/java/org/apache/ignite/cache/store/cassandra/persistence/PojoKeyField.java
index ec37411..bf1d40e 100644
--- a/modules/cassandra/store/src/main/java/org/apache/ignite/cache/store/cassandra/persistence/PojoKeyField.java
+++ b/modules/cassandra/store/src/main/java/org/apache/ignite/cache/store/cassandra/persistence/PojoKeyField.java
@@ -18,7 +18,6 @@
 package org.apache.ignite.cache.store.cassandra.persistence;
 
 import java.beans.PropertyDescriptor;
-import org.apache.ignite.cache.query.annotations.QuerySqlField;
 import org.w3c.dom.Element;
 
 /**
@@ -78,10 +77,4 @@ public class PojoKeyField extends PojoField {
     public SortOrder getSortOrder() {
         return sortOrder;
     }
-
-    /** {@inheritDoc} */
-    @Override protected void init(QuerySqlField sqlField) {
-        if (sqlField.descending())
-            sortOrder = SortOrder.DESC;
-    }
 }

http://git-wip-us.apache.org/repos/asf/ignite/blob/9649733c/modules/cassandra/store/src/main/java/org/apache/ignite/cache/store/cassandra/persistence/PojoValueField.java
----------------------------------------------------------------------
diff --git a/modules/cassandra/store/src/main/java/org/apache/ignite/cache/store/cassandra/persistence/PojoValueField.java b/modules/cassandra/store/src/main/java/org/apache/ignite/cache/store/cassandra/persistence/PojoValueField.java
index fcdd408..9d25b60 100644
--- a/modules/cassandra/store/src/main/java/org/apache/ignite/cache/store/cassandra/persistence/PojoValueField.java
+++ b/modules/cassandra/store/src/main/java/org/apache/ignite/cache/store/cassandra/persistence/PojoValueField.java
@@ -18,7 +18,6 @@
 package org.apache.ignite.cache.store.cassandra.persistence;
 
 import java.beans.PropertyDescriptor;
-import org.apache.ignite.cache.query.annotations.QuerySqlField;
 import org.w3c.dom.Element;
 
 /**
@@ -135,9 +134,4 @@ public class PojoValueField extends PojoField {
 
         return builder.append(";").toString();
     }
-
-    /** {@inheritDoc} */
-    @Override protected void init(QuerySqlField sqlField) {
-        // No-op.
-    }
 }

http://git-wip-us.apache.org/repos/asf/ignite/blob/9649733c/modules/cassandra/store/src/main/java/org/apache/ignite/cache/store/cassandra/persistence/ValuePersistenceSettings.java
----------------------------------------------------------------------
diff --git a/modules/cassandra/store/src/main/java/org/apache/ignite/cache/store/cassandra/persistence/ValuePersistenceSettings.java b/modules/cassandra/store/src/main/java/org/apache/ignite/cache/store/cassandra/persistence/ValuePersistenceSettings.java
index f117fb6..b737e2c 100644
--- a/modules/cassandra/store/src/main/java/org/apache/ignite/cache/store/cassandra/persistence/ValuePersistenceSettings.java
+++ b/modules/cassandra/store/src/main/java/org/apache/ignite/cache/store/cassandra/persistence/ValuePersistenceSettings.java
@@ -22,7 +22,6 @@ import java.util.Collections;
 import java.util.LinkedList;
 import java.util.List;
 
-import org.apache.ignite.cache.query.annotations.QuerySqlField;
 import org.apache.ignite.cache.store.cassandra.common.PropertyMappingHelper;
 import org.w3c.dom.Element;
 import org.w3c.dom.NodeList;
@@ -85,13 +84,12 @@ public class ValuePersistenceSettings extends PersistenceSettings {
         List<PojoField> list = new LinkedList<>();
 
         if (fieldNodes == null || fieldNodes.getLength() == 0) {
-            List<PropertyDescriptor> primitivePropDescriptors = PropertyMappingHelper.getPojoPropertyDescriptors(getJavaClass(), true);
-            for (PropertyDescriptor desc : primitivePropDescriptors) {
-                boolean valid = desc.getWriteMethod() != null ||
-                        desc.getReadMethod().getAnnotation(QuerySqlField.class) != null;
+            List<PropertyDescriptor> primitivePropDescriptors =
+                PropertyMappingHelper.getPojoPropertyDescriptors(getJavaClass(), true);
 
-                // Skip POJO field if it's read-only and is not annotated with @QuerySqlField.
-                if (valid)
+            for (PropertyDescriptor desc : primitivePropDescriptors) {
+                // Skip POJO field if it's read-only
+                if (desc.getWriteMethod() != null)
                     list.add(new PojoValueField(desc));
             }
 

http://git-wip-us.apache.org/repos/asf/ignite/blob/9649733c/modules/cassandra/store/src/test/java/org/apache/ignite/tests/pojos/Person.java
----------------------------------------------------------------------
diff --git a/modules/cassandra/store/src/test/java/org/apache/ignite/tests/pojos/Person.java b/modules/cassandra/store/src/test/java/org/apache/ignite/tests/pojos/Person.java
index 16b64bd..89d4851 100644
--- a/modules/cassandra/store/src/test/java/org/apache/ignite/tests/pojos/Person.java
+++ b/modules/cassandra/store/src/test/java/org/apache/ignite/tests/pojos/Person.java
@@ -17,8 +17,6 @@
 
 package org.apache.ignite.tests.pojos;
 
-import org.apache.ignite.cache.query.annotations.QuerySqlField;
-
 import java.io.Externalizable;
 import java.io.IOException;
 import java.io.ObjectInput;
@@ -40,6 +38,9 @@ public class Person implements Externalizable {
     private String lastName;
 
     /** */
+    private String fullName;
+
+    /** */
     private int age;
 
     /** */
@@ -178,6 +179,7 @@ public class Person implements Externalizable {
     @SuppressWarnings("UnusedDeclaration")
     public void setFirstName(String name) {
         firstName = name;
+        fullName = firstName + " " + lastName;
     }
 
     /** */
@@ -190,6 +192,7 @@ public class Person implements Externalizable {
     @SuppressWarnings("UnusedDeclaration")
     public void setLastName(String name) {
         lastName = name;
+        fullName = firstName + " " + lastName;
     }
 
     /** */
@@ -200,9 +203,8 @@ public class Person implements Externalizable {
 
     /** */
     @SuppressWarnings("UnusedDeclaration")
-    @QuerySqlField
     public String getFullName() {
-        return firstName + " " + lastName;
+        return fullName;
     }
 
     /** */

http://git-wip-us.apache.org/repos/asf/ignite/blob/9649733c/modules/cassandra/store/src/test/java/org/apache/ignite/tests/pojos/Product.java
----------------------------------------------------------------------
diff --git a/modules/cassandra/store/src/test/java/org/apache/ignite/tests/pojos/Product.java b/modules/cassandra/store/src/test/java/org/apache/ignite/tests/pojos/Product.java
index f8eadf4..624b27b 100644
--- a/modules/cassandra/store/src/test/java/org/apache/ignite/tests/pojos/Product.java
+++ b/modules/cassandra/store/src/test/java/org/apache/ignite/tests/pojos/Product.java
@@ -17,8 +17,6 @@
 
 package org.apache.ignite.tests.pojos;
 
-import org.apache.ignite.cache.query.annotations.QuerySqlField;
-
 /**
  * Simple POJO to store information about product
  */
@@ -72,7 +70,6 @@ public class Product {
     }
 
     /** */
-    @QuerySqlField(index = true)
     public long getId() {
         return id;
     }
@@ -83,7 +80,6 @@ public class Product {
     }
 
     /** */
-    @QuerySqlField
     public String getType() {
         return type;
     }
@@ -94,7 +90,6 @@ public class Product {
     }
 
     /** */
-    @QuerySqlField(index = true)
     public String getTitle() {
         return title;
     }
@@ -105,7 +100,6 @@ public class Product {
     }
 
     /** */
-    @QuerySqlField
     public String getDescription() {
         return description;
     }
@@ -116,7 +110,6 @@ public class Product {
     }
 
     /** */
-    @QuerySqlField
     public float getPrice() {
         return price;
     }

http://git-wip-us.apache.org/repos/asf/ignite/blob/9649733c/modules/cassandra/store/src/test/java/org/apache/ignite/tests/pojos/ProductOrder.java
----------------------------------------------------------------------
diff --git a/modules/cassandra/store/src/test/java/org/apache/ignite/tests/pojos/ProductOrder.java b/modules/cassandra/store/src/test/java/org/apache/ignite/tests/pojos/ProductOrder.java
index bafc8f3..31c881e 100644
--- a/modules/cassandra/store/src/test/java/org/apache/ignite/tests/pojos/ProductOrder.java
+++ b/modules/cassandra/store/src/test/java/org/apache/ignite/tests/pojos/ProductOrder.java
@@ -17,8 +17,6 @@
 
 package org.apache.ignite.tests.pojos;
 
-import org.apache.ignite.cache.query.annotations.QuerySqlField;
-
 import java.text.DateFormat;
 import java.text.SimpleDateFormat;
 import java.util.Date;
@@ -91,7 +89,6 @@ public class ProductOrder {
     }
 
     /** */
-    @QuerySqlField(index = true)
     public long getId() {
         return id;
     }
@@ -102,7 +99,6 @@ public class ProductOrder {
     }
 
     /** */
-    @QuerySqlField(index = true)
     public long getProductId() {
         return productId;
     }
@@ -113,7 +109,6 @@ public class ProductOrder {
     }
 
     /** */
-    @QuerySqlField
     public Date getDate() {
         return date;
     }
@@ -124,7 +119,6 @@ public class ProductOrder {
     }
 
     /** */
-    @QuerySqlField
     public int getAmount() {
         return amount;
     }
@@ -135,13 +129,11 @@ public class ProductOrder {
     }
 
     /** */
-    @QuerySqlField
     public float getPrice() {
         return price;
     }
 
     /** */
-    @QuerySqlField
     public String getDayMillisecond() {
         return FORMAT.format(date);
     }

http://git-wip-us.apache.org/repos/asf/ignite/blob/9649733c/modules/clients/src/test/java/org/apache/ignite/internal/jdbc2/JdbcResultSetSelfTest.java
----------------------------------------------------------------------
diff --git a/modules/clients/src/test/java/org/apache/ignite/internal/jdbc2/JdbcResultSetSelfTest.java b/modules/clients/src/test/java/org/apache/ignite/internal/jdbc2/JdbcResultSetSelfTest.java
index 64a077e..8fb651d 100644
--- a/modules/clients/src/test/java/org/apache/ignite/internal/jdbc2/JdbcResultSetSelfTest.java
+++ b/modules/clients/src/test/java/org/apache/ignite/internal/jdbc2/JdbcResultSetSelfTest.java
@@ -654,10 +654,10 @@ public class JdbcResultSetSelfTest extends GridCommonAbstractTest {
         protected boolean boolVal3;
 
         /** */
+        @QuerySqlField(index = false)
         protected boolean boolVal4;
 
         /** */
-        @QuerySqlField(index = false)
         public boolean isBoolVal4() {
             return boolVal4;
         }

http://git-wip-us.apache.org/repos/asf/ignite/blob/9649733c/modules/core/src/main/java/org/apache/ignite/cache/query/annotations/QuerySqlField.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/cache/query/annotations/QuerySqlField.java b/modules/core/src/main/java/org/apache/ignite/cache/query/annotations/QuerySqlField.java
index 48402b5..94dbea1 100644
--- a/modules/core/src/main/java/org/apache/ignite/cache/query/annotations/QuerySqlField.java
+++ b/modules/core/src/main/java/org/apache/ignite/cache/query/annotations/QuerySqlField.java
@@ -31,7 +31,7 @@ import org.apache.ignite.internal.processors.cache.query.CacheQuery;
  */
 @Documented
 @Retention(RetentionPolicy.RUNTIME)
-@Target({ElementType.METHOD, ElementType.FIELD})
+@Target({ElementType.FIELD})
 public @interface QuerySqlField {
     /**
      * Specifies whether cache should maintain an index for this field or not.

http://git-wip-us.apache.org/repos/asf/ignite/blob/9649733c/modules/core/src/main/java/org/apache/ignite/cache/query/annotations/QueryTextField.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/cache/query/annotations/QueryTextField.java b/modules/core/src/main/java/org/apache/ignite/cache/query/annotations/QueryTextField.java
index 55809b6..1e01b6a 100644
--- a/modules/core/src/main/java/org/apache/ignite/cache/query/annotations/QueryTextField.java
+++ b/modules/core/src/main/java/org/apache/ignite/cache/query/annotations/QueryTextField.java
@@ -25,14 +25,14 @@ import java.lang.annotation.Target;
 import org.apache.ignite.internal.processors.cache.query.CacheQuery;
 
 /**
- * Annotation for fields or getters to be indexed for full text
+ * Annotation for fields to be indexed for full text
  * search using Lucene. For more information
  * refer to {@link CacheQuery} documentation.
  * @see CacheQuery
  */
 @Documented
 @Retention(RetentionPolicy.RUNTIME)
-@Target({ElementType.METHOD, ElementType.FIELD, ElementType.TYPE})
+@Target({ElementType.FIELD, ElementType.TYPE})
 public @interface QueryTextField {
     // No-op.
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/ignite/blob/9649733c/modules/core/src/main/java/org/apache/ignite/configuration/CacheConfiguration.java
----------------------------------------------------------------------
diff --git a/modules/core/src/main/java/org/apache/ignite/configuration/CacheConfiguration.java b/modules/core/src/main/java/org/apache/ignite/configuration/CacheConfiguration.java
index 219e0b1..8a3874f 100644
--- a/modules/core/src/main/java/org/apache/ignite/configuration/CacheConfiguration.java
+++ b/modules/core/src/main/java/org/apache/ignite/configuration/CacheConfiguration.java
@@ -2141,32 +2141,6 @@ public class CacheConfiguration<K, V> extends MutableConfiguration<K, V> {
                     processAnnotation(key, sqlAnn, txtAnn, cls, c, field.getType(), prop, type);
                 }
             }
-
-            for (Method mtd : c.getDeclaredMethods()) {
-                if (mtd.isBridge())
-                    continue;
-
-                QuerySqlField sqlAnn = mtd.getAnnotation(QuerySqlField.class);
-                QueryTextField txtAnn = mtd.getAnnotation(QueryTextField.class);
-
-                if (sqlAnn != null || txtAnn != null) {
-                    if (mtd.getParameterTypes().length != 0)
-                        throw new CacheException("Getter with QuerySqlField " +
-                            "annotation cannot have parameters: " + mtd);
-
-                    ClassProperty prop = new ClassProperty(mtd);
-
-                    prop.parent(parent);
-
-                    // Add parent property before its possible nested properties so that
-                    // resulting parent column comes before columns corresponding to those
-                    // nested properties in the resulting table - that way nested
-                    // properties override will happen properly (first parent, then children).
-                    type.addProperty(prop, key, true);
-
-                    processAnnotation(key, sqlAnn, txtAnn, cls, c, mtd.getReturnType(), prop, type);
-                }
-            }
         }
     }
 

http://git-wip-us.apache.org/repos/asf/ignite/blob/9649733c/modules/indexing/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheQueryTestValue.java
----------------------------------------------------------------------
diff --git a/modules/indexing/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheQueryTestValue.java b/modules/indexing/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheQueryTestValue.java
index 4d19b1a..116049f 100644
--- a/modules/indexing/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheQueryTestValue.java
+++ b/modules/indexing/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheQueryTestValue.java
@@ -32,6 +32,7 @@ public class GridCacheQueryTestValue implements Serializable {
     private String field1;
 
     /** */
+    @QuerySqlField
     private int field2;
 
     /** */
@@ -72,7 +73,6 @@ public class GridCacheQueryTestValue implements Serializable {
      *
      * @return Field.
      */
-    @QuerySqlField
     public int getField2() {
         return field2;
     }

http://git-wip-us.apache.org/repos/asf/ignite/blob/9649733c/modules/indexing/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheAbstractFieldsQuerySelfTest.java
----------------------------------------------------------------------
diff --git a/modules/indexing/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheAbstractFieldsQuerySelfTest.java b/modules/indexing/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheAbstractFieldsQuerySelfTest.java
index 8c8828d..fedeef6 100644
--- a/modules/indexing/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheAbstractFieldsQuerySelfTest.java
+++ b/modules/indexing/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheAbstractFieldsQuerySelfTest.java
@@ -310,7 +310,7 @@ public abstract class IgniteCacheAbstractFieldsQuerySelfTest extends GridCommonA
                     Map<String, String> fields = meta.fields("Organization");
 
                     assert fields != null;
-                    assertEquals("Fields: " + fields, 5, fields.size());
+                    assertEquals("Fields: " + fields, 4, fields.size());
 
                     if (binaryMarshaller) {
                         assert Object.class.getName().equals(fields.get("_VAL"));
@@ -605,7 +605,7 @@ public abstract class IgniteCacheAbstractFieldsQuerySelfTest extends GridCommonA
         int cnt = 0;
 
         for (List<?> row : res) {
-            assertEquals(10, row.size());
+            assertEquals(9, row.size());
 
             if (cnt == 0) {
                 assert new AffinityKey<>("p1", "o1").equals(row.get(0));
@@ -860,23 +860,6 @@ public abstract class IgniteCacheAbstractFieldsQuerySelfTest extends GridCommonA
     /**
      * @throws Exception If failed.
      */
-    public void testMethodAnnotationWithoutGet() throws Exception {
-        if (!binaryMarshaller) {
-            QueryCursor<List<?>> qry =
-                orgCache.query(sqlFieldsQuery("select methodField from Organization where methodField='name-A'")
-                    .setPageSize(10));
-
-            List<List<?>> flds = qry.getAll();
-
-            assertEquals(1, flds.size());
-
-            assertEquals("name-A", flds.get(0).get(0));
-        }
-    }
-
-    /**
-     * @throws Exception If failed.
-     */
     public void testPaginationGet() throws Exception {
         QueryCursor<List<?>> qry =
             intCache.query(sqlFieldsQuery("select _key, _val from Integer").setPageSize(10));
@@ -1060,14 +1043,6 @@ public abstract class IgniteCacheAbstractFieldsQuerySelfTest extends GridCommonA
             this.name = name;
         }
 
-        /**
-         * @return Generated method value.
-         */
-        @QuerySqlField
-        public String methodField() {
-            return "name-" + name;
-        }
-
         /** {@inheritDoc} */
         @Override public boolean equals(Object o) {
             if (this == o)

http://git-wip-us.apache.org/repos/asf/ignite/blob/9649733c/modules/indexing/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheDistributedJoinTest.java
----------------------------------------------------------------------
diff --git a/modules/indexing/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheDistributedJoinTest.java b/modules/indexing/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheDistributedJoinTest.java
index a553c3f..e69b5ec 100644
--- a/modules/indexing/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheDistributedJoinTest.java
+++ b/modules/indexing/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheDistributedJoinTest.java
@@ -234,12 +234,15 @@ public class IgniteCacheDistributedJoinTest extends GridCommonAbstractTest {
      */
     public static class X {
         /** */
+        @QuerySqlField(index = true)
         public long a;
 
         /** */
+        @QuerySqlField(index = true)
         public long b;
 
         /** */
+        @QuerySqlField(index = true)
         public long c;
 
         /**
@@ -254,19 +257,16 @@ public class IgniteCacheDistributedJoinTest extends GridCommonAbstractTest {
         }
 
         /** */
-        @QuerySqlField(index = true)
         public long getA() {
             return a;
         }
 
         /** */
-        @QuerySqlField(index = true)
         public long getB() {
             return b;
         }
 
         /** */
-        @QuerySqlField(index = true)
         public long getC() {
             return c;
         }