[DISCUSS] Extra test coverage for ACTIVE_READ_ONLY cluster state

classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

[DISCUSS] Extra test coverage for ACTIVE_READ_ONLY cluster state

antonovsergey93
Hello, Igniters.

I introduced cluster read-only mode [1] and a new API for cluster state
change [2]. At the moment we don't have good test coverage for this
feature. I'm going to fix it and write tests and check that operations
are *denied
*in read-only mode:

   - data structures usage
   - cache create/clear/destroy
   - DDL requests
   - cache updates by task's execution / deployed service

And the following operations are *allowed *in read-only mode:

   - update of metastorage / distributed metastorage
   - updates to ignite-sys-cache
   - task's execution, but updates must be rejected
   - service deploy/undeploy, but updates must be rejected
   - data recovery on node join

I'll work under these tests in ticket [3].
Any objections?

[1] https://issues.apache.org/jira/browse/IGNITE-11256
[2] https://issues.apache.org/jira/browse/IGNITE-12225
[3] https://issues.apache.org/jira/browse/IGNITE-13071
--
BR, Sergey Antonov
Reply | Threaded
Open this post in threaded view
|

Re: [DISCUSS] Extra test coverage for ACTIVE_READ_ONLY cluster state

Maxim Muzafarov
Sergey,

Sounds good!
Should we consider removing the deprecated methods `active()`,
`active(boolean active)` from tests also?

On Tue, 26 May 2020 at 12:18, Sergey Antonov <[hidden email]> wrote:

>
> Hello, Igniters.
>
> I introduced cluster read-only mode [1] and a new API for cluster state
> change [2]. At the moment we don't have good test coverage for this
> feature. I'm going to fix it and write tests and check that operations
> are *denied
> *in read-only mode:
>
>    - data structures usage
>    - cache create/clear/destroy
>    - DDL requests
>    - cache updates by task's execution / deployed service
>
> And the following operations are *allowed *in read-only mode:
>
>    - update of metastorage / distributed metastorage
>    - updates to ignite-sys-cache
>    - task's execution, but updates must be rejected
>    - service deploy/undeploy, but updates must be rejected
>    - data recovery on node join
>
> I'll work under these tests in ticket [3].
> Any objections?
>
> [1] https://issues.apache.org/jira/browse/IGNITE-11256
> [2] https://issues.apache.org/jira/browse/IGNITE-12225
> [3] https://issues.apache.org/jira/browse/IGNITE-13071
> --
> BR, Sergey Antonov
Reply | Threaded
Open this post in threaded view
|

Re: [DISCUSS] Extra test coverage for ACTIVE_READ_ONLY cluster state

antonovsergey93
Maxim, I'd prefer to do this with a separate ticket.

вт, 26 мая 2020 г. в 19:59, Maxim Muzafarov <[hidden email]>:

> Sergey,
>
> Sounds good!
> Should we consider removing the deprecated methods `active()`,
> `active(boolean active)` from tests also?
>
> On Tue, 26 May 2020 at 12:18, Sergey Antonov <[hidden email]>
> wrote:
> >
> > Hello, Igniters.
> >
> > I introduced cluster read-only mode [1] and a new API for cluster state
> > change [2]. At the moment we don't have good test coverage for this
> > feature. I'm going to fix it and write tests and check that operations
> > are *denied
> > *in read-only mode:
> >
> >    - data structures usage
> >    - cache create/clear/destroy
> >    - DDL requests
> >    - cache updates by task's execution / deployed service
> >
> > And the following operations are *allowed *in read-only mode:
> >
> >    - update of metastorage / distributed metastorage
> >    - updates to ignite-sys-cache
> >    - task's execution, but updates must be rejected
> >    - service deploy/undeploy, but updates must be rejected
> >    - data recovery on node join
> >
> > I'll work under these tests in ticket [3].
> > Any objections?
> >
> > [1] https://issues.apache.org/jira/browse/IGNITE-11256
> > [2] https://issues.apache.org/jira/browse/IGNITE-12225
> > [3] https://issues.apache.org/jira/browse/IGNITE-13071
> > --
> > BR, Sergey Antonov
>


--
BR, Sergey Antonov
Reply | Threaded
Open this post in threaded view
|

Re: [DISCUSS] Extra test coverage for ACTIVE_READ_ONLY cluster state

antonovsergey93
Maxim, I've created a ticket [1] for this change.

[1] https://issues.apache.org/jira/browse/IGNITE-13079

вт, 26 мая 2020 г. в 20:09, Sergey Antonov <[hidden email]>:

> Maxim, I'd prefer to do this with a separate ticket.
>
> вт, 26 мая 2020 г. в 19:59, Maxim Muzafarov <[hidden email]>:
>
>> Sergey,
>>
>> Sounds good!
>> Should we consider removing the deprecated methods `active()`,
>> `active(boolean active)` from tests also?
>>
>> On Tue, 26 May 2020 at 12:18, Sergey Antonov <[hidden email]>
>> wrote:
>> >
>> > Hello, Igniters.
>> >
>> > I introduced cluster read-only mode [1] and a new API for cluster state
>> > change [2]. At the moment we don't have good test coverage for this
>> > feature. I'm going to fix it and write tests and check that operations
>> > are *denied
>> > *in read-only mode:
>> >
>> >    - data structures usage
>> >    - cache create/clear/destroy
>> >    - DDL requests
>> >    - cache updates by task's execution / deployed service
>> >
>> > And the following operations are *allowed *in read-only mode:
>> >
>> >    - update of metastorage / distributed metastorage
>> >    - updates to ignite-sys-cache
>> >    - task's execution, but updates must be rejected
>> >    - service deploy/undeploy, but updates must be rejected
>> >    - data recovery on node join
>> >
>> > I'll work under these tests in ticket [3].
>> > Any objections?
>> >
>> > [1] https://issues.apache.org/jira/browse/IGNITE-11256
>> > [2] https://issues.apache.org/jira/browse/IGNITE-12225
>> > [3] https://issues.apache.org/jira/browse/IGNITE-13071
>> > --
>> > BR, Sergey Antonov
>>
>
>
> --
> BR, Sergey Antonov
>


--
BR, Sergey Antonov
Reply | Threaded
Open this post in threaded view
|

Re: [DISCUSS] Extra test coverage for ACTIVE_READ_ONLY cluster state

antonovsergey93
Igniters, I faced several problems during write tests for the read-only
mode:

   1. You can create/destroy cache on the read-only cluster. Fixed in [1].
   2. The read-only mode doesn't affect LOCAL caches. Ticket created [2].
   3. IgniteCache#isClosed() doesn't work on server nodes. Ticket created
   [3].

Also, I wrote tests for:

   1. IgniteCache API (including create(), destroy(), invoke())
   2. Near caches.
   3. 3rd party CacheStore.
   4. Services (deploy, execution, cancel)
   5. Datastructures (IgniteAtomicLong, IgniteAtomicReference,
   IgniteAtomicSequence, IgniteAtomicStamped, IgniteCountDownLatch,
   IgniteQueue, IgniteSet)
   6. Updates to meta storage.

The patch [4] ready for review.

[1] https://issues.apache.org/jira/browse/IGNITE-13071
[2] https://issues.apache.org/jira/browse/IGNITE-13076
[3] https://issues.apache.org/jira/browse/IGNITE-13102
[4] https://github.com/apache/ignite/pull/7853/files


вт, 26 мая 2020 г. в 20:28, Sergey Antonov <[hidden email]>:

> Maxim, I've created a ticket [1] for this change.
>
> [1] https://issues.apache.org/jira/browse/IGNITE-13079
>
> вт, 26 мая 2020 г. в 20:09, Sergey Antonov <[hidden email]>:
>
>> Maxim, I'd prefer to do this with a separate ticket.
>>
>> вт, 26 мая 2020 г. в 19:59, Maxim Muzafarov <[hidden email]>:
>>
>>> Sergey,
>>>
>>> Sounds good!
>>> Should we consider removing the deprecated methods `active()`,
>>> `active(boolean active)` from tests also?
>>>
>>> On Tue, 26 May 2020 at 12:18, Sergey Antonov <[hidden email]>
>>> wrote:
>>> >
>>> > Hello, Igniters.
>>> >
>>> > I introduced cluster read-only mode [1] and a new API for cluster state
>>> > change [2]. At the moment we don't have good test coverage for this
>>> > feature. I'm going to fix it and write tests and check that operations
>>> > are *denied
>>> > *in read-only mode:
>>> >
>>> >    - data structures usage
>>> >    - cache create/clear/destroy
>>> >    - DDL requests
>>> >    - cache updates by task's execution / deployed service
>>> >
>>> > And the following operations are *allowed *in read-only mode:
>>> >
>>> >    - update of metastorage / distributed metastorage
>>> >    - updates to ignite-sys-cache
>>> >    - task's execution, but updates must be rejected
>>> >    - service deploy/undeploy, but updates must be rejected
>>> >    - data recovery on node join
>>> >
>>> > I'll work under these tests in ticket [3].
>>> > Any objections?
>>> >
>>> > [1] https://issues.apache.org/jira/browse/IGNITE-11256
>>> > [2] https://issues.apache.org/jira/browse/IGNITE-12225
>>> > [3] https://issues.apache.org/jira/browse/IGNITE-13071
>>> > --
>>> > BR, Sergey Antonov
>>>
>>
>>
>> --
>> BR, Sergey Antonov
>>
>
>
> --
> BR, Sergey Antonov
>


--
BR, Sergey Antonov
Reply | Threaded
Open this post in threaded view
|

Re[2]: [DISCUSS] Extra test coverage for ACTIVE_READ_ONLY cluster state

Zhenya Stanilovsky

Sergey, changes looks good to me.

 

>Четверг, 4 июня 2020, 12:39 +03:00 от Sergey Antonov <[hidden email]>:

>Igniters, I faced several problems during write tests for the read-only
>mode:
>
>   1. You can create/destroy cache on the read-only cluster. Fixed in [1].
>   2. The read-only mode doesn't affect LOCAL caches. Ticket created [2].
>   3. IgniteCache#isClosed() doesn't work on server nodes. Ticket created
>   [3].
>
>Also, I wrote tests for:
>
>   1. IgniteCache API (including create(), destroy(), invoke())
>   2. Near caches.
>   3. 3rd party CacheStore.
>   4. Services (deploy, execution, cancel)
>   5. Datastructures (IgniteAtomicLong, IgniteAtomicReference,
>   IgniteAtomicSequence, IgniteAtomicStamped, IgniteCountDownLatch,
>   IgniteQueue, IgniteSet)
>   6. Updates to meta storage.
>
>The patch [4] ready for review.
>
>[1]  https://issues.apache.org/jira/browse/IGNITE-13071
>[2]  https://issues.apache.org/jira/browse/IGNITE-13076
>[3]  https://issues.apache.org/jira/browse/IGNITE-13102
>[4]  https://github.com/apache/ignite/pull/7853/files
>
>
>вт, 26 мая 2020 г. в 20:28, Sergey Antonov < [hidden email] >:

>> Maxim, I've created a ticket [1] for this change.
>>
>> [1]  https://issues.apache.org/jira/browse/IGNITE-13079
>>
>> вт, 26 мая 2020 г. в 20:09, Sergey Antonov < [hidden email] >:
>>
>>> Maxim, I'd prefer to do this with a separate ticket.
>>>
>>> вт, 26 мая 2020 г. в 19:59, Maxim Muzafarov < [hidden email] >:
>>>
>>>> Sergey,
>>>>
>>>> Sounds good!
>>>> Should we consider removing the deprecated methods `active()`,
>>>> `active(boolean active)` from tests also?
>>>>
>>>> On Tue, 26 May 2020 at 12:18, Sergey Antonov < [hidden email] >
>>>> wrote:
>>>> >
>>>> > Hello, Igniters.
>>>> >
>>>> > I introduced cluster read-only mode [1] and a new API for cluster state
>>>> > change [2]. At the moment we don't have good test coverage for this
>>>> > feature. I'm going to fix it and write tests and check that operations
>>>> > are *denied
>>>> > *in read-only mode:
>>>> >
>>>> > - data structures usage
>>>> > - cache create/clear/destroy
>>>> > - DDL requests
>>>> > - cache updates by task's execution / deployed service
>>>> >
>>>> > And the following operations are *allowed *in read-only mode:
>>>> >
>>>> > - update of metastorage / distributed metastorage
>>>> > - updates to ignite-sys-cache
>>>> > - task's execution, but updates must be rejected
>>>> > - service deploy/undeploy, but updates must be rejected
>>>> > - data recovery on node join
>>>> >
>>>> > I'll work under these tests in ticket [3].
>>>> > Any objections?
>>>> >
>>>> > [1]  https://issues.apache.org/jira/browse/IGNITE-11256
>>>> > [2]  https://issues.apache.org/jira/browse/IGNITE-12225
>>>> > [3]  https://issues.apache.org/jira/browse/IGNITE-13071
>>>> > --
>>>> > BR, Sergey Antonov
>>>>
>>>
>>>
>>> --
>>> BR, Sergey Antonov
>>>
>>
>>
>> --
>> BR, Sergey Antonov
>>
>
>--
>BR, Sergey Antonov