> To resolve this, I suggest to > introduce just another field defaultRegionConfiguration and get rid of > other defaults in DataStorageConfiguration.
Won’t it complicate the configuration from a Spring XML file? I’m not an expert in Spring so how do I get defaultRegionConfiguration bean first to change any parameter? — Denis > On Oct 2, 2017, at 8:30 AM, Alexey Goncharuk <alexey.goncha...@gmail.com> > wrote: > > Agree with Vladimir. If we are to implement this, we would either need to > have a Boolean (non-primitive) for persistenceEnabled on > DataRegionConfiguration, or introduce an enum for this field which is also > an overkill. On the other hand, one can assume that the defaults we are > talking about are actually inherited. To resolve this, I suggest to > introduce just another field defaultRegionConfiguration and get rid of > other defaults in DataStorageConfiguration. > > Thoughts? > > 2017-10-02 15:19 GMT+03:00 Ivan Rakov <ivan.glu...@gmail.com>: > >> Vladimir, >> >> I like your approach because it's easier to implement. >> >> However, user may be confused by setting *isDefaultPersistenceEnabled* >> flag and seeing that persistence is not enabled by default in custom memory >> region. I'll add clarifying Javadoc at this place. >> >> Best Regards, >> Ivan Rakov >> >> >> On 02.10.2017 11:28, Vladimir Ozerov wrote: >> >>> Ivan, >>> >>> I do not think this is correct approach, because it will be hard to >>> explain, and you will have to use "Boolean" instead of "boolean" for >>> DataRegionConfiguration. I do not think we need default "persistence >>> enabled" for all regions. Instead, we should have "persistence enabled" >>> flag for default region only. It should not be propagated to custom >>> regions. >>> >>> On Mon, Oct 2, 2017 at 11:14 AM, Ivan Rakov <ivan.glu...@gmail.com> >>> wrote: >>> >>> Guys, I think I got the point now. >>>> >>>> Let's check the final design: >>>> >>>> *DataStorageConfiguration* will have *isDefaultPersistenceEnabled* >>>> property (default = false), which will be used for enabling persistence >>>> in >>>> default data region. >>>> *DataRegionConfiguration* will have *isPersistenceEnabled* property, >>>> which >>>> will be used for enabling persistence in corresponding data region. If >>>> value is not set, value of *DataStorageConfiguration::isD >>>> efaultPersistenceEnabled* >>>> will be used by default. >>>> >>>> Best Regards, >>>> Ivan Rakov >>>> >>>> >>>> >>>> On 02.10.2017 7:49, Dmitriy Setrakyan wrote: >>>> >>>> On Mon, Oct 2, 2017 at 7:46 AM, Denis Magda <dma...@apache.org> wrote: >>>>> >>>>> On Oct 1, 2017, at 4:41 AM, Ivan Rakov <ivan.glu...@gmail.com> wrote: >>>>> >>>>>> 1) You're right. I forgot to include the main flag in >>>>>>> >>>>>>> DataRegionConfiguration - *isPersistenceEnabled*. Persistence will be >>>>>> enabled globally if at least one memory region has this flag set. >>>>>> >>>>>> I’m confused. Why the persistence should be enabled *globally* if the >>>>>> purpose is to have it set for a specific region? If it’s enabled for >>>>>> region >>>>>> A only, I don’t want to have it activated for region B. >>>>>> >>>>>> Yes, you are right. By default the persistence will be disabled >>>>>> globally. >>>>>> >>>>> But we should also give users a way to switch the default behavior from >>>>> in-memory only (no-persistence) to persistence. >>>>> >>>>> >>>>> >>