Re: Change IGNITE_PDS_WAL_REBALANCE_THRESHOLD from System property to Configuraton

2021-05-17 Thread Eduard Rakhmankulov
Hello Stan!

Thank you for the discussion about this topic. I've created a new Jira
ticket and I am going to work on it.
Jira: https://issues.apache.org/jira/browse/IGNITE-14728.

On Fri, 14 May 2021 at 13:26, Stanislav Lukyanov 
wrote:

> Hi Eduard,
>
> I think IGNITE_PDS_WAL_REBALANCE_THRESHOLD needs to be kept for backwards
> compatibility.
>
> I suggest that it is used as a source of the default value for the new DMS
> property:
> 1. On node start (or perhaps on cluster activation?) the
> wal.rebalance.threshold DMS property is checked
> 2. If the wal.rebalance.threshold has no value,
> IGNITE_PDS_WAL_REBALANCE_THRESHOLD sys property is checked
> 3. If IGNITE_PDS_WAL_REBALANCE_THRESHOLD has a value, it is written to
> wal.rebalance.threshold
> 4. If IGNITE_PDS_WAL_REBALANCE_THRESHOLD, 500 is written to
> wal.rebalance.threshold
>
> IGNITE_PDS_WAL_REBALANCE_THRESHOLD should also be deprecated.
>
> Thanks,
> Stan
>
> > On 13 May 2021, at 14:43, Eduard Rakhmankulov 
> wrote:
> >
> > Hello!
> >
> > Further investigation has showed, that there is a boolean system property
> > which blocks mbean creation, therefore property management through JMX is
> > not a great idea.
> > I found control.sh utility feature that enables distributed property
> > management (--property (set | get | list) ).
> >
> > I propose adding a new distributed property `*wal.rebalance.threshold*`
> to
> > replace IGNITE_PDS_WAL_REBALANCE_THRESHOLD system property functionality
> > with the same default value (*500*).
> > Property management will be executed with control.sh.
> >
> > Please share your thoughts.
> >
> > On Wed, 12 May 2021 at 16:06, Eduard Rakhmankulov 
> > wrote:
> >
> >> Hi!
> >>
> >> I propose to add a new MBean linked to DMS that contains the property
> >> IGNITE_PDS_WAL_REBALANCE_THRESHOLD.
> >> That enables configuration through JMX.
> >>
> >> WDYT?
> >>
> >>
> >> On Tue, 11 May 2021 at 16:52, Eduard Rakhmankulov 
> >> wrote:
> >>
> >>> Hi Stanislav,
> >>>
> >>> I think this is an excellent idea to use distributed metastore.
> >>>
> >>> Should I leave system property for backward compatibility?
> >>>
> >>>
> >>> On Sun, 9 May 2021 at 19:04, Atri Sharma  wrote:
> >>>
>  +1
> 
>  On Sun, 9 May 2021, 21:33 Stanislav Lukyanov,  >
>  wrote:
> 
> > Hi Eduard,
> >
> > I strongly believe that if a configuration option is cluster wide
> then
>  it
> > belongs to distributed metastore and not to IgniteConfiguration.
> > This allows to get cluster-wide consistency guarantees and API for
>  dynamic
> > change out of the box (need to teach the internals to re-read the
>  property
> > from DMS every time of course).
> >
> > WDYT?
> >
> > Stan
> >
> >> On 6 May 2021, at 16:35, Eduard Rakhmankulov 
> > wrote:
> >>
> >> Some addition.
> >>
> >> I want to add configuration to
> >>
> >
> 
> org.apache.ignite.configuration.DataStorageConfiguration#getDefaultWarmUpConfiguration#getP
> >> artitionWalRebalanceThreshold
> >> which will have same semantics as system property (number of entries
>  in
> > WAL
> >> to trigger rebalance).
> >>
> >> On Thu, 6 May 2021 at 15:50, Eduard Rakhmankulov <
>  erixon...@gmail.com>
> >> wrote:
> >>
> >>> Hello, Igniters!
> >>>
> >>> I suggest changing IGNITE_PDS_WAL_REBALANCE_THRESHOLD from system
> >>> properties to IgniteConfiguration.
> >>> This configuration is effectively cluster-wide (because only the
> >>> coordinator's configuration matters when the heuristic with this
> > property
> >>> applies).
> >>>
> >>> It is easier to validate that we have the same configuration on all
> > nodes
> >>> than system property (in the case when another coordinator was
>  elected).
> >>>
> >>> --
> >>> Best regards, Eduard.
> >>>
> >>
> >>
> >> --
> >> С уважением, Рахманкулов Э.Р.
> >
> >
> 
> >>>
> >>>
> >>> --
> >>> С уважением, Рахманкулов Э.Р.
> >>>
> >>
> >>
> >> --
> >> Best regards, Eduard.
> >>
> >
> >
> > --
> > С уважением, Рахманкулов Э.Р.
>
>

-- 
С уважением, Рахманкулов Э.Р.


Re: Change IGNITE_PDS_WAL_REBALANCE_THRESHOLD from System property to Configuraton

2021-05-14 Thread Stanislav Lukyanov
Hi Eduard,

I think IGNITE_PDS_WAL_REBALANCE_THRESHOLD needs to be kept for backwards 
compatibility.

I suggest that it is used as a source of the default value for the new DMS 
property:
1. On node start (or perhaps on cluster activation?) the 
wal.rebalance.threshold DMS property is checked
2. If the wal.rebalance.threshold has no value, 
IGNITE_PDS_WAL_REBALANCE_THRESHOLD sys property is checked
3. If IGNITE_PDS_WAL_REBALANCE_THRESHOLD has a value, it is written to 
wal.rebalance.threshold
4. If IGNITE_PDS_WAL_REBALANCE_THRESHOLD, 500 is written to 
wal.rebalance.threshold

IGNITE_PDS_WAL_REBALANCE_THRESHOLD should also be deprecated.

Thanks,
Stan

> On 13 May 2021, at 14:43, Eduard Rakhmankulov  wrote:
> 
> Hello!
> 
> Further investigation has showed, that there is a boolean system property
> which blocks mbean creation, therefore property management through JMX is
> not a great idea.
> I found control.sh utility feature that enables distributed property
> management (--property (set | get | list) ).
> 
> I propose adding a new distributed property `*wal.rebalance.threshold*` to
> replace IGNITE_PDS_WAL_REBALANCE_THRESHOLD system property functionality
> with the same default value (*500*).
> Property management will be executed with control.sh.
> 
> Please share your thoughts.
> 
> On Wed, 12 May 2021 at 16:06, Eduard Rakhmankulov 
> wrote:
> 
>> Hi!
>> 
>> I propose to add a new MBean linked to DMS that contains the property
>> IGNITE_PDS_WAL_REBALANCE_THRESHOLD.
>> That enables configuration through JMX.
>> 
>> WDYT?
>> 
>> 
>> On Tue, 11 May 2021 at 16:52, Eduard Rakhmankulov 
>> wrote:
>> 
>>> Hi Stanislav,
>>> 
>>> I think this is an excellent idea to use distributed metastore.
>>> 
>>> Should I leave system property for backward compatibility?
>>> 
>>> 
>>> On Sun, 9 May 2021 at 19:04, Atri Sharma  wrote:
>>> 
 +1
 
 On Sun, 9 May 2021, 21:33 Stanislav Lukyanov, 
 wrote:
 
> Hi Eduard,
> 
> I strongly believe that if a configuration option is cluster wide then
 it
> belongs to distributed metastore and not to IgniteConfiguration.
> This allows to get cluster-wide consistency guarantees and API for
 dynamic
> change out of the box (need to teach the internals to re-read the
 property
> from DMS every time of course).
> 
> WDYT?
> 
> Stan
> 
>> On 6 May 2021, at 16:35, Eduard Rakhmankulov 
> wrote:
>> 
>> Some addition.
>> 
>> I want to add configuration to
>> 
> 
 org.apache.ignite.configuration.DataStorageConfiguration#getDefaultWarmUpConfiguration#getP
>> artitionWalRebalanceThreshold
>> which will have same semantics as system property (number of entries
 in
> WAL
>> to trigger rebalance).
>> 
>> On Thu, 6 May 2021 at 15:50, Eduard Rakhmankulov <
 erixon...@gmail.com>
>> wrote:
>> 
>>> Hello, Igniters!
>>> 
>>> I suggest changing IGNITE_PDS_WAL_REBALANCE_THRESHOLD from system
>>> properties to IgniteConfiguration.
>>> This configuration is effectively cluster-wide (because only the
>>> coordinator's configuration matters when the heuristic with this
> property
>>> applies).
>>> 
>>> It is easier to validate that we have the same configuration on all
> nodes
>>> than system property (in the case when another coordinator was
 elected).
>>> 
>>> --
>>> Best regards, Eduard.
>>> 
>> 
>> 
>> --
>> С уважением, Рахманкулов Э.Р.
> 
> 
 
>>> 
>>> 
>>> --
>>> С уважением, Рахманкулов Э.Р.
>>> 
>> 
>> 
>> --
>> Best regards, Eduard.
>> 
> 
> 
> -- 
> С уважением, Рахманкулов Э.Р.



Re: Change IGNITE_PDS_WAL_REBALANCE_THRESHOLD from System property to Configuraton

2021-05-13 Thread Eduard Rakhmankulov
Hello!

Further investigation has showed, that there is a boolean system property
which blocks mbean creation, therefore property management through JMX is
not a great idea.
I found control.sh utility feature that enables distributed property
management (--property (set | get | list) ).

I propose adding a new distributed property `*wal.rebalance.threshold*` to
replace IGNITE_PDS_WAL_REBALANCE_THRESHOLD system property functionality
with the same default value (*500*).
Property management will be executed with control.sh.

Please share your thoughts.

On Wed, 12 May 2021 at 16:06, Eduard Rakhmankulov 
wrote:

> Hi!
>
> I propose to add a new MBean linked to DMS that contains the property
> IGNITE_PDS_WAL_REBALANCE_THRESHOLD.
> That enables configuration through JMX.
>
> WDYT?
>
>
> On Tue, 11 May 2021 at 16:52, Eduard Rakhmankulov 
> wrote:
>
>> Hi Stanislav,
>>
>> I think this is an excellent idea to use distributed metastore.
>>
>> Should I leave system property for backward compatibility?
>>
>>
>> On Sun, 9 May 2021 at 19:04, Atri Sharma  wrote:
>>
>>> +1
>>>
>>> On Sun, 9 May 2021, 21:33 Stanislav Lukyanov, 
>>> wrote:
>>>
>>> > Hi Eduard,
>>> >
>>> > I strongly believe that if a configuration option is cluster wide then
>>> it
>>> > belongs to distributed metastore and not to IgniteConfiguration.
>>> > This allows to get cluster-wide consistency guarantees and API for
>>> dynamic
>>> > change out of the box (need to teach the internals to re-read the
>>> property
>>> > from DMS every time of course).
>>> >
>>> > WDYT?
>>> >
>>> > Stan
>>> >
>>> > > On 6 May 2021, at 16:35, Eduard Rakhmankulov 
>>> > wrote:
>>> > >
>>> > > Some addition.
>>> > >
>>> > > I want to add configuration to
>>> > >
>>> >
>>> org.apache.ignite.configuration.DataStorageConfiguration#getDefaultWarmUpConfiguration#getP
>>> > > artitionWalRebalanceThreshold
>>> > > which will have same semantics as system property (number of entries
>>> in
>>> > WAL
>>> > > to trigger rebalance).
>>> > >
>>> > > On Thu, 6 May 2021 at 15:50, Eduard Rakhmankulov <
>>> erixon...@gmail.com>
>>> > > wrote:
>>> > >
>>> > >> Hello, Igniters!
>>> > >>
>>> > >> I suggest changing IGNITE_PDS_WAL_REBALANCE_THRESHOLD from system
>>> > >> properties to IgniteConfiguration.
>>> > >> This configuration is effectively cluster-wide (because only the
>>> > >> coordinator's configuration matters when the heuristic with this
>>> > property
>>> > >> applies).
>>> > >>
>>> > >> It is easier to validate that we have the same configuration on all
>>> > nodes
>>> > >> than system property (in the case when another coordinator was
>>> elected).
>>> > >>
>>> > >> --
>>> > >> Best regards, Eduard.
>>> > >>
>>> > >
>>> > >
>>> > > --
>>> > > С уважением, Рахманкулов Э.Р.
>>> >
>>> >
>>>
>>
>>
>> --
>> С уважением, Рахманкулов Э.Р.
>>
>
>
> --
> Best regards, Eduard.
>


-- 
С уважением, Рахманкулов Э.Р.


Re: Change IGNITE_PDS_WAL_REBALANCE_THRESHOLD from System property to Configuraton

2021-05-12 Thread Eduard Rakhmankulov
Hi!

I propose to add a new MBean linked to DMS that contains the property
IGNITE_PDS_WAL_REBALANCE_THRESHOLD.
That enables configuration through JMX.

WDYT?


On Tue, 11 May 2021 at 16:52, Eduard Rakhmankulov 
wrote:

> Hi Stanislav,
>
> I think this is an excellent idea to use distributed metastore.
>
> Should I leave system property for backward compatibility?
>
>
> On Sun, 9 May 2021 at 19:04, Atri Sharma  wrote:
>
>> +1
>>
>> On Sun, 9 May 2021, 21:33 Stanislav Lukyanov, 
>> wrote:
>>
>> > Hi Eduard,
>> >
>> > I strongly believe that if a configuration option is cluster wide then
>> it
>> > belongs to distributed metastore and not to IgniteConfiguration.
>> > This allows to get cluster-wide consistency guarantees and API for
>> dynamic
>> > change out of the box (need to teach the internals to re-read the
>> property
>> > from DMS every time of course).
>> >
>> > WDYT?
>> >
>> > Stan
>> >
>> > > On 6 May 2021, at 16:35, Eduard Rakhmankulov 
>> > wrote:
>> > >
>> > > Some addition.
>> > >
>> > > I want to add configuration to
>> > >
>> >
>> org.apache.ignite.configuration.DataStorageConfiguration#getDefaultWarmUpConfiguration#getP
>> > > artitionWalRebalanceThreshold
>> > > which will have same semantics as system property (number of entries
>> in
>> > WAL
>> > > to trigger rebalance).
>> > >
>> > > On Thu, 6 May 2021 at 15:50, Eduard Rakhmankulov > >
>> > > wrote:
>> > >
>> > >> Hello, Igniters!
>> > >>
>> > >> I suggest changing IGNITE_PDS_WAL_REBALANCE_THRESHOLD from system
>> > >> properties to IgniteConfiguration.
>> > >> This configuration is effectively cluster-wide (because only the
>> > >> coordinator's configuration matters when the heuristic with this
>> > property
>> > >> applies).
>> > >>
>> > >> It is easier to validate that we have the same configuration on all
>> > nodes
>> > >> than system property (in the case when another coordinator was
>> elected).
>> > >>
>> > >> --
>> > >> Best regards, Eduard.
>> > >>
>> > >
>> > >
>> > > --
>> > > С уважением, Рахманкулов Э.Р.
>> >
>> >
>>
>
>
> --
> С уважением, Рахманкулов Э.Р.
>


-- 
Best regards, Eduard.


Re: Change IGNITE_PDS_WAL_REBALANCE_THRESHOLD from System property to Configuraton

2021-05-11 Thread Eduard Rakhmankulov
Hi Stanislav,

I think this is an excellent idea to use distributed metastore.

Should I leave system property for backward compatibility?


On Sun, 9 May 2021 at 19:04, Atri Sharma  wrote:

> +1
>
> On Sun, 9 May 2021, 21:33 Stanislav Lukyanov, 
> wrote:
>
> > Hi Eduard,
> >
> > I strongly believe that if a configuration option is cluster wide then it
> > belongs to distributed metastore and not to IgniteConfiguration.
> > This allows to get cluster-wide consistency guarantees and API for
> dynamic
> > change out of the box (need to teach the internals to re-read the
> property
> > from DMS every time of course).
> >
> > WDYT?
> >
> > Stan
> >
> > > On 6 May 2021, at 16:35, Eduard Rakhmankulov 
> > wrote:
> > >
> > > Some addition.
> > >
> > > I want to add configuration to
> > >
> >
> org.apache.ignite.configuration.DataStorageConfiguration#getDefaultWarmUpConfiguration#getP
> > > artitionWalRebalanceThreshold
> > > which will have same semantics as system property (number of entries in
> > WAL
> > > to trigger rebalance).
> > >
> > > On Thu, 6 May 2021 at 15:50, Eduard Rakhmankulov 
> > > wrote:
> > >
> > >> Hello, Igniters!
> > >>
> > >> I suggest changing IGNITE_PDS_WAL_REBALANCE_THRESHOLD from system
> > >> properties to IgniteConfiguration.
> > >> This configuration is effectively cluster-wide (because only the
> > >> coordinator's configuration matters when the heuristic with this
> > property
> > >> applies).
> > >>
> > >> It is easier to validate that we have the same configuration on all
> > nodes
> > >> than system property (in the case when another coordinator was
> elected).
> > >>
> > >> --
> > >> Best regards, Eduard.
> > >>
> > >
> > >
> > > --
> > > С уважением, Рахманкулов Э.Р.
> >
> >
>


-- 
С уважением, Рахманкулов Э.Р.


Re: Change IGNITE_PDS_WAL_REBALANCE_THRESHOLD from System property to Configuraton

2021-05-09 Thread Atri Sharma
+1

On Sun, 9 May 2021, 21:33 Stanislav Lukyanov, 
wrote:

> Hi Eduard,
>
> I strongly believe that if a configuration option is cluster wide then it
> belongs to distributed metastore and not to IgniteConfiguration.
> This allows to get cluster-wide consistency guarantees and API for dynamic
> change out of the box (need to teach the internals to re-read the property
> from DMS every time of course).
>
> WDYT?
>
> Stan
>
> > On 6 May 2021, at 16:35, Eduard Rakhmankulov 
> wrote:
> >
> > Some addition.
> >
> > I want to add configuration to
> >
> org.apache.ignite.configuration.DataStorageConfiguration#getDefaultWarmUpConfiguration#getP
> > artitionWalRebalanceThreshold
> > which will have same semantics as system property (number of entries in
> WAL
> > to trigger rebalance).
> >
> > On Thu, 6 May 2021 at 15:50, Eduard Rakhmankulov 
> > wrote:
> >
> >> Hello, Igniters!
> >>
> >> I suggest changing IGNITE_PDS_WAL_REBALANCE_THRESHOLD from system
> >> properties to IgniteConfiguration.
> >> This configuration is effectively cluster-wide (because only the
> >> coordinator's configuration matters when the heuristic with this
> property
> >> applies).
> >>
> >> It is easier to validate that we have the same configuration on all
> nodes
> >> than system property (in the case when another coordinator was elected).
> >>
> >> --
> >> Best regards, Eduard.
> >>
> >
> >
> > --
> > С уважением, Рахманкулов Э.Р.
>
>


Re: Change IGNITE_PDS_WAL_REBALANCE_THRESHOLD from System property to Configuraton

2021-05-09 Thread Stanislav Lukyanov
Hi Eduard,

I strongly believe that if a configuration option is cluster wide then it 
belongs to distributed metastore and not to IgniteConfiguration.
This allows to get cluster-wide consistency guarantees and API for dynamic 
change out of the box (need to teach the internals to re-read the property from 
DMS every time of course).

WDYT?

Stan

> On 6 May 2021, at 16:35, Eduard Rakhmankulov  wrote:
> 
> Some addition.
> 
> I want to add configuration to
> org.apache.ignite.configuration.DataStorageConfiguration#getDefaultWarmUpConfiguration#getP
> artitionWalRebalanceThreshold
> which will have same semantics as system property (number of entries in WAL
> to trigger rebalance).
> 
> On Thu, 6 May 2021 at 15:50, Eduard Rakhmankulov 
> wrote:
> 
>> Hello, Igniters!
>> 
>> I suggest changing IGNITE_PDS_WAL_REBALANCE_THRESHOLD from system
>> properties to IgniteConfiguration.
>> This configuration is effectively cluster-wide (because only the
>> coordinator's configuration matters when the heuristic with this property
>> applies).
>> 
>> It is easier to validate that we have the same configuration on all nodes
>> than system property (in the case when another coordinator was elected).
>> 
>> --
>> Best regards, Eduard.
>> 
> 
> 
> -- 
> С уважением, Рахманкулов Э.Р.



Re: Change IGNITE_PDS_WAL_REBALANCE_THRESHOLD from System property to Configuraton

2021-05-06 Thread Eduard Rakhmankulov
Some addition.

I want to add configuration to
org.apache.ignite.configuration.DataStorageConfiguration#getDefaultWarmUpConfiguration#getP
artitionWalRebalanceThreshold
which will have same semantics as system property (number of entries in WAL
to trigger rebalance).

On Thu, 6 May 2021 at 15:50, Eduard Rakhmankulov 
wrote:

> Hello, Igniters!
>
> I suggest changing IGNITE_PDS_WAL_REBALANCE_THRESHOLD from system
> properties to IgniteConfiguration.
> This configuration is effectively cluster-wide (because only the
> coordinator's configuration matters when the heuristic with this property
> applies).
>
> It is easier to validate that we have the same configuration on all nodes
> than system property (in the case when another coordinator was elected).
>
> --
> Best regards, Eduard.
>


-- 
С уважением, Рахманкулов Э.Р.


Change IGNITE_PDS_WAL_REBALANCE_THRESHOLD from System property to Configuraton

2021-05-06 Thread Eduard Rakhmankulov
Hello, Igniters!

I suggest changing IGNITE_PDS_WAL_REBALANCE_THRESHOLD from system
properties to IgniteConfiguration.
This configuration is effectively cluster-wide (because only the
coordinator's configuration matters when the heuristic with this property
applies).

It is easier to validate that we have the same configuration on all nodes
than system property (in the case when another coordinator was elected).

-- 
Best regards, Eduard.