You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ignite.apache.org by Anton Kalashnikov <ka...@yandex.ru> on 2020/06/19 13:59:53 UTC
Checkpoint refactoring(part of IEP-47)
Hi Igniters,
IEP-47(Native persistence defragmentation) contains a part that implies refactoring of checkpoint(with the goal of reusing this feature in defragmentation).
I just to want to emphasize this part(refactoring) here and share my view to implementation
I want to split this job to at least 2(but maybe 3) separated tasks:
1. Extracting checkpoint related classes from GridCacheDatabaseSharedManager(ex. Checkpoint, Checkpointer, WriteCheckpointPages, etc.) - https://issues.apache.org/jira/browse/IGNITE-13151(almost done)
2. Simplifying result code - I don't sure it is possible, but right now I see some code which on the first eye has duplication and redundancy
3. Reorganizing code - There is a lot of work which Checkpointer do right now, I believe at least this class should be split.
Perhaps, 2 and 3 items will be done in one ticket.
I believe you understand that I suggested several tickets instead of one in the target of simplification of review and find bugs.
Any objections?
--
Best regards,
Anton Kalashnikov
Re: Checkpoint refactoring(part of IEP-47)
Posted by Anton Kalashnikov <ka...@yandex.ru>.
Hello,
I have finished the last checkpoint refactoring ticket(https://issues.apache.org/jira/browse/IGNITE-13207).
In general, there are several new classes were created(it mostly extracted from GridDatabaseSharedManager). More detailed description you can find on the ticket.
If somebody interested then they can take a look at pull-request and maybe suggest different class segregation.
--
Best regards,
Anton Kalashnikov
22.06.2020, 11:52, "Anton Kalashnikov" <ka...@yandex.ru>:
> In fact, It is also one of my targets. I believe it will be possible when checkpoint's classes will be restructured to smaller classes with more clear responsibilities. So if everything goes good we can do it after step 3 which I described above.
>
> --
> Best regards,
> Anton Kalashnikov
>
> 19.06.2020, 17:28, "Ivan Pavlukhin" <vo...@gmail.com>:
>> Hi Anton,
>>
>> A side question. Do you feel that it is possible to cover extracted
>> classes with unit tests (I mean unit tests which do not start Ignite
>> nodes)?
>>
>> 2020-06-19 16:59 GMT+03:00, Anton Kalashnikov <ka...@yandex.ru>:
>>> Hi Igniters,
>>>
>>> IEP-47(Native persistence defragmentation) contains a part that implies
>>> refactoring of checkpoint(with the goal of reusing this feature in
>>> defragmentation).
>>>
>>> I just to want to emphasize this part(refactoring) here and share my view to
>>> implementation
>>> I want to split this job to at least 2(but maybe 3) separated tasks:
>>> 1. Extracting checkpoint related classes from
>>> GridCacheDatabaseSharedManager(ex. Checkpoint, Checkpointer,
>>> WriteCheckpointPages, etc.) -
>>> https://issues.apache.org/jira/browse/IGNITE-13151(almost done)
>>> 2. Simplifying result code - I don't sure it is possible, but right now I
>>> see some code which on the first eye has duplication and redundancy
>>> 3. Reorganizing code - There is a lot of work which Checkpointer do right
>>> now, I believe at least this class should be split.
>>>
>>> Perhaps, 2 and 3 items will be done in one ticket.
>>> I believe you understand that I suggested several tickets instead of one in
>>> the target of simplification of review and find bugs.
>>>
>>> Any objections?
>>>
>>> --
>>> Best regards,
>>> Anton Kalashnikov
>>
>> --
>>
>> Best regards,
>> Ivan Pavlukhin
Re: Checkpoint refactoring(part of IEP-47)
Posted by Anton Kalashnikov <ka...@yandex.ru>.
In fact, It is also one of my targets. I believe it will be possible when checkpoint's classes will be restructured to smaller classes with more clear responsibilities. So if everything goes good we can do it after step 3 which I described above.
--
Best regards,
Anton Kalashnikov
19.06.2020, 17:28, "Ivan Pavlukhin" <vo...@gmail.com>:
> Hi Anton,
>
> A side question. Do you feel that it is possible to cover extracted
> classes with unit tests (I mean unit tests which do not start Ignite
> nodes)?
>
> 2020-06-19 16:59 GMT+03:00, Anton Kalashnikov <ka...@yandex.ru>:
>> Hi Igniters,
>>
>> IEP-47(Native persistence defragmentation) contains a part that implies
>> refactoring of checkpoint(with the goal of reusing this feature in
>> defragmentation).
>>
>> I just to want to emphasize this part(refactoring) here and share my view to
>> implementation
>> I want to split this job to at least 2(but maybe 3) separated tasks:
>> 1. Extracting checkpoint related classes from
>> GridCacheDatabaseSharedManager(ex. Checkpoint, Checkpointer,
>> WriteCheckpointPages, etc.) -
>> https://issues.apache.org/jira/browse/IGNITE-13151(almost done)
>> 2. Simplifying result code - I don't sure it is possible, but right now I
>> see some code which on the first eye has duplication and redundancy
>> 3. Reorganizing code - There is a lot of work which Checkpointer do right
>> now, I believe at least this class should be split.
>>
>> Perhaps, 2 and 3 items will be done in one ticket.
>> I believe you understand that I suggested several tickets instead of one in
>> the target of simplification of review and find bugs.
>>
>> Any objections?
>>
>> --
>> Best regards,
>> Anton Kalashnikov
>
> --
>
> Best regards,
> Ivan Pavlukhin
Re: Checkpoint refactoring(part of IEP-47)
Posted by Ivan Pavlukhin <vo...@gmail.com>.
Hi Anton,
A side question. Do you feel that it is possible to cover extracted
classes with unit tests (I mean unit tests which do not start Ignite
nodes)?
2020-06-19 16:59 GMT+03:00, Anton Kalashnikov <ka...@yandex.ru>:
> Hi Igniters,
>
> IEP-47(Native persistence defragmentation) contains a part that implies
> refactoring of checkpoint(with the goal of reusing this feature in
> defragmentation).
>
> I just to want to emphasize this part(refactoring) here and share my view to
> implementation
> I want to split this job to at least 2(but maybe 3) separated tasks:
> 1. Extracting checkpoint related classes from
> GridCacheDatabaseSharedManager(ex. Checkpoint, Checkpointer,
> WriteCheckpointPages, etc.) -
> https://issues.apache.org/jira/browse/IGNITE-13151(almost done)
> 2. Simplifying result code - I don't sure it is possible, but right now I
> see some code which on the first eye has duplication and redundancy
> 3. Reorganizing code - There is a lot of work which Checkpointer do right
> now, I believe at least this class should be split.
>
> Perhaps, 2 and 3 items will be done in one ticket.
> I believe you understand that I suggested several tickets instead of one in
> the target of simplification of review and find bugs.
>
> Any objections?
>
> --
> Best regards,
> Anton Kalashnikov
>
>
--
Best regards,
Ivan Pavlukhin