You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@ignite.apache.org by Isaeed Mohanna <is...@gmail.com> on 2015/06/17 16:22:45 UTC

SQLCacheQuery Problem

Hi
*I am using Ignite 1.0.0, I have a cache defined with the following
configuration (defined at startup):*
CacheConfiguration<?, ?> CacheConfig = new CacheConfiguration<>();
CacheConfig .setName("myCache");
CacheConfig .setCacheMode(CacheMode.REPLICATED);
CacheConfig .setAtomicityMode(CacheAtomicityMode.ATOMIC);
CacheConfig .setIndexedTypes(UUID.class, MyClass.class);
*The class MyClass looks as follows:*
public class MyClass implements Externalizable {
	@QuerySqlField(index = true)
	private UUID id;
	private UUID anotherId;
	@QuerySqlField(index = true)
	private Date time;
  .. setters/ getters and some other fields
}
*I am trying to perform sql query on my cache using the following:*
IgniteCache<UUID, MyClass> reportsSchedule = ignite.cache("myCache");
SqlQuery<UUID, MyClass> sqlQuery = new SqlQuery<UUID,
MyClass>(MyClass.class, "time <= ?");
QueryCursor<Entry&lt;UUID, MyClass>> cursor =
myCache.query(sqlQuery.setArgs(new Date()));

*However I keep getting the following exception:*
Caused by: class org.apache.ignite.IgniteException: Failed to find SQL table
for type: MyClass
	at
org.apache.ignite.internal.processors.closure.GridClosureProcessor$C2.execute(GridClosureProcessor.java:1699)
	at
org.apache.ignite.internal.processors.job.GridJobWorker$2.call(GridJobWorker.java:478)
	at
org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6069)
	at
org.apache.ignite.internal.processors.job.GridJobWorker.execute0(GridJobWorker.java:472)

*MyClass and UUID are defined in the configuration as an indexed type, also
annotated as so in MyClass definition however i still receive this
exception. Any idea what am i missing?*



--
View this message in context: http://apache-ignite-users.70518.x6.nabble.com/SQLCacheQuery-Problem-tp511.html
Sent from the Apache Ignite Users mailing list archive at Nabble.com.

Re: SQLCacheQuery Problem

Posted by Isaeed Mohanna <is...@gmail.com>.
Thats great. Thank you :)

On Fri, Jun 19, 2015 at 12:48 PM, Yakov Zhdanov <yz...@apache.org> wrote:

> I have added warning panel to the page. Please take a look.
>
> --Yakov
>
> 2015-06-18 18:03 GMT+03:00 Isaeed Mohanna <is...@gmail.com>:
>
>> I did not see that coming.... Thank you very much....
>> A note in Query section of the docmentation will help as well
>> http://apacheignite.readme.io/v1.1/docs/cache-queries
>>
>>
>> On Wed, Jun 17, 2015 at 8:52 PM, Alexey Goncharuk <
>> alexey.goncharuk@gmail.com> wrote:
>>
>>> Add module ignite-indexing to the classpath of your project, it should
>>> work fine after that. I will create a ticket to make sure Ignite throws a
>>> proper error message when indexing is not in the classpath.
>>>
>>> 2015-06-17 7:22 GMT-07:00 Isaeed Mohanna <is...@gmail.com>:
>>>
>>>> Hi
>>>> *I am using Ignite 1.0.0, I have a cache defined with the following
>>>> configuration (defined at startup):*
>>>> CacheConfiguration<?, ?> CacheConfig = new CacheConfiguration<>();
>>>> CacheConfig .setName("myCache");
>>>> CacheConfig .setCacheMode(CacheMode.REPLICATED);
>>>> CacheConfig .setAtomicityMode(CacheAtomicityMode.ATOMIC);
>>>> CacheConfig .setIndexedTypes(UUID.class, MyClass.class);
>>>> *The class MyClass looks as follows:*
>>>> public class MyClass implements Externalizable {
>>>>         @QuerySqlField(index = true)
>>>>         private UUID id;
>>>>         private UUID anotherId;
>>>>         @QuerySqlField(index = true)
>>>>         private Date time;
>>>>   .. setters/ getters and some other fields
>>>> }
>>>> *I am trying to perform sql query on my cache using the following:*
>>>> IgniteCache<UUID, MyClass> reportsSchedule = ignite.cache("myCache");
>>>> SqlQuery<UUID, MyClass> sqlQuery = new SqlQuery<UUID,
>>>> MyClass>(MyClass.class, "time <= ?");
>>>> QueryCursor<Entry&lt;UUID, MyClass>> cursor =
>>>> myCache.query(sqlQuery.setArgs(new Date()));
>>>>
>>>> *However I keep getting the following exception:*
>>>> Caused by: class org.apache.ignite.IgniteException: Failed to find SQL
>>>> table
>>>> for type: MyClass
>>>>         at
>>>>
>>>> org.apache.ignite.internal.processors.closure.GridClosureProcessor$C2.execute(GridClosureProcessor.java:1699)
>>>>         at
>>>>
>>>> org.apache.ignite.internal.processors.job.GridJobWorker$2.call(GridJobWorker.java:478)
>>>>         at
>>>>
>>>> org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6069)
>>>>         at
>>>>
>>>> org.apache.ignite.internal.processors.job.GridJobWorker.execute0(GridJobWorker.java:472)
>>>>
>>>> *MyClass and UUID are defined in the configuration as an indexed type,
>>>> also
>>>> annotated as so in MyClass definition however i still receive this
>>>> exception. Any idea what am i missing?*
>>>>
>>>>
>>>>
>>>> --
>>>> View this message in context:
>>>> http://apache-ignite-users.70518.x6.nabble.com/SQLCacheQuery-Problem-tp511.html
>>>> Sent from the Apache Ignite Users mailing list archive at Nabble.com.
>>>>
>>>
>>>
>>
>

Re: SQLCacheQuery Problem

Posted by Yakov Zhdanov <yz...@apache.org>.
I have added warning panel to the page. Please take a look.

--Yakov

2015-06-18 18:03 GMT+03:00 Isaeed Mohanna <is...@gmail.com>:

> I did not see that coming.... Thank you very much....
> A note in Query section of the docmentation will help as well
> http://apacheignite.readme.io/v1.1/docs/cache-queries
>
>
> On Wed, Jun 17, 2015 at 8:52 PM, Alexey Goncharuk <
> alexey.goncharuk@gmail.com> wrote:
>
>> Add module ignite-indexing to the classpath of your project, it should
>> work fine after that. I will create a ticket to make sure Ignite throws a
>> proper error message when indexing is not in the classpath.
>>
>> 2015-06-17 7:22 GMT-07:00 Isaeed Mohanna <is...@gmail.com>:
>>
>>> Hi
>>> *I am using Ignite 1.0.0, I have a cache defined with the following
>>> configuration (defined at startup):*
>>> CacheConfiguration<?, ?> CacheConfig = new CacheConfiguration<>();
>>> CacheConfig .setName("myCache");
>>> CacheConfig .setCacheMode(CacheMode.REPLICATED);
>>> CacheConfig .setAtomicityMode(CacheAtomicityMode.ATOMIC);
>>> CacheConfig .setIndexedTypes(UUID.class, MyClass.class);
>>> *The class MyClass looks as follows:*
>>> public class MyClass implements Externalizable {
>>>         @QuerySqlField(index = true)
>>>         private UUID id;
>>>         private UUID anotherId;
>>>         @QuerySqlField(index = true)
>>>         private Date time;
>>>   .. setters/ getters and some other fields
>>> }
>>> *I am trying to perform sql query on my cache using the following:*
>>> IgniteCache<UUID, MyClass> reportsSchedule = ignite.cache("myCache");
>>> SqlQuery<UUID, MyClass> sqlQuery = new SqlQuery<UUID,
>>> MyClass>(MyClass.class, "time <= ?");
>>> QueryCursor<Entry&lt;UUID, MyClass>> cursor =
>>> myCache.query(sqlQuery.setArgs(new Date()));
>>>
>>> *However I keep getting the following exception:*
>>> Caused by: class org.apache.ignite.IgniteException: Failed to find SQL
>>> table
>>> for type: MyClass
>>>         at
>>>
>>> org.apache.ignite.internal.processors.closure.GridClosureProcessor$C2.execute(GridClosureProcessor.java:1699)
>>>         at
>>>
>>> org.apache.ignite.internal.processors.job.GridJobWorker$2.call(GridJobWorker.java:478)
>>>         at
>>>
>>> org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6069)
>>>         at
>>>
>>> org.apache.ignite.internal.processors.job.GridJobWorker.execute0(GridJobWorker.java:472)
>>>
>>> *MyClass and UUID are defined in the configuration as an indexed type,
>>> also
>>> annotated as so in MyClass definition however i still receive this
>>> exception. Any idea what am i missing?*
>>>
>>>
>>>
>>> --
>>> View this message in context:
>>> http://apache-ignite-users.70518.x6.nabble.com/SQLCacheQuery-Problem-tp511.html
>>> Sent from the Apache Ignite Users mailing list archive at Nabble.com.
>>>
>>
>>
>

Re: SQLCacheQuery Problem

Posted by Isaeed Mohanna <is...@gmail.com>.
I did not see that coming.... Thank you very much....
A note in Query section of the docmentation will help as well
http://apacheignite.readme.io/v1.1/docs/cache-queries


On Wed, Jun 17, 2015 at 8:52 PM, Alexey Goncharuk <
alexey.goncharuk@gmail.com> wrote:

> Add module ignite-indexing to the classpath of your project, it should
> work fine after that. I will create a ticket to make sure Ignite throws a
> proper error message when indexing is not in the classpath.
>
> 2015-06-17 7:22 GMT-07:00 Isaeed Mohanna <is...@gmail.com>:
>
>> Hi
>> *I am using Ignite 1.0.0, I have a cache defined with the following
>> configuration (defined at startup):*
>> CacheConfiguration<?, ?> CacheConfig = new CacheConfiguration<>();
>> CacheConfig .setName("myCache");
>> CacheConfig .setCacheMode(CacheMode.REPLICATED);
>> CacheConfig .setAtomicityMode(CacheAtomicityMode.ATOMIC);
>> CacheConfig .setIndexedTypes(UUID.class, MyClass.class);
>> *The class MyClass looks as follows:*
>> public class MyClass implements Externalizable {
>>         @QuerySqlField(index = true)
>>         private UUID id;
>>         private UUID anotherId;
>>         @QuerySqlField(index = true)
>>         private Date time;
>>   .. setters/ getters and some other fields
>> }
>> *I am trying to perform sql query on my cache using the following:*
>> IgniteCache<UUID, MyClass> reportsSchedule = ignite.cache("myCache");
>> SqlQuery<UUID, MyClass> sqlQuery = new SqlQuery<UUID,
>> MyClass>(MyClass.class, "time <= ?");
>> QueryCursor<Entry&lt;UUID, MyClass>> cursor =
>> myCache.query(sqlQuery.setArgs(new Date()));
>>
>> *However I keep getting the following exception:*
>> Caused by: class org.apache.ignite.IgniteException: Failed to find SQL
>> table
>> for type: MyClass
>>         at
>>
>> org.apache.ignite.internal.processors.closure.GridClosureProcessor$C2.execute(GridClosureProcessor.java:1699)
>>         at
>>
>> org.apache.ignite.internal.processors.job.GridJobWorker$2.call(GridJobWorker.java:478)
>>         at
>>
>> org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6069)
>>         at
>>
>> org.apache.ignite.internal.processors.job.GridJobWorker.execute0(GridJobWorker.java:472)
>>
>> *MyClass and UUID are defined in the configuration as an indexed type,
>> also
>> annotated as so in MyClass definition however i still receive this
>> exception. Any idea what am i missing?*
>>
>>
>>
>> --
>> View this message in context:
>> http://apache-ignite-users.70518.x6.nabble.com/SQLCacheQuery-Problem-tp511.html
>> Sent from the Apache Ignite Users mailing list archive at Nabble.com.
>>
>
>

Re: SQLCacheQuery Problem

Posted by Alexey Goncharuk <al...@gmail.com>.
Add module ignite-indexing to the classpath of your project, it should work
fine after that. I will create a ticket to make sure Ignite throws a proper
error message when indexing is not in the classpath.

2015-06-17 7:22 GMT-07:00 Isaeed Mohanna <is...@gmail.com>:

> Hi
> *I am using Ignite 1.0.0, I have a cache defined with the following
> configuration (defined at startup):*
> CacheConfiguration<?, ?> CacheConfig = new CacheConfiguration<>();
> CacheConfig .setName("myCache");
> CacheConfig .setCacheMode(CacheMode.REPLICATED);
> CacheConfig .setAtomicityMode(CacheAtomicityMode.ATOMIC);
> CacheConfig .setIndexedTypes(UUID.class, MyClass.class);
> *The class MyClass looks as follows:*
> public class MyClass implements Externalizable {
>         @QuerySqlField(index = true)
>         private UUID id;
>         private UUID anotherId;
>         @QuerySqlField(index = true)
>         private Date time;
>   .. setters/ getters and some other fields
> }
> *I am trying to perform sql query on my cache using the following:*
> IgniteCache<UUID, MyClass> reportsSchedule = ignite.cache("myCache");
> SqlQuery<UUID, MyClass> sqlQuery = new SqlQuery<UUID,
> MyClass>(MyClass.class, "time <= ?");
> QueryCursor<Entry&lt;UUID, MyClass>> cursor =
> myCache.query(sqlQuery.setArgs(new Date()));
>
> *However I keep getting the following exception:*
> Caused by: class org.apache.ignite.IgniteException: Failed to find SQL
> table
> for type: MyClass
>         at
>
> org.apache.ignite.internal.processors.closure.GridClosureProcessor$C2.execute(GridClosureProcessor.java:1699)
>         at
>
> org.apache.ignite.internal.processors.job.GridJobWorker$2.call(GridJobWorker.java:478)
>         at
>
> org.apache.ignite.internal.util.IgniteUtils.wrapThreadLoader(IgniteUtils.java:6069)
>         at
>
> org.apache.ignite.internal.processors.job.GridJobWorker.execute0(GridJobWorker.java:472)
>
> *MyClass and UUID are defined in the configuration as an indexed type, also
> annotated as so in MyClass definition however i still receive this
> exception. Any idea what am i missing?*
>
>
>
> --
> View this message in context:
> http://apache-ignite-users.70518.x6.nabble.com/SQLCacheQuery-Problem-tp511.html
> Sent from the Apache Ignite Users mailing list archive at Nabble.com.
>