Hi,
1. Yes, Ignite works that way. Value type name is used as a table name in
querying either key or value fields.
2. I'll try to give more detailed answer.
A query engine is also responsible for indexing.
Then data is saved, the query engine first decides which fields to index
using informati
Any comments here?
--
View this message in context:
http://apache-ignite-users.70518.x6.nabble.com/Error-while-loading-data-into-cache-with-BinaryObject-as-key-field-tp6014p6105.html
Sent from the Apache Ignite Users mailing list archive at Nabble.com.
1. The strange part is even when the binary objects are created with
different type names (different for key BinaryObject and for value
BinaryObject), I am able to query the field that is the part of the key
BinaryObject by specifying the valuetype
2. By "binary type descriptor" I understand that
Hi,
1. I see nothing strange here. Please explain in more details.
2. Because query engine uses binary type descriptor to update SQL indices
for incoming data.
2016-07-03 20:16 GMT+03:00 pragmaticbigdata :
> Thanks for pinpointing the issue. The issue got resolved after setting a
> custom key
Thanks for pinpointing the issue. The issue got resolved after setting a
custom key type. The data got loaded into the cache.
1. The strange part is that even if I set different key and value types the
below query executes correctly
SqlQuery query = new
SqlQuery<>(table.getCacheValueType
Hi,
The problematic line of code is this one:
qe.setKeyType(String.class.getCanonicalName());
Basically, because of this configuration, SQL engine expect to have a String
as a key and therefore tries to unwrap the BinaryObject and fails on
deserialization. You should use your own name, as you do
On further tries, the data load program again started failing. The
application is not consistent and I do not follow why and when does the it
fail.
To ease the understanding of the issue I have created a gist that includes
the data load program. The program tries to load data from a csv file using
On further troubleshooting I realized that the error appeared only when I
have different typeNames used for the key and value objects added to the
cache.
BinaryObjectBuilder keyBuilder =
ignite.binary().builder(table.getCacheKeyType());
BinaryObjectBuilder valueBuilder =
i
> What was returned as the type name before? As I see from your code that you
used some getter to retrieve the name.
I have a IgniteCache. The type name for the key
object before was a string "My_Object_ValueType" and "My_Object_KeyType". I
didn't follow why doesn't it work with these typenames.
Hi,
> I realized that the error disappears if I hard code the typeName while
> constructing the BinaryObjectBuilder.
> ignite.binary().builder("ConstantString”);
What was returned as the type name before? As I see from your code that you
used some getter to retrieve the name.
> 1. Wha
Hi,
1. Type name can be the actual class name if you plan to work with cache
value as java object.
2. Avoid names reserved to SQL keywords.
3. Put key columns into key binary object. To fetch everything
use SqlFieldsQuery like:
select _key,_val from ...
or use SqlQuery
2016-06-30 16:11 GMT+03:00
I realized that the error disappears if I hard code the typeName while
constructing the BinaryObjectBuilder.
ignite.binary().builder("ConstantString");
Few questions based on this
1. What is the significance of the typeName except the fact that it is used
while querying?
2. What are th
12 matches
Mail list logo