You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Sergi Vladykin (JIRA)" <ji...@apache.org> on 2015/12/14 01:29:46 UTC

[jira] [Updated] (IGNITE-969) Failed to start node if 'textFields' in 'CacheTypeMetadata' contains non String value (Integer in my case)

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

Sergi Vladykin updated IGNITE-969:
----------------------------------
    Fix Version/s:     (was: 1.5)
                   1.6

> Failed to start node if 'textFields' in 'CacheTypeMetadata' contains non String value (Integer in my case)
> ----------------------------------------------------------------------------------------------------------
>
>                 Key: IGNITE-969
>                 URL: https://issues.apache.org/jira/browse/IGNITE-969
>             Project: Ignite
>          Issue Type: Bug
>          Components: cache, SQL
>    Affects Versions: sprint-6
>            Reporter: Pavel Konstantinov
>            Assignee: Sergi Vladykin
>            Priority: Blocker
>             Fix For: 1.6
>
>
> {code}
>                 <bean class="org.apache.ignite.cache.CacheTypeMetadata">
>                     <property name="databaseSchema" value="PUBLIC"/>
>                     <property name="databaseTable" value="ADDRESS"/>
>                     <property name="keyType" value="org.gridgain.visor.tester.sql.AddressKey"/>
>                     <property name="valueType" value="org.gridgain.visor.tester.sql.Address"/>
>                     <property name="keyFields">
>                         <list>
>                             <bean class="org.apache.ignite.cache.CacheTypeFieldMetadata">
>                                 <property name="databaseName" value="PK"/>
>                                 <property name="databaseType">
>                                     <util:constant static-field="java.sql.Types.INTEGER"/>
>                                 </property>
>                                 <property name="javaName" value="pk"/>
>                                 <property name="javaType" value="int"/>
>                             </bean>
>                         </list>
>                     </property>
>                     <property name="valueFields">
>                         <list>
>                             <bean class="org.apache.ignite.cache.CacheTypeFieldMetadata">
>                                 <property name="databaseName" value="PK"/>
>                                 <property name="databaseType">
>                                     <util:constant static-field="java.sql.Types.INTEGER"/>
>                                 </property>
>                                 <property name="javaName" value="pk"/>
>                                 <property name="javaType" value="int"/>
>                             </bean>
>                             <bean class="org.apache.ignite.cache.CacheTypeFieldMetadata">
>                                 <property name="databaseName" value="STREET"/>
>                                 <property name="databaseType">
>                                     <util:constant static-field="java.sql.Types.VARCHAR"/>
>                                 </property>
>                                 <property name="javaName" value="street"/>
>                                 <property name="javaType" value="java.lang.String"/>
>                             </bean>
>                             <bean class="org.apache.ignite.cache.CacheTypeFieldMetadata">
>                                 <property name="databaseName" value="ZIP"/>
>                                 <property name="databaseType">
>                                     <util:constant static-field="java.sql.Types.INTEGER"/>
>                                 </property>
>                                 <property name="javaName" value="zip"/>
>                                 <property name="javaType" value="java.lang.Integer"/>
>                             </bean>
>                         </list>
>                     </property>
>                     <property name="queryFields">
>                         <map>
>                             <entry key="pk" value="int"/>
>                             <entry key="street" value="java.lang.String"/>
>                             <entry key="zip" value="java.lang.Integer"/>
>                         </map>
>                     </property>
>                     <property name="ascendingFields">
>                         <map>
>                             <entry key="pk" value="int"/>
>                         </map>
>                     </property>
>                     <property name="descendingFields">
>                         <map>
>                             <entry key="zip" value="java.lang.Integer"/>
>                         </map>
>                     </property>
>                     <property name="textFields">
>                         <list>
>                             <value>zip</value>
>                             <value>street</value>
>                         </list>
>                     </property>
>                     <property name="groups">
>                         <map>
>                             <entry key="GRP2">
>                                 <map>
>                                     <entry key="street">
>                                         <bean class="org.apache.ignite.lang.IgniteBiTuple">
>                                             <constructor-arg value="java.lang.String"/>
>                                             <constructor-arg value="false"/>
>                                         </bean>
>                                     </entry>
>                                     <entry key="zip">
>                                         <bean class="org.apache.ignite.lang.IgniteBiTuple">
>                                             <constructor-arg value="java.lang.Integer"/>
>                                             <constructor-arg value="true"/>
>                                         </bean>
>                                     </entry>
>                                 </map>
>                             </entry>
>                             <entry key="GRP3">
>                                 <map>
>                                     <entry key="pk">
>                                         <bean class="org.apache.ignite.lang.IgniteBiTuple">
>                                             <constructor-arg value="int"/>
>                                             <constructor-arg value="false"/>
>                                         </bean>
>                                     </entry>
>                                     <entry key="street">
>                                         <bean class="org.apache.ignite.lang.IgniteBiTuple">
>                                             <constructor-arg value="java.lang.String"/>
>                                             <constructor-arg value="false"/>
>                                         </bean>
>                                     </entry>
>                                 </map>
>                             </entry>
>                         </map>
>                     </property>
>                 </bean>
> {code}
> {code}
> class org.apache.ignite.IgniteException: Failed to initialize property 'zip' for key class 'class AddressKey' and value class 'class Address'. Make sure that one of these classes contains respective getter method or field.
>         at org.apache.ignite.internal.util.IgniteUtils.convertException(IgniteUtils.java:663)
>         at org.apache.ignite.Ignition.start(Ignition.java:349)
>         at org.apache.ignite.startup.cmdline.CommandLineStartup.main(CommandLineStartup.java:288)
> Caused by: class org.apache.ignite.IgniteCheckedException: Failed to initialize property 'zip' for key class 'class AddressKey' and value class 'class Address'. Make sure that one of these classes contains respective getter method or field.
>         at org.apache.ignite.internal.processors.query.GridQueryProcessor.buildClassProperty(GridQueryProcessor.java:1240)
>         at org.apache.ignite.internal.processors.query.GridQueryProcessor.processClassMeta(GridQueryProcessor.java:1094)
>         at org.apache.ignite.internal.processors.query.GridQueryProcessor.initializeCache(GridQueryProcessor.java:144)
>         at org.apache.ignite.internal.processors.query.GridQueryProcessor.onCacheStart(GridQueryProcessor.java:242)
>         at org.apache.ignite.internal.processors.cache.GridCacheProcessor.startCache(GridCacheProcessor.java:885)
>         at org.apache.ignite.internal.processors.cache.GridCacheProcessor.onKernalStart(GridCacheProcessor.java:732)
>         at org.apache.ignite.internal.IgniteKernal.start(IgniteKernal.java:826)
>         at org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start0(IgnitionEx.java:1537)
>         at org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start(IgnitionEx.java:1405)
>         at org.apache.ignite.internal.IgnitionEx.start0(IgnitionEx.java:931)
>         at org.apache.ignite.internal.IgnitionEx.startConfigurations(IgnitionEx.java:858)
>         at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:750)
>         at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:671)
>         at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:527)
>         at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:497)
>         at org.apache.ignite.Ignition.start(Ignition.java:346)
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)