You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Kirill Tkalenko (Jira)" <ji...@apache.org> on 2024/10/22 08:59:00 UTC
[jira] [Updated] (IGNITE-23504) Add configuration of local and distributed system properties
[ https://issues.apache.org/jira/browse/IGNITE-23504?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Kirill Tkalenko updated IGNITE-23504:
-------------------------------------
Fix Version/s: 3.0
> Add configuration of local and distributed system properties
> ------------------------------------------------------------
>
> Key: IGNITE-23504
> URL: https://issues.apache.org/jira/browse/IGNITE-23504
> Project: Ignite
> Issue Type: Improvement
> Reporter: Kirill Tkalenko
> Assignee: Kirill Tkalenko
> Priority: Major
> Labels: ignite-3
> Fix For: 3.0
>
> Time Spent: 1h 20m
> Remaining Estimate: 0h
>
> At the moment we do not have a single mechanism for working with system properties, both local and distributed.
> Since we have a configuration and tools for working with it (for example, cli), it is proposed to use it to work with system properties. The user will be able to change some property value if he needs to, otherwise the default value will be used, which will be set in the code.
> For the user it will look something like this (via cli):
> {noformat}
> [defaultNode]> node config show ignite.system.properties
> igniteFirstProperties {
> propertyValue=100
> }
> igniteSecondProperties {
> propertyValue=lru
> }
> [defaultNode]> node config show ignite.system.properties.igniteFirstProperties
> propertyValue=100
> [defaultNode]> cluster config show ignite.system.properties
> igniteFirstProperties {
> propertyValue=100
> }
> igniteSecondProperties {
> propertyValue=lru
> }
> [defaultNode]> cluster config show ignite.system.properties.igniteFirstProperties
> propertyValue=100
> {noformat}
> The changes are the same as when working with named lists.
> Technically, this will be implemented through configuration schemes, something like this:
> {noformat}
> @Config
> public class SystemDistributedConfigurationSchema {
> @NamedConfigValue
> public SystemPropertyConfigurationSchema properties;
> }
> @Config
> public class SystemPropertyConfigurationSchema {
> @InjectedName
> public String name;
> @Value
> public String propertyValue;
> }
> @Config
> public class SystemLocalConfigurationSchema {
> ...
>
> @NamedConfigValue
> public SystemPropertyConfigurationSchema properties;
> }
> {noformat}
> For consistency, the naming of properties will use camelCase as for configuration fields and the corresponding validator will be added.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)