ignite-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Nikolay Izhikov <nizhi...@apache.org>
Subject Re: Command line interface to manage distributed properties
Date Thu, 03 Sep 2020 07:37:01 GMT
Hello, Taras.

> I guess some properties (may be future properties) shouldn't be published through generic
cmd line interface.

With marker interface user have to wait for a new release to fix not published property.
New release is a very long way for fixing one tiny configuration value.

Also, we shouldn’t hide anything from the administrator.

I’m sure that hiding any internals from our users is always a bad idea and hides some issue
in the codebase.
Let’s do it in Apache Way? :) - «Not restriction but common sense» 

We can have some kind of `IgniteSystemProperty` with default read-only list and description
to it - 
«User, you edit this properties fully on your own. We can’t predict results of such kind
of edits» 
So user can fix this list manually.

WDYT?

> 3 сент. 2020 г., в 10:21, Taras Ledkov <tledkov@gridgain.com> написал(а):
> 
> Hi,
> 
> >  Why do we want to restrict property management somehow?
> I guess some properties (may be future properties) shouldn't be published through generic
cmd line interface.
> May be its require separate more complex cmd line commands, some properties may have
dependencies and require complex management not only set/get.
> In this case we can use distributed property without publish one via simpel cmd line
interface.
> 
> On 03.09.2020 10:05, Nikolay Izhikov wrote:
>> Hello, Taras.
>> 
>> It a shame we don’t have a well-written guide for the development of the Ignite
management interfaces at the moment.
>> For now, we have dozen of some management APIs - java, JMX, SQL, control.sh, visorcmd.sh,
REST
>> 
>> I think we should support 3 manage interfaces for each new command:
>> 
>> * CMD
>> * JMX
>> * SQL
>> 
>> You can take as an example implementation of the `KILL` command [1]
>> 
>>> If we create the instance of this class the property can be managed by command
line.
>> Why do we want to restrict property management somehow?
>> 
>> This operation should be done by the administrator who knows what he or she does.
>> I think we should provide a way to change any property value without any restriction
for admin.
>> So our users don’t have to wait «one more release» with only change ‘implements
SimpleDistributedPublicProperty’ for some property.
>> 
>> [1] https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=145724615
>> 
>>> 2 сент. 2020 г., в 23:11, Taras Ledkov <tledkov@gridgain.com> написал(а):
>>> 
>>> Hi,
>>> 
>>> Motivation: we have to manage SQL distributed property by command line and introduce
common approach to manage distributed properties.
>>> Issue: IGNITE-13186 (see [1])
>>> 
>>> My proposal is:
>>> 
>>> Property classes & DistributedConfigurationProcessor changes (see PR [2]):
>>> - introduce PublicProperty interface and implements it at the PublicSimpleProperty;
>>> - SimpleDistributedPublicProperty. If we create the instance of this class the
property can be managed by command line.
>>> 
>>> Command line interface:
>>> --property list - prints list of the available properties with description, e.g.:
>>>         sql.disabledFunctions : Disabled SQL functions
>>>         sql.defaultQueryTimeout : Default query timeout
>>> --property get --name <prop_name> - prints the property value
>>> --property set --name <prop_name> --val <prop_value> - change the
property value.
>>> 
>>> Possible we have to add the command:
>>> --property reset --name <prop_name> - reset property to default value.
>>> 
>>> Please your comments.
>>> Please pay your attention to concept & design of the publishing a property
by 'PublicProperty' and set of the new commands.
>>> 
>>> [1]. https://issues.apache.org/jira/browse/IGNITE-13186
>>> [2]. https://github.com/apache/ignite/pull/8208
>>> 
>>> -- 
>>> Taras Ledkov
>>> Mail-To: tledkov@gridgain.com
>>> 
> -- 
> Taras Ledkov
> Mail-To: tledkov@gridgain.com
> 


Mime
View raw message