Maxim, Mid next year is fine, but it makes more sense to bound it by time rather than a specific version. For example, what if we want to release 2.14 earlier for whatever reason?
As for the guide, I obviously can't force anyone, but I still believe it is useful, and I hope someone will pick this up. It's also a good practice to document such changes, even for internal purposes. I would do this myself, but I'm afraid my understanding of the topic is not enough :) I think we are on the same page regarding everything else. -Val On Tue, Dec 7, 2021 at 1:46 AM Вячеслав Коптилин <slava.kopti...@gmail.com> wrote: > Hello Maxim, > > The plan should be more precise. So at the very high level: > > > > 1. Deprecate the system cache in 2.13. > > 2. Remove the system cache in 2.14. > > > I still think that we should not be stuck to a concrete version 2.14. > The system cache should be removed when all related improvements will be > done (at least, transaction support on the distributed metastorage). > > Thanks, > S. > > пн, 6 дек. 2021 г. в 20:40, Maxim Muzafarov <mmu...@apache.org>: > > > Val, > > > > The plan should be more precise. So at the very high level: > > > > 1. Deprecate the system cache in 2.13. > > 2. Remove the system cache in 2.14. > > > > 2.14 should happen in the mid of the next year I suppose. > > > > I don't think we should write guides for the system cache > > > metastorage migration process. This is a completely internal API and > > we can change it. Any plugin can create its own internal cache for any > > needs and if there are any hooks required for it (e.g. like > > PartitionsExchangeAware interface) it might be added prior to the > > removal. > > > > > > After we agreed on this plan we can send a notification for dev, user > > lists about these changes, so all the plugin developers will be up to > > date. But I think that everyone has already known everything, so let's > > move on :-) > > > > On Mon, 6 Dec 2021 at 20:22, Nikolay Izhikov <nizhi...@apache.org> > wrote: > > > > > > Valentin, > > > > > > > However, changes like system cache removal are much more critical, > > because a plugin might rely on it. > > > > > > I’m still don’t understand - what is the difference between system > cache > > and any other Ignite cache except the name? > > > Do we have some special guarantees for system cache? > > > > > > > Any objections to the plan I've suggested earlier? > > > > 1. Write down the differences between the system cache and the > > metastorage, and provide a transition guide for plugin developers. > > > > > > Don’t think we need any transition guide. > > > > > > > I don't think it's reasonable to do this earlier than mid next year > > > > > > This date are questionable, also. > > > > > > Other points of your plan makes sense. > > > +1 to follow it. > > > > > > > 6 дек. 2021 г., в 20:16, Valentin Kulichenko < > > valentin.kuliche...@gmail.com> написал(а): > > > > > > > > That's correct. > > > > > > > > Folks, can we agree on how we want to approach the removal of the > > system > > > > cache? Any objections to the plan I've suggested earlier? As a > > reminder, > > > > here it is: > > > > 1. Write down the differences between the system cache and the > > metastorage, > > > > and provide a transition guide for plugin developers. > > > > 2. Deprecate the system cache in 2.13. > > > > 3. Remove the system cache in one of the further releases. I don't > > think > > > > it's reasonable to do this earlier than mid next year (even that is > > > > potentially too early). > > > > > > > > As for general compatibility requirements related to plugins, I think > > they > > > > obviously should not be as strict as for the public API. It's > > > > understandable that a method signature can be updated, or another > > similar > > > > change can be made in internal APIs. However, changes like system > cache > > > > removal are much more critical, because a plugin might rely on it. > > It's our > > > > responsibility as a good friendly community to provide a reasonable > > > > alternative and a reasonable timeline for such a case. > > > > > > > > -Val > > > > > > > > On Mon, Dec 6, 2021 at 8:56 AM Вячеслав Коптилин < > > slava.kopti...@gmail.com> > > > > wrote: > > > > > > > >> Hi, > > > >> > > > >>> Plugins have access to different internal Ignite components, such > as > > > >> security processor and others, and can extend the programmatic API > of > > > >> Ignite. > > > >> > > > >>> Where docs say that we, as a community, take responsibility to keep > > > >> internals in the way plugin expect? > > > >> Nikolay, it seems to me, that quoted text clearly states about that. > > > >> Plugin has access to internal APIs and so it depends on it. If we > > want to > > > >> be a friendly community then we should discuss such changes > > > >> (removing/changing internal APIs) and provide a reasonable time in > > order to > > > >> update such dependencies. > > > >> > > > >> I think no one in this topic is against removing sys-cache. The > > question > > > >> is: is it suitable for the community to deprecate using system cache > > in > > > >> 2.13 and removing it in 2.14 || 2.15? > > > >> Am I missing something? Am I correct? > > > >> > > > >> Thanks, > > > >> Slava. > > > >> > > > >> > > > >> пн, 6 дек. 2021 г. в 15:00, Nikolay Izhikov <nizhi...@apache.org>: > > > >> > > > >>> Slava, I don’t get it. > > > >>> > > > >>>> Plugins have access to different internal Ignite components, such > as > > > >>> security processor and others, and can extend the programmatic API > of > > > >>> Ignite. > > > >>> > > > >>> Where docs say that we, as a community, take responsibility to keep > > > >>> internals in the way plugin expect? > > > >>> > > > >>>> 6 дек. 2021 г., в 14:48, Вячеслав Коптилин < > > slava.kopti...@gmail.com> > > > >>> написал(а): > > > >>>> > > > >>>> Hello Nikolay, > > > >>>> > > > >>>>>> plugin framework allows to implement internal components and use > > the > > > >>>> internal API. > > > >>>>> Can you please, point out to documentation or place in Ignite > code > > > >> that > > > >>>> describe this behaviour? > > > >>>> > > > >>>> Looks like it states here > > > >> https://ignite.apache.org/docs/latest/plugins > > > >>>> > > > >>>>> The Ignite plugin system allows you to extend the core > > functionality > > > >> of > > > >>>>> Ignite. Plugins have access to different internal Ignite > > components, > > > >>> such > > > >>>>> as security processor and others, and can extend the programmatic > > API > > > >> of > > > >>>>> Ignite. > > > >>>> > > > >>>> > > > >>>> Thanks, > > > >>>> S. > > > >>>> > > > >>>> > > > >>>> сб, 4 дек. 2021 г. в 14:54, Nikolay Izhikov <nizhi...@apache.org > >: > > > >>>> > > > >>>>> Valentin > > > >>>>> > > > >>>>>> plugin framework allows to implement internal components and use > > the > > > >>>>> internal API. > > > >>>>> > > > >>>>> Can you please, point out to documentation or place in Ignite > code > > > >> that > > > >>>>> describe this behaviour? > > > >>>>> AFAIK plugin can only use public API, internal API can be changed > > any > > > >>> time > > > >>>>> we want. > > > >>>>> > > > >>>>>> Folks, can anyone explain the rush? > > > >>>>> > > > >>>>> No rush from my side. > > > >>>>> > > > >>>>> Just want to understand your vision of integration points between > > > >> Ignite > > > >>>>> and plugins. > > > >>>>> > > > >>>>>> Is there any specific reason for it? > > > >>>>> > > > >>>>> Intention of IEP-80 is to improve Ignite codebase by removing > > > >> abandoned > > > >>>>> features. > > > >>>>> > > > >>>>>> But the fact is that there are users that can depend on the > system > > > >>> cache > > > >>>>> via the plugin framework. > > > >>>>> > > > >>>>> Why this dependency can’t be changed to any regular cache? > > > >>>>> Just replace `Ignite#cache` to `Ignite#getOrCreateCache` and > that’s > > > >> it. > > > >>>>> > > > >>>>> Do we have some special guarantees or logic besides system cache? > > > >>>>> > > > >>>>> > > > >>>>>> 4 дек. 2021 г., в 02:14, Valentin Kulichenko < > > > >>>>> valentin.kuliche...@gmail.com> написал(а): > > > >>>>>> > > > >>>>>> Nikolay, that's right, plugin framework allows to implement > > internal > > > >>>>>> components and use the internal API. There is a difference > > between a > > > >>>>> plugin > > > >>>>>> and an extension that uses only public API > > > >>>>>> > > > >>>>>> Folks, can anyone explain the rush? Is there any specific reason > > for > > > >>> it? > > > >>>>>> > > > >>>>>> I think we all agree that this is a good change - system cache > > has to > > > >>>>> go. I > > > >>>>>> guess technically it's not even a breaking change, because > system > > > >> cache > > > >>>>> is > > > >>>>>> not a public API feature. But the fact is that there are users > > that > > > >> can > > > >>>>>> depend on the system cache via the plugin framework. Let's be > > > >>> respectful > > > >>>>> to > > > >>>>>> those users, provide a reasonable documented alternative and > give > > > >> time. > > > >>>>>> > > > >>>>>> -Val > > > >>>>>> > > > >>>>>> On Fri, Dec 3, 2021 at 8:18 AM Nikolay Izhikov < > > nizhi...@apache.org> > > > >>>>> wrote: > > > >>>>>> > > > >>>>>>> I don’t understand how it possible. > > > >>>>>>> > > > >>>>>>> Are you talking about plugin that uses some kind of internal > API? > > > >>>>>>> > > > >>>>>>>> 3 дек. 2021 г., в 18:50, Вячеслав Коптилин < > > > >> slava.kopti...@gmail.com > > > >>>> > > > >>>>>>> написал(а): > > > >>>>>>>> > > > >>>>>>>> Hello Nikolay, > > > >>>>>>>> > > > >>>>>>>> If I am not mistaken, the method you mentioned, allows to > > create a > > > >>>>> "user" > > > >>>>>>>> cache that is available through public api for the user. This > > does > > > >>> not > > > >>>>>>>> cover the case when the plugin developer wants to hide such > > cache > > > >> and > > > >>>>>>>> protect it form the end user (at least, via public api). > > > >>>>>>>> > > > >>>>>>>> Thanks, > > > >>>>>>>> S. > > > >>>>>>>> > > > >>>>>>>> пт, 3 дек. 2021 г., 14:15 Nikolay Izhikov < > nizhi...@apache.org > > >: > > > >>>>>>>> > > > >>>>>>>>> Vyacheslav, Val, can you please clarify - What is the issue > if > > > >>>>>>> third-party > > > >>>>>>>>> plugins will create «ignite-sys-cache» from the code? > > > >>>>>>>>> > > > >>>>>>>>> Like just replacing `Ignite#cache` with the > > > >>> `Ignite#getOrCreateCache`. > > > >>>>>>>>> > > > >>>>>>>>>> 2 дек. 2021 г., в 16:13, Вячеслав Коптилин < > > > >>> slava.kopti...@gmail.com > > > >>>>>> > > > >>>>>>>>> написал(а): > > > >>>>>>>>>> > > > >>>>>>>>>> Hello Maxim, > > > >>>>>>>>>> > > > >>>>>>>>>>> I don't understand why you are using *backwards > > compatibility* > > > >> for > > > >>>>>>>>>> completely internal things. > > > >>>>>>>>>>> Why you are thinking in terms of users usage when are > talking > > > >>> about > > > >>>>>>>>>> ignite-sys-cache but not thinking when refactoring > > > >>>>>>>>>> First of all, we are talking about all plugin developers. It > > does > > > >>> not > > > >>>>>>>>>> matter it is open-source or proprietary plugins. > > > >>>>>>>>>> Honestly, I don't have a list of all possible plugins that > > have > > > >>>>> already > > > >>>>>>>>>> been developed and available under the ASF license, for > > instance. > > > >>>>>>>>>> Do you have such a list? Can you be sure that this change > will > > > >> not > > > >>>>>>> affect > > > >>>>>>>>>> anyone? > > > >>>>>>>>>> > > > >>>>>>>>>>> I don't understand why you are using *backwards > > compatibility* > > > >> for > > > >>>>>>>>>> completely internal things. > > > >>>>>>>>>>> Why you are thinking in terms of users usage when are > talking > > > >>> about > > > >>>>>>>>>> ignite-sys-cache but not thinking when refactoring > > > >>>>>>>>>> The system cache was the crucial thing in the architecture > of > > > >>> Apache > > > >>>>>>>>> Ignite > > > >>>>>>>>>> 1.x and 2.x (at least 2.1 - 2.11?) > > > >>>>>>>>>> > > > >>>>>>>>>>> All the internals have been reworked and nobody even > > mentioned > > > >>> that > > > >>>>> it > > > >>>>>>>>>> may affect some of the plugin developers. > > > >>>>>>>>>> Yep, perhaps, some internal parts of Apache Ignite were > > reworked > > > >> in > > > >>>>>>> order > > > >>>>>>>>>> to avoid using the system cache. > > > >>>>>>>>>> However, it is still a part of Ignite and it works and can > be > > > >> used > > > >>> in > > > >>>>>>>>>> plugins. > > > >>>>>>>>>> Honestly, the mentioned alternative, I mean the distributed > > > >>>>>>> metastorage, > > > >>>>>>>>> is > > > >>>>>>>>>> the INTERNAL thing as well. > > > >>>>>>>>>> It means that plugin developer depends on INTERNAL entities. > > (it > > > >>> does > > > >>>>>>> not > > > >>>>>>>>>> matter system-cache/metastorage) > > > >>>>>>>>>> IMHO, such questions should be CAREFULLY discussed with no > > rush. > > > >>>>>>>>>> > > > >>>>>>>>>>> I do not propose to rush with the ignite-sys-cache removal. > > I'd > > > >>> like > > > >>>>>>> to > > > >>>>>>>>>> collect all the technical stuff that we depend on, fix all > of > > > >> them > > > >>>>> and > > > >>>>>>>>>> after everything will be ready do a final removal. > > > >>>>>>>>>> Good! We are on the same page! > > > >>>>>>>>>> > > > >>>>>>>>>>> 1. Add deprecation for the 2.12 release. I hope it is still > > > >>>>> possible. > > > >>>>>>>>>> If I am not mistaken, the code freeze was October 29. I > think > > it > > > >> is > > > >>>>> too > > > >>>>>>>>>> late to introduce this change. We can add deprecation for > the > > > >> 2.13 > > > >>>>>>>>> release. > > > >>>>>>>>>> > > > >>>>>>>>>>> Apache Ignite core still have some dependencies on > > > >>> ignite-sys-cache > > > >>>>>>> that > > > >>>>>>>>>> should fix for 2.13 > > > >>>>>>>>>> Ok, I agree. We need to try to find out all edge cases and > add > > > >> new > > > >>>>>>>>>> abilities to the metastorage in order to cover all known > > > >>>>>>>>>> issues/requirements. > > > >>>>>>>>>> > > > >>>>>>>>>>> Remove the system cache in 2.14. > > > >>>>>>>>>> It depends on our progress with improving the distributed > > > >>>>> metastorage. > > > >>>>>>> In > > > >>>>>>>>>> general, I hope it will be possible. > > > >>>>>>>>>> > > > >>>>>>>>>> Thanks, > > > >>>>>>>>>> S. > > > >>>>>>>>>> > > > >>>>>>>>>> чт, 2 дек. 2021 г. в 13:36, Maxim Muzafarov < > > mmu...@apache.org>: > > > >>>>>>>>>> > > > >>>>>>>>>>> Pavel, > > > >>>>>>>>>>> > > > >>>>>>>>>>> > > > >>>>>>>>>>> I don't understand why you are using *backwards > > compatibility* > > > >> for > > > >>>>>>>>>>> completely internal things. Why you are thinking in terms > of > > > >> users > > > >>>>>>>>>>> usage when are talking about ignite-sys-cache but not > > thinking > > > >>> when > > > >>>>>>>>>>> refactoring, for instance, all the checkpoint classes? > Take a > > > >> look > > > >>>>> at > > > >>>>>>>>>>> the [1] issue. All the internals have been reworked and > > nobody > > > >>> even > > > >>>>>>>>>>> mentioned that it may affect some of the plugin developers. > > This > > > >>> is > > > >>>>>>>>>>> really strange, so I can't agree with you. > > > >>>>>>>>>>> > > > >>>>>>>>>>> > > > >>>>>>>>>>> I do not propose to rush with the ignite-sys-cache removal. > > I'd > > > >>> like > > > >>>>>>>>>>> to collect all the technical stuff that we depend on, fix > > all of > > > >>>>> them > > > >>>>>>>>>>> and after everything will be ready do a final removal. > Slava > > > >>> already > > > >>>>>>>>>>> mentioned some crucial cases, so I hope you and Val also > help > > > >> with > > > >>>>> the > > > >>>>>>>>>>> rest of them. Let's be more precise in terms *what we need > to > > > >>> fix*. > > > >>>>>>>>>>> > > > >>>>>>>>>>> > > > >>>>>>>>>>> I've made some investigations related to the > ignite-sys-cache > > > >> and > > > >>>>> here > > > >>>>>>>>>>> is my proposal: > > > >>>>>>>>>>> > > > >>>>>>>>>>> 1. Add deprecation for the 2.12 release. I hope it is still > > > >>>>> possible. > > > >>>>>>>>>>> > > > >>>>>>>>>>> 2. Apache Ignite core still have some dependencies on > > > >>>>> ignite-sys-cache > > > >>>>>>>>>>> that should fix for 2.13: > > > >>>>>>>>>>> > > > >>>>>>>>>>> 2.1. CLUSTER_NAME property: when it's not set the > > `deploymentId` > > > >>> of > > > >>>>>>>>>>> system cache is used. Let's move it to metastorage. > > > >>>>>>>>>>> 2.2. When the Security is enabled each compute task name > > (hash > > > >> to > > > >>> be > > > >>>>>>>>>>> more precise) is written to the ignite-sys-cache [2]. From > my > > > >>> point > > > >>>>> of > > > >>>>>>>>>>> view, we can remove it in 2.13. Can anyone check? > > > >>>>>>>>>>> 2.3. Slava mentioned some issues with the distributed > > > >> metastorage > > > >>>>> that > > > >>>>>>>>>>> might be fixed. I think this is doable. > > > >>>>>>>>>>> > > > >>>>>>>>>>> 3. Remove the system cache in 2.14. > > > >>>>>>>>>>> > > > >>>>>>>>>>> > > > >>>>>>>>>>> > > > >>>>>>>>>>> [1] https://issues.apache.org/jira/browse/IGNITE-13143 > > > >>>>>>>>>>> [2] > > > >>>>>>>>>>> > > > >>>>>>>>> > > > >>>>>>> > > > >>>>> > > > >>> > > > >> > > > https://github.com/apache/ignite/blob/master/modules/core/src/main/java/org/apache/ignite/internal/processors/task/GridTaskProcessor.java#L201 > > > >>>>>>>>>>> > > > >>>>>>>>>>> On Thu, 2 Dec 2021 at 12:56, Pavel Tupitsyn < > > > >> ptupit...@apache.org > > > >>>> > > > >>>>>>>>> wrote: > > > >>>>>>>>>>>> > > > >>>>>>>>>>>> Maxim, > > > >>>>>>>>>>>> > > > >>>>>>>>>>>>> I don't think that we should wait for 3-rd party plugins > > to be > > > >>>>>>> updated > > > >>>>>>>>>>>>> this is an awful practice when the open-source product > > > >> releases > > > >>>>>>> depend > > > >>>>>>>>>>>>> on some of the proprietary plugins > > > >>>>>>>>>>>> > > > >>>>>>>>>>>> This makes no sense, sorry. > > > >>>>>>>>>>>> > > > >>>>>>>>>>>> It is not that we depend on 3rd party plugins. > > > >>>>>>>>>>>> It is that *our users depend on us to preserve backwards > > > >>>>>>>>> compatibility*. > > > >>>>>>>>>>>> No one likes when their app breaks suddenly because of a > > > >> library > > > >>>>>>>>> update. > > > >>>>>>>>>>>> > > > >>>>>>>>>>>> We know about one use case for sys-cache in GridGain, but > > there > > > >>> may > > > >>>>>>> be > > > >>>>>>>>>>>> more, no one knows. > > > >>>>>>>>>>>> Every breaking change should be carried out carefully and > > > >>>>> gradually. > > > >>>>>>>>>>>> > > > >>>>>>>>>>>> > > > >>>>>>>>>>>> On Thu, Dec 2, 2021 at 12:34 PM Maxim Muzafarov < > > > >>> mmu...@apache.org > > > >>>>>> > > > >>>>>>>>>>> wrote: > > > >>>>>>>>>>>> > > > >>>>>>>>>>>>> Slava, > > > >>>>>>>>>>>>> > > > >>>>>>>>>>>>> Thank you for the comments. > > > >>>>>>>>>>>>> > > > >>>>>>>>>>>>>> Maxim, the community must provide a reasonable time > > interval > > > >> in > > > >>>>>>>>>>> order to > > > >>>>>>>>>>>>> notify all contributors and wait for updating all 3-rd > > party > > > >>>>>>> plugins. > > > >>>>>>>>>>>>> > > > >>>>>>>>>>>>> This is not actually true. We must notify about changes > as > > > >>> earlier > > > >>>>>>> as > > > >>>>>>>>>>>>> possible and not only users but all the developers also. > > > >>> However, > > > >>>>> I > > > >>>>>>>>>>>>> don't think that we should wait for 3-rd party plugins to > > be > > > >>>>> updated > > > >>>>>>>>>>>>> this is an awful practice when the open-source product > > > >> releases > > > >>>>>>> depend > > > >>>>>>>>>>>>> on some of the proprietary plugins. There is no > dependency > > > >>> between > > > >>>>>>>>>>>>> Apache Ignite releases and proprietary plugin releases. > If > > > >>> someone > > > >>>>>>>>>>>>> desires to upgrade to a new version of Apache Ignite it > can > > > >>> update > > > >>>>>>> its > > > >>>>>>>>>>>>> plugins any time he likes. > > > >>>>>>>>>>>>> > > > >>>>>>>>>>>>>> We just need to provide a window that is enough to cover > > all > > > >>>>>>> related > > > >>>>>>>>>>>>> issues. > > > >>>>>>>>>>>>> > > > >>>>>>>>>>>>> Can you share all the issues you know, please? > > > >>>>>>>>>>>>> > > > >>>>>>>>>>>>>> distributed meta storage does not provide the ability to > > > >>>>> atomically > > > >>>>>>>>>>>>> change several properties at the same time (there are no > > > >>>>>>> transactions > > > >>>>>>>>>>> on > > > >>>>>>>>>>>>> this API). > > > >>>>>>>>>>>>> > > > >>>>>>>>>>>>> Can you share an example of what kind of properties we > > intend > > > >> to > > > >>>>>>>>>>>>> change at the same? Will it be enough to change them > > through a > > > >>>>>>> single > > > >>>>>>>>>>>>> thread (e.g. the discovery thread or the exchange > thread)? > > I > > > >>> agree > > > >>>>>>>>>>>>> here that distributed metastorage should provide such an > > > >>> ability, > > > >>>>>>>>>>>>> however, I can't find any real examples for Apache Ignite > > > >>> internal > > > >>>>>>>>>>>>> needs. Please, share the details and let's fix it. > > > >>>>>>>>>>>>> > > > >>>>>>>>>>>>> On Wed, 1 Dec 2021 at 23:19, Valentin Kulichenko > > > >>>>>>>>>>>>> <valentin.kuliche...@gmail.com> wrote: > > > >>>>>>>>>>>>>> > > > >>>>>>>>>>>>>> Agree with Slava. Two months is not enough time, > > especially > > > >>>>>>>>>>> considering > > > >>>>>>>>>>>>>> that the system cache is not functionally equivalent to > > the > > > >>>>>>>>>>> metastorage. > > > >>>>>>>>>>>>> I > > > >>>>>>>>>>>>>> suggest we do the following: > > > >>>>>>>>>>>>>> > > > >>>>>>>>>>>>>> 1. Write down the differences between the system cache > and > > > >> the > > > >>>>>>>>>>>>> metastorage, > > > >>>>>>>>>>>>>> and provide a transition guide for plugin developers. > > > >>>>>>>>>>>>>> 2. Deprecate the system cache in 2.13. > > > >>>>>>>>>>>>>> 3. Remove the system cache in one of the further > > releases. I > > > >>>>> don't > > > >>>>>>>>>>> think > > > >>>>>>>>>>>>>> it's reasonable to do this earlier than mid next year > > (even > > > >>> that > > > >>>>> is > > > >>>>>>>>>>>>>> potentially too early). > > > >>>>>>>>>>>>>> > > > >>>>>>>>>>>>>> Removing the system cache is the right move, but let's > be > > > >> more > > > >>>>>>>>>>>>> considerate > > > >>>>>>>>>>>>>> to the users. There is absolutely no need to rush. > > > >>>>>>>>>>>>>> > > > >>>>>>>>>>>>>> -Val > > > >>>>>>>>>>>>>> > > > >>>>>>>>>>>>>> On Wed, Dec 1, 2021 at 7:28 AM Вячеслав Коптилин < > > > >>>>>>>>>>>>> slava.kopti...@gmail.com> > > > >>>>>>>>>>>>>> wrote: > > > >>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>> Hi Maxim, > > > >>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>> On the other hand, I don't see any valuable reason why > > the > > > >>>>> change > > > >>>>>>>>>>>>> can't > > > >>>>>>>>>>>>>>> be done and we should wait for the future that never > > comes. > > > >>>>>>>>>>>>>>> Maxim, the community must provide a reasonable time > > interval > > > >>> in > > > >>>>>>>>>>> order > > > >>>>>>>>>>>>> to > > > >>>>>>>>>>>>>>> notify all contributors and wait for updating all 3-rd > > party > > > >>>>>>>>>>> plugins. > > > >>>>>>>>>>>>>>> Honestly, it does not seem to me that two, three months > > (the > > > >>>>>>>>>>> current > > > >>>>>>>>>>>>>>> timeline - end of March is the release date, so the end > > of > > > >> Feb > > > >>>>> is > > > >>>>>>>>>>> code > > > >>>>>>>>>>>>>>> freeze) are quite enough. > > > >>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>> I don't see any reasons why we should keep something > in > > the > > > >>>>> CORE > > > >>>>>>>>>>>>> module > > > >>>>>>>>>>>>>>> that is being used at PLUGINS only. This is a lack of > > > >>>>> architecture > > > >>>>>>>>>>>>> design > > > >>>>>>>>>>>>>>> that must be fixed for sure; > > > >>>>>>>>>>>>>>> I agree with you. We just need to provide a window that > > is > > > >>>>> enough > > > >>>>>>>>>>> to > > > >>>>>>>>>>>>> cover > > > >>>>>>>>>>>>>>> all related issues. > > > >>>>>>>>>>>>>>> For example, distributed meta storage does not provide > > the > > > >>>>> ability > > > >>>>>>>>>>> to > > > >>>>>>>>>>>>>>> atomically change several properties at the same time > > (there > > > >>> are > > > >>>>>>> no > > > >>>>>>>>>>>>>>> transactions on this API). > > > >>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>> Perhaps, it would be nice to plan to remove the system > > cache > > > >>> on > > > >>>>>>>>>>> 2.14 or > > > >>>>>>>>>>>>>>> even 2.15. What do you think? > > > >>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>> Thanks, > > > >>>>>>>>>>>>>>> S. > > > >>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>> вт, 30 нояб. 2021 г. в 13:58, Maxim Muzafarov < > > > >>>>> mmu...@apache.org > > > >>>>>>>> : > > > >>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>> Hello Val, > > > >>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>> Thank you for sharing the details. On the one hand, I > > agree > > > >>>>> with > > > >>>>>>>>>>> you > > > >>>>>>>>>>>>>>>> that there is no need to haste with this change and it > > must > > > >>> be > > > >>>>>>>>>>>>>>>> prepared carefully. On the other hand, I don't see any > > > >>> valuable > > > >>>>>>>>>>>>> reason > > > >>>>>>>>>>>>>>>> why the change can't be done and we should wait for > the > > > >>> future > > > >>>>>>>>>>> that > > > >>>>>>>>>>>>>>>> never comes. > > > >>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>> Please, consider the following my considerations: > > > >>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>> - The release 2.13 is not started yet. It will take > > months > > > >> to > > > >>>>> be > > > >>>>>>>>>>>>>>>> released (e.g. the end of March as a possible release > > > >> date). > > > >>>>> The > > > >>>>>>>>>>> time > > > >>>>>>>>>>>>>>>> is more than enough; > > > >>>>>>>>>>>>>>>> - The 2.13 release has breaking changes, so it is a > good > > > >>>>>>>>>>> opportunity > > > >>>>>>>>>>>>>>>> to fix some gaps; > > > >>>>>>>>>>>>>>>> - I don't see any reasons why we should keep something > > in > > > >> the > > > >>>>>>>>>>> CORE > > > >>>>>>>>>>>>>>>> module that is being used at PLUGINS only. This is a > > lack > > > >> of > > > >>>>>>>>>>>>>>>> architecture design that must be fixed for sure; > > > >>>>>>>>>>>>>>>> - The cache affects cluster stability and require > > > >> additional > > > >>>>>>>>>>> human > > > >>>>>>>>>>>>>>>> resources for the code maintenance; > > > >>>>>>>>>>>>>>>> - As a straightforward solution plugins can create > their > > > >> own > > > >>>>>>>>>>> internal > > > >>>>>>>>>>>>>>>> caches and use them ever they like (or use the > > metastorage > > > >>> as I > > > >>>>>>>>>>>>>>>> mentioned earlier). Moving system cache to plugin > > doesn't > > > >>> look > > > >>>>> so > > > >>>>>>>>>>>>>>>> complicated and harmful; > > > >>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>> On Mon, 29 Nov 2021 at 23:07, Valentin Kulichenko > > > >>>>>>>>>>>>>>>> <valentin.kuliche...@gmail.com> wrote: > > > >>>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>>> Maxim, > > > >>>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>>> You're right that the system cache is still likely to > > be > > > >>> used > > > >>>>>>>>>>> by > > > >>>>>>>>>>>>>>> plugins. > > > >>>>>>>>>>>>>>>>> We at GridGain use it for security features, for > > example. > > > >> As > > > >>>>>>>>>>> far > > > >>>>>>>>>>>>> as I > > > >>>>>>>>>>>>>>>> know, > > > >>>>>>>>>>>>>>>>> that's not the only case. > > > >>>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>>> I also agree that the metastorage should be the > > preferred > > > >>> way > > > >>>>>>>>>>> for > > > >>>>>>>>>>>>> this > > > >>>>>>>>>>>>>>>> kind > > > >>>>>>>>>>>>>>>>> of purposes, but is there any harm in keeping the > > system > > > >>> cache > > > >>>>>>>>>>> for > > > >>>>>>>>>>>>> now? > > > >>>>>>>>>>>>>>>>> Unlike the legacy Service Grid, this is not a public > > > >> feature > > > >>>>>>>>>>> that > > > >>>>>>>>>>>>> can > > > >>>>>>>>>>>>>>> be > > > >>>>>>>>>>>>>>>>> used directly by a regular user, so I'm not sure why > > the > > > >>> rush. > > > >>>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>>> How about we instead deprecate the system cache, > > clearly > > > >>>>>>>>>>> document > > > >>>>>>>>>>>>> how > > > >>>>>>>>>>>>>>> to > > > >>>>>>>>>>>>>>>>> use the metastorage as an alternative, and then > > complete > > > >> the > > > >>>>>>>>>>>>> removal > > > >>>>>>>>>>>>>>>>> sometime in the future? > > > >>>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>>> -Val > > > >>>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>>> On Sun, Nov 28, 2021 at 6:49 AM Maxim Muzafarov < > > > >>>>>>>>>>> mmu...@apache.org > > > >>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>> wrote: > > > >>>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>>>> Igniters, > > > >>>>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>>>> Since the legacy service grid implementation was > > removed > > > >>> [2] > > > >>>>>>>>>>> I'd > > > >>>>>>>>>>>>> like > > > >>>>>>>>>>>>>>>>>> to remove the ignite-sys-cache also. It is still > > possible > > > >>>>>>>>>>> that > > > >>>>>>>>>>>>> some > > > >>>>>>>>>>>>>>> of > > > >>>>>>>>>>>>>>>>>> Ignite plugins (e.g. security plugin) are still > using > > > >> this > > > >>>>>>>>>>> cache, > > > >>>>>>>>>>>>>>>>>> however, AFAIK this is not the reason to keep the > > > >> outdated > > > >>>>>>>>>>> system > > > >>>>>>>>>>>>>>>>>> cache and these plugins must be migrated to the > > > >> metastorage > > > >>>>>>>>>>>>> instead. > > > >>>>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>>>> I've filed the issue [1] for removal. Any > objections? > > > >>>>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>>>> [1] > > https://issues.apache.org/jira/browse/IGNITE-16008 > > > >>>>>>>>>>>>>>>>>> [2] > > https://issues.apache.org/jira/browse/IGNITE-15758 > > > >>>>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>>> > > > >>>>>>>>>>>>>>> > > > >>>>>>>>>>>>> > > > >>>>>>>>>>> > > > >>>>>>>>> > > > >>>>>>>>> > > > >>>>>>> > > > >>>>>>> > > > >>>>> > > > >>>>> > > > >>> > > > >>> > > > >> > > > > > >