Folks,
I see no reason to postpone this patch. I think we can proceed with this patch with the commitment to remove MVCC from the public API until the next release (2.11). These changes for sure must be well-documented but for the 2.10 release, we already have in the release notes [1] warnings related to MVCC discontinuation. I don't think we should add to the source code some kind of checkers. The MVCC marked with @IgniteExperimental since the 2.9 release, it also mentioned in the 2.10 release notes. [1] https://ignite.apache.org/releases/2.10.0/release_notes.html On Thu, 25 Mar 2021 at 15:59, Maksim Timonin <timonin.ma...@gmail.com> wrote: > > I've moved indexes from the indexing module to the core module, but I did > not move H2Mvcc*IO classes that are responsible for storing MVCC data in > indexes. Also for other indexes code I've skipped some blocks with > if-condition that checks if cache is MVCC or not. > > Actually, there isn't so much code to back if we decide to not drop MVCC > support for indexes right now. But maybe it is better to implement a > checker that checks that there are still MVCC indexes and fails to start > with a link on a migration doc? > > > > On Thu, Mar 25, 2021 at 3:13 PM Alexei Scherbakov < > alexey.scherbak...@gmail.com> wrote: > > > Maksim, > > > > It seems to me from the description "Patch completely breaks MVCC" the > > proposed patch should be postponed until at least the public API for > > MVCC will be removed. > > > > Or can you clarify the impact of the patch ? Does the existing MVCC > > functionality will remain unbroken ? > > > > > > чт, 25 мар. 2021 г. в 14:52, Andrey Mashenkov <andrey.mashen...@gmail.com > > >: > > > > > Hi Maksim, > > > > > > Do you mean MVCC will not work at all or MVCC will not support indices > > > after your changes? > > > Anyway, this looks like a major change and may be too harmful for the > > minor > > > version (10.1). > > > > > > Before break MVCC index (or MVCC mode) we should force the user first to > > > drop all MVCC indices (or even MVCC caches) before switching to the > > version > > > with a fix. > > > The migration process should be well-documented as well. > > > > > > I believe a user should be able to migrate to the new Ignite version with > > > exited persistence with no issues. E.g. > > > * Ignite shouldn't start if existed persistence has a MVCC index (cache) > > > and maybe other internal persistent MVCC structures. > > > * Even if the user dropped all MVCC indices/caches before the upgrade, > > > probably there can be an incomplete checkpoint and there are WAL records > > > related to MVCC in WAL that should be correctly processed. > > > > > > > > > > > > > > > On Thu, Mar 25, 2021 at 1:27 PM Maksim Timonin <timonin.ma...@gmail.com> > > > wrote: > > > > > > > Hi, Igniters! > > > > > > > > the MVCC feature marked as IgniteExperimental and this annotation is > > more > > > > weaker than deprecated. So we can remove this functionality in any > > > moment. > > > > So I propose: > > > > 1. Now I leave all affected tests marked as ignored. > > > > 2. Create a ticket for removing TRANSACTIONAL_SNAPSHOT from > > > > CacheAtomicityMode for a future minor release 10.1. > > > > 3. There is a ticket for removing all MVCC code [1]. So we can finish > > it > > > in > > > > any release for future. > > > > > > > > [1] https://issues.apache.org/jira/browse/IGNITE-13871 > > > > > > > > WDYT? > > > > > > > > > > > > On Mon, Mar 15, 2021 at 9:58 PM Maksim Timonin < > > timonin.ma...@gmail.com> > > > > wrote: > > > > > > > > > Hi, Igniters! > > > > > > > > > > I'm working on a feature (moving indexes to the core module) and skip > > > > > specific implementation for MVCC as it is considered deprecated (the > > > vote > > > > > result [1]). Am I right that now there is no need to support MVCC? > > Then > > > > > there are a lot of tests (both Java, C++) that fail because they run > > > with > > > > > TRANSACTIONAL_SNAPSHOT atomicity mode. > > > > > > > > > > There are 2 cases: > > > > > 1. MVCC mode is just a parameter of a test. I just removed it from a > > > > > parameters list; > > > > > 2. There are tests that run only for MVCC. I marked them with the > > > @Ignore > > > > > annotation. > > > > > > > > > > But would it better just completely remove all such tests that are > > > broken > > > > > by the patch? > > > > > > > > > > [1] > > > > > > > > > > > > > > http://apache-ignite-developers.2346864.n4.nabble.com/RESULT-VOTE-Removing-MVCC-public-API-td50705.html#a50706 > > > > > > > > > > > > > > > > > > -- > > > Best regards, > > > Andrey V. Mashenkov > > > > > > > > > -- > > > > Best regards, > > Alexei Scherbakov > >