Hi Roza, when did you observe such a problem after restart ? and your caches 
with persistence mode ?


 
>Hi Maksim!
> 
>The problem is that simple SELECT query runs in ~20min - this index does not 
>work.
> 
>More over, other (not corrupted) tables with affinity key == primary key have 
>index by concrete column, not  _KEY , and have specified affinity key - see my 
>first message with example. 
> 
>We have  hypothesis that somehow these corrupted caches were created by 
>Key-Value API, not SQL. Otherwise how specified indexes and affinity keys were 
>skipped in DDL while creating the caches? 
> 
>The more important question - is there any way to rebuild index and add 
>affinity key back? 
> 
>Thanks!
> 
>>On 16 Dec 2022, at 4:30 PM, Maksim Timonin < [email protected] > wrote: 
>> 
>>Hi Roza,
>> 
>>In this ddl primary key (product_sku) equals the affinity key (product_sku). 
>>In such cases Ignite skips creating an additional index because  _key_PK  
>>index already covers primary key.
>> 
>>Thanks,
>>Maksim  
>>On Fri, Dec 16, 2022 at 2:06 PM Айсина Роза Мунеровна < 
>>[email protected] > wrote:
>>>Hello Stephen!
>>> 
>>>This DDL we use: 
>>> 
>>>CREATE TABLE IF NOT EXISTS PUBLIC.ProductFeatures
>>>(
>>>    product_sku INT PRIMARY KEY,
>>>    total_cnt_orders_with_sku INT
>>>)
>>>WITH "CACHE_NAME=PUBLIC_ProductFeatures, 
>>>KEY_TYPE=io.sbmt.ProductFeaturesKey, 
>>>VALUE_TYPE=io.sbmt.ProductFeaturesValue, AFFINITY_KEY=product_sku, 
>>>TEMPLATE=PARTITIONED, BACKUPS=1
>>> 
>>>And all tables are created similarly.
>>> 
>>>>On 16 Dec 2022, at 1:03 PM, Stephen Darlington < 
>>>>[email protected] > wrote:  
>>>>Внимание: Внешний отправитель!
>>>>Если вы не знаете отправителя - не открывайте вложения, не переходите по 
>>>>ссылкам, не пересылайте письмо!  
>>>>What are the CREATE TABLE  commands for those tables?
>>>> 
>>>>>On 16 Dec 2022, at 09:39, Айсина Роза Мунеровна < 
>>>>>[email protected] > wrote:  
>>>>>Hola!
>>>>>
>>>>>We've discovered some strange behaviour in Ignite cluster and now we are 
>>>>>trying to understand how to recover from this state. 
>>>>> 
>>>>>So we have 5 node cluster with persistence and all caches either 
>>>>>replicated or partitioned with affinity key.
>>>>>All caches are created via DDL with CREATE TABLE IF NOT EXISTS statements 
>>>>>in one regular job (once per day). 
>>>>> 
>>>>>The problem is that we hit  Query execution is too long  warning. 
>>>>>After some debug we found out that some tables have missed indexes and 
>>>>>affinity keys.
>>>>>More precisely - corrupted tables have indexes not by exact column name 
>>>>>but for _KEY column.
>>>>>And no affinity key at all. 
>>>>> 
>>>>>select 
>>>>>  TABLE_NAME,
>>>>>  INDEX_NAME,
>>>>>  COLUMNS
>>>>>from SYS.INDEXES
>>>>>where TABLE_NAME = ‘PRODUCTFEATURES’ — broken table
>>>>>  or TABLE_NAME = ‘USERFEATURESDISCOUNT’ — healthy table
>>>>>;
>>>>>
>>>>>Result: 
>>>>>+--------------------+------------+----------------------------+
>>>>>|TABLE_NAME          |INDEX_NAME  |COLUMNS                     |
>>>>>+--------------------+------------+----------------------------+
>>>>>|USERFEATURESDISCOUNT|_key_PK_hash|"USER_ID" ASC, "USER_ID" ASC|
>>>>>|USERFEATURESDISCOUNT|__SCAN_     |null                        |
>>>>>|USERFEATURESDISCOUNT|_key_PK     |"USER_ID" ASC               |
>>>>>|USERFEATURESDISCOUNT|AFFINITY_KEY|"USER_ID" ASC               |
>>>>>|PRODUCTFEATURES     |_key_PK_hash|"_KEY" ASC                  |
>>>>>|PRODUCTFEATURES     |__SCAN_     |null                        |
>>>>>|PRODUCTFEATURES     |_key_PK     |"_KEY" ASC                  |
>>>>>+--------------------+------------+----------------------------+
>>>>> 
>>>>>Query execution even with simplest statements with filters on primary and 
>>>>>affinity keys takes ~20min in best case. 
>>>>>We have 8 tables, 5 out 8 are corrupted. 
>>>>> 
>>>>>So the questions are: 
>>>>>1. What can probably cause such state? 
>>>>>2. Is there any way to recover without full delete-refill tables? I see 
>>>>>that index can be created via CREATE INDEX, but affinity key can be 
>>>>>created only via CREATE TABLE statement? 
>>>>> 
>>>>>Thanks in advance!
>>>>> 
>>>>>--
>>>>> 
>>>>>Роза Айсина
>>>>>Старший разработчик ПО
>>>>>СберМаркет | Доставка из любимых магазинов
>>>>> 
>>>>>Email:  [email protected]
>>>>>Mob:
>>>>>Web:  sbermarket.ru
>>>>>App:  iOS и  Android
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>>УВЕДОМЛЕНИЕ О КОНФИДЕНЦИАЛЬНОСТИ: это электронное сообщение и любые 
>>>>>документы, приложенные к нему, содержат конфиденциальную информацию. 
>>>>>Настоящим уведомляем Вас о том, что, если это сообщение не предназначено 
>>>>>Вам, использование, копирование, распространение информации, содержащейся 
>>>>>в настоящем сообщении, а также осуществление любых действий на основе этой 
>>>>>информации, строго запрещено. Если Вы получили это сообщение по ошибке, 
>>>>>пожалуйста, сообщите об этом отправителю по электронной почте и удалите 
>>>>>это сообщение. 
>>>>>CONFIDENTIALITY NOTICE: This email and any files attached to it are 
>>>>>confidential. If you are not the intended recipient you are notified that 
>>>>>using, copying, distributing or taking any action in reliance on the 
>>>>>contents of this information is strictly prohibited. If you have received 
>>>>>this email in error please notify the sender and delete this email.
>>>--
>>> 
>>>Роза Айсина
>>>Старший разработчик ПО
>>>СберМаркет | Доставка из любимых магазинов
>>> 
>>>Email:  [email protected]
>>>Mob:
>>>Web:  sbermarket.ru
>>>App:  iOS и  Android
>>> 
>>> 
>>> 
>>> 
>>> 
>>>УВЕДОМЛЕНИЕ О КОНФИДЕНЦИАЛЬНОСТИ: это электронное сообщение и любые 
>>>документы, приложенные к нему, содержат конфиденциальную информацию. 
>>>Настоящим уведомляем Вас о том, что, если это сообщение не предназначено 
>>>Вам, использование, копирование, распространение информации, содержащейся в 
>>>настоящем сообщении, а также осуществление любых действий на основе этой 
>>>информации, строго запрещено. Если Вы получили это сообщение по ошибке, 
>>>пожалуйста, сообщите об этом отправителю по электронной почте и удалите это 
>>>сообщение. 
>>>CONFIDENTIALITY NOTICE: This email and any files attached to it are 
>>>confidential. If you are not the intended recipient you are notified that 
>>>using, copying, distributing or taking any action in reliance on the 
>>>contents of this information is strictly prohibited. If you have received 
>>>this email in error please notify the sender and delete this email.
>--
> 
>Роза Айсина
>Старший разработчик ПО
>СберМаркет | Доставка из любимых магазинов
> 
>Email:  [email protected]
>Mob:
>Web:  sbermarket.ru
>App:  iOS и  Android
> 
> 
> 
> 
> 
>УВЕДОМЛЕНИЕ О КОНФИДЕНЦИАЛЬНОСТИ: это электронное сообщение и любые документы, 
>приложенные к нему, содержат конфиденциальную информацию. Настоящим уведомляем 
>Вас о том, что, если это сообщение не предназначено Вам, использование, 
>копирование, распространение информации, содержащейся в настоящем сообщении, а 
>также осуществление любых действий на основе этой информации, строго 
>запрещено. Если Вы получили это сообщение по ошибке, пожалуйста, сообщите об 
>этом отправителю по электронной почте и удалите это сообщение. 
>CONFIDENTIALITY NOTICE: This email and any files attached to it are 
>confidential. If you are not the intended recipient you are notified that 
>using, copying, distributing or taking any action in reliance on the contents 
>of this information is strictly prohibited. If you have received this email in 
>error please notify the sender and delete this email. 
 
 
 
 

Reply via email to