Ok but since I dropped and recreated the table I'm fine? It won't somehow throw that error again? And if I upgrade to 2.13 from 2.12 will I have the same issue?
On Wed, Aug 31, 2022 at 3:31 PM Alex Plehanov <plehanov.a...@gmail.com> wrote: > John Smith, > > Thank you. This issue will be fixed in upcoming 2.14. > > ср, 31 авг. 2022 г. в 21:50, John Smith <java.dev....@gmail.com>: > >> Here it is... And yes I recently upgraded to 2.12 from 2.8.1 >> >> create table if not exists car_code ( >> provider_id int, >> car_id int, >> car_code varchar(16), >> primary key (provider_id, car_id) >> ) with "template=replicatedTpl, key_type=CarCodeKey, value_type=CarCode"; >> >> On Wed, Aug 31, 2022 at 7:25 AM Alex Plehanov <plehanov.a...@gmail.com> >> wrote: >> >>> John Smith, >>> >>> Can you please show DDL for the car_code table? Does PK of this table >>> include provider_id or car_code columns? >>> I found a compatibility issue, with the same behaviour, it happens when >>> storage created with Ignite version before 2.11 is used with the newer >>> Ignite version. Have you upgraded the dev environment with existing storage >>> recently (before starting to get this error)? >>> >>> >>> чт, 4 авг. 2022 г. в 17:06, John Smith <java.dev....@gmail.com>: >>> >>>> Let me know if that makes any sense, because the test data is the same >>>> and the application code is the same. Only dropped and created the table >>>> again using DbEaver. >>>> >>>> On Wed, Aug 3, 2022 at 11:39 AM John Smith <java.dev....@gmail.com> >>>> wrote: >>>> >>>>> Hi, so I dropped the table and simply recreated it. Did NOT restart >>>>> the application. >>>>> >>>>> Now it works fine. >>>>> >>>>> On Wed, Aug 3, 2022 at 9:58 AM John Smith <java.dev....@gmail.com> >>>>> wrote: >>>>> >>>>>> How? The code is 100% the same between production and dev. And it's >>>>>> part of a bigger application. >>>>>> >>>>>> Only dev has the issue. I will drop and recreate the table if that >>>>>> fixes the issue then what? >>>>>> >>>>>> You are saying mismatch, it's a string period. >>>>>> >>>>>> "select car_id from car_code where provider_id = ? and car_code = ? >>>>>> order by car_id asc limit 1;" >>>>>> >>>>>> >>>>>> The first parameter is Integer and the second one is String. there's >>>>>> no way this can mismatch... And even if the String was a UUID it's still >>>>>> a >>>>>> string. >>>>>> >>>>>> public JsonArray query(final String sql, final long timeoutMs, >>>>>> final Object... args) { >>>>>> SqlFieldsQuery query = new SqlFieldsQuery(sql).setArgs(args); >>>>>> query.setTimeout((int) timeoutMs, TimeUnit.MILLISECONDS); >>>>>> >>>>>> try (QueryCursor<List<?>> cursor = cache.query(query)) { >>>>>> List<JsonArray> rows = new ArrayList<>(); >>>>>> Iterator<List<?>> iterator = cursor.iterator(); >>>>>> >>>>>> while(iterator.hasNext()) { >>>>>> List currentRow = iterator.next(); >>>>>> JsonArray row = new JsonArray(); >>>>>> >>>>>> currentRow.forEach(o -> row.add(o)); >>>>>> >>>>>> rows.add(row); >>>>>> } >>>>>> >>>>>> promise.tryComplete(rows); >>>>>> } catch(Exception ex) { >>>>>> ex.printStackTrace(); >>>>>> } >>>>>> } >>>>>> >>>>>> Integer providerId = 1; >>>>>> String carCode = "FOO"; >>>>>> >>>>>> query("select car_id from car_code where provider_id = ? and >>>>>> car_code = ? order by car_id asc limit 1;", 3000, providerId, cardCode); >>>>>> >>>>>> >>>>>> >>>>>> On Wed, Aug 3, 2022 at 6:50 AM Taras Ledkov <tled...@apache.org> >>>>>> wrote: >>>>>> >>>>>>> Hi John and Don, >>>>>>> >>>>>>> I guess the root cause in the data types mismatch between table >>>>>>> schema and actual data at the store or type of the query parameter. >>>>>>> To explore the gap, it would be very handy if you could provide a >>>>>>> small reproducer (standalone project or PR somewhere). >>>>>>> >>>>>>> > In my case I'm not even using UUID fields. Also the same code 2 >>>>>>> diff environment dev vs prod doesn't cause the issue. I'm lucky enough >>>>>>> that >>>>>>> it's on dev and prod is ok. >>>>>>> > >>>>>>> > But that last part might be misleading because in prod I think it >>>>>>> happened early on during upgrade and all I did was recreate the sql >>>>>>> table. >>>>>>> > >>>>>>> > So before I do the same on dev... I want to see what the issue is. >>>>>>> > >>>>>>> > On Tue., Aug. 2, 2022, 6:06 p.m. , <don.tequ...@gmx.de> wrote: >>>>>>> > >>>>>>> >> I‘m only speculating but this looks very similar to the issue I >>>>>>> had last week and reported to the group here. >>>>>>> >> >>>>>>> >> Caused by: org.h2.message.DbException: Hexadecimal string with >>>>>>> odd number of characters: "5" [90003-197] >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> With best regards, >>>>>>> Taras Ledkov >>>>>>> >>>>>>