[ https://issues.apache.org/jira/browse/IGNITE-17149?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Kirill Tkalenko updated IGNITE-17149: ------------------------------------- Ignite Flags: Docs Required > 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 > Assignee: Kirill Tkalenko > Priority: Major > Labels: ignite-3 > Fix For: 3.0.0-alpha6 > > Time Spent: 10m > Remaining Estimate: 0h > > *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* > Divide by two (in-memory and persistent): > * > *org.apache.ignite.internal.pagememory.configuration.schema.PageMemoryDataRegionConfigurationSchema* > * > *org.apache.ignite.internal.storage.pagememory.configuration.schema.PageMemoryStorageEngineConfigurationSchema* > * *org.apache.ignite.internal.storage.pagememory.PageMemoryStorageEngine* -- This message was sent by Atlassian Jira (v8.20.7#820007)