You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "shivakumar (Jira)" <ji...@apache.org> on 2021/02/08 15:07:00 UTC

[jira] [Comment Edited] (IGNITE-13912) Incorrect calculation of WAL segments that should be deleted from WAL archive

    [ https://issues.apache.org/jira/browse/IGNITE-13912?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17278893#comment-17278893 ] 

shivakumar edited comment on IGNITE-13912 at 2/8/21, 3:06 PM:
--------------------------------------------------------------

Hi [~ktkalenko@gridgain.com]

I have uploaded uber jar to [https://drive.google.com/file/d/1SZS4248QAv5qVWOYJccHCPrmCWEiWXBf/view?usp=sharing]

Install ignite cluster with persistence enabled, tables which get created as part of this JDBC program uses "INVENTORY" as schema and also cache group configuration so you need to add  below configuration to your ignite configuration (refer attached ignite-config xml file)

=============================================

<property name="sqlSchemas">
 <list>
 <value>INVENTORY</value>
 </list>
 </property>

<property name="cacheConfiguration">
 <list>
 <bean id="cache-template-bean" abstract="true" class="org.apache.ignite.configuration.CacheConfiguration">

<property name="name" value="templateEternal*"/>
 <property name="cacheMode" value="PARTITIONED"/>
 <property name="backups" value="1"/>
 <property name="groupName" value="groupEternal"/>
 <property name="rebalanceDelay" value="300000"/>
 </bean>
 </list>
 </property>

==============================================

download the jar run the JDBC program with below command,

*java -jar inventory-1.0-SNAPSHOT-shaded.jar com.test.app.InventoryCreate config.properties yes* 

If you want to re-run the JDBC program make sure you pass last argument as no (this will skip cleanup of previously created tables and re-creation of tables and directly starts data insertions)

*java -jar inventory-1.0-SNAPSHOT-shaded.jar com.test.app.InventoryCreate config.properties no* 

The config.properties which needs to be passed to this client program is also attached to this ticket, update ignite_db_url property in that file (default set to jdbc:ignite:thin://localhost:10800)**

Connect and disconnect to visor in between data ingestion and see the WAL usage.


was (Author: shm):
Hi [~ktkalenko@gridgain.com]

I have uploaded uber jar to [https://drive.google.com/file/d/1SZS4248QAv5qVWOYJccHCPrmCWEiWXBf/view?usp=sharing]

Install ignite cluster with persistence enabled, tables which get created as part of this JDBC program uses "INVENTORY" as schema and also cache group configuration so you need to add  below configuration to your ignite configuration (refer attached ignite-config xml file)

=============================================

<property name="sqlSchemas">
 <list>
 <value>INVENTORY</value>
 </list>
 </property>

<property name="cacheConfiguration">
 <list>
 <bean id="cache-template-bean" abstract="true" class="org.apache.ignite.configuration.CacheConfiguration">

<property name="name" value="templateEternal*"/>
 <property name="cacheMode" value="PARTITIONED"/>
 <property name="backups" value="1"/>
 <property name="groupName" value="groupEternal"/>
 <property name="rebalanceDelay" value="300000"/>
 </bean>
 </list>
 </property>

==============================================

download the jar run the JDBC program with below command,

 *java -jar inventory-1.0-SNAPSHOT-shaded.jar com.test.app.InventoryCreate config.properties yes* 

If you want to re-run the JDBC program make sure you pass last argument as no (this will skip cleanup of previously created tables and re-creation of tables and directly starts data insertions)

*java -jar inventory-1.0-SNAPSHOT-shaded.jar com.test.app.InventoryCreate config.properties no* 

The config.properties which needs to be passed to this client program is also attached to this ticket, update ignite_db_url property in that file (default set to jdbc:ignite:thin://localhost:10800)**

Connect and disconnect to visor in between data ingestion and see the WAL usage.

 

 

 

 

 

 

 

> Incorrect calculation of WAL segments that should be deleted from WAL archive
> -----------------------------------------------------------------------------
>
>                 Key: IGNITE-13912
>                 URL: https://issues.apache.org/jira/browse/IGNITE-13912
>             Project: Ignite
>          Issue Type: Bug
>          Components: persistence
>            Reporter: Kirill Tkalenko
>            Assignee: Kirill Tkalenko
>            Priority: Critical
>             Fix For: 2.10
>
>         Attachments: config.properties, ignite-config, reproducer.zip, server1-full-wal-checkpoint.log, wal-checkpoint-logs, wal_dir_contents, wal_grows_from_peak.PNG, wal_issue_reproduced.PNG, wal_usage.PNG, wal_usage_dec12.PNG, wal_usage_dec22nd_binary.PNG
>
>          Time Spent: 40m
>  Remaining Estimate: 0h
>
> Now there is an incorrect calculation of WAL segments that should be deleted from WAL archive. Since we delete only those segments whose total size should not exceed *DataStorageConfiguration#maxWalArchiveSize * IGNITE_THRESHOLD_WAL_ARCHIVE_SIZE_PERCENTAGE*, but should be up to  DataStorageConfiguration#maxWalArchiveSize * IGNITE_THRESHOLD_WAL_ARCHIVE_SIZE_PERCENTAGE*. Therefore, an excess of *DataStorageConfiguration#maxWalArchiveSize* occurs.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)