[ 
https://issues.apache.org/jira/browse/IGNITE-17149?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kirill Tkalenko updated IGNITE-17149:
-------------------------------------
    Description: 
*Problem*
At the moment, the 
*org.apache.ignite.internal.storage.pagememory.configuration.schema.PageMemoryStorageEngineConfigurationSchema*
 contains configuration for in-memory and persistent 
{*}org.apache.ignite.internal.pagememory.configuration.schema.PageMemoryDataRegionConfigurationSchema{*},
 which can be inconvenient for the user for several reasons:
 * *PageMemoryDataRegionConfigurationSchema* contains the configuration for 
in-memory and the persistent case, which can be confusing because it's not 
obvious which properties to set for each;
 * User does not have the ability to set a different size 
*PageMemoryStorageEngineConfigurationSchema#pageSize* for in-memory and the 
persistent case;
 * When creating a table through SQL, it would be more convenient for the user 
to simply specify the engine and use the default region than specify the data 
region, let's look at the examples.

{code:java}
CREATE TABLE user (id INT PRIMARY KEY, name VARCHAR(255)) ENGINE pagememory 
dataRegion='in-memory' 
CREATE TABLE user (id INT PRIMARY KEY, name VARCHAR(255)) ENGINE pagememory 
dataRegion='persistnet'{code}
{code:java}
CREATE TABLE user (id INT PRIMARY KEY, name VARCHAR(255)) ENGINE 
in-memory-pagememory
CREATE TABLE user (id INT PRIMARY KEY, name VARCHAR(255)) ENGINE 
persistnet-pagememory
{code}

*Implementation proposal*


  was:
At the moment, the 
*org.apache.ignite.internal.storage.pagememory.configuration.schema.PageMemoryStorageEngineConfigurationSchema*
 contains configuration for in-memory and persistent 
{*}org.apache.ignite.internal.pagememory.configuration.schema.PageMemoryDataRegionConfigurationSchema{*},
 which can be inconvenient for the user for several reasons:
 * *PageMemoryDataRegionConfigurationSchema* contains the configuration for 
in-memory and the persistent case, which can be confusing because it's not 
obvious which properties to set for each;
 * User does not have the ability to set a different size 
*PageMemoryStorageEngineConfigurationSchema#pageSize* for in-memory and the 
persistent case;
 * When creating a table through SQL, it would be more convenient for the user 
to simply specify the engine and use the default region than specify the data 
region, let's look at the examples.

{code:java}
CREATE TABLE user (id INT PRIMARY KEY, name VARCHAR(255)) ENGINE pagememory 
dataRegion='in-memory' 
CREATE TABLE user (id INT PRIMARY KEY, name VARCHAR(255)) ENGINE pagememory 
dataRegion='persistnet'{code}
{code:java}
CREATE TABLE user (id INT PRIMARY KEY, name VARCHAR(255)) ENGINE 
in-memory-pagememory
CREATE TABLE user (id INT PRIMARY KEY, name VARCHAR(255)) ENGINE 
persistnet-pagememory
{code}


> Separation of the PageMemoryStorageEngineConfigurationSchema into in-memory 
> and persistent
> ------------------------------------------------------------------------------------------
>
>                 Key: IGNITE-17149
>                 URL: https://issues.apache.org/jira/browse/IGNITE-17149
>             Project: Ignite
>          Issue Type: Task
>            Reporter: Kirill Tkalenko
>            Priority: Major
>              Labels: ignite-3
>             Fix For: 3.0.0-alpha6
>
>
> *Problem*
> At the moment, the 
> *org.apache.ignite.internal.storage.pagememory.configuration.schema.PageMemoryStorageEngineConfigurationSchema*
>  contains configuration for in-memory and persistent 
> {*}org.apache.ignite.internal.pagememory.configuration.schema.PageMemoryDataRegionConfigurationSchema{*},
>  which can be inconvenient for the user for several reasons:
>  * *PageMemoryDataRegionConfigurationSchema* contains the configuration for 
> in-memory and the persistent case, which can be confusing because it's not 
> obvious which properties to set for each;
>  * User does not have the ability to set a different size 
> *PageMemoryStorageEngineConfigurationSchema#pageSize* for in-memory and the 
> persistent case;
>  * When creating a table through SQL, it would be more convenient for the 
> user to simply specify the engine and use the default region than specify the 
> data region, let's look at the examples.
> {code:java}
> CREATE TABLE user (id INT PRIMARY KEY, name VARCHAR(255)) ENGINE pagememory 
> dataRegion='in-memory' 
> CREATE TABLE user (id INT PRIMARY KEY, name VARCHAR(255)) ENGINE pagememory 
> dataRegion='persistnet'{code}
> {code:java}
> CREATE TABLE user (id INT PRIMARY KEY, name VARCHAR(255)) ENGINE 
> in-memory-pagememory
> CREATE TABLE user (id INT PRIMARY KEY, name VARCHAR(255)) ENGINE 
> persistnet-pagememory
> {code}
> *Implementation proposal*



--
This message was sent by Atlassian Jira
(v8.20.7#820007)

Reply via email to