[ 
https://issues.apache.org/jira/browse/IGNITE-8957?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16540078#comment-16540078
 ] 

Anton Kalashnikov commented on IGNITE-8957:
-------------------------------------------

[~andmed], I reviewed your changes and I have a question. Actually I have 
question to original task. Are we really need to print all segments? I mean, 
now we printing all of segments between this checkpoint and previous 
checkpoint, also we print nothing if they contained in one segment. But I think 
that printing number of segment for current checkpoint is enough for resolved 
original problem. In any case, even printing only first and last segments 
instead of printing all segments will be enough because segments are continuous.
I talked about it with [~agoncharuk](author of original task) and he is agree 
about my proposal.

 

Any way, if you will decide not to change anything, can you check your solution 
when two checkpoints in one segment.

 

> testFailGetLock() constantly fails. Last entry checkpoint history can be empty
> ------------------------------------------------------------------------------
>
>                 Key: IGNITE-8957
>                 URL: https://issues.apache.org/jira/browse/IGNITE-8957
>             Project: Ignite
>          Issue Type: Bug
>          Components: persistence
>    Affects Versions: 2.7
>            Reporter: Maxim Muzafarov
>            Assignee: Andrew Medvedev
>            Priority: Major
>              Labels: MakeTeamcityGreenAgain
>
> IgniteChangeGlobalStateTest#testFailGetLock constantly fails with exception:
> {code}
> java.lang.AssertionError
>       at 
> org.apache.ignite.internal.processors.cache.persistence.checkpoint.CheckpointHistory.onCheckpointFinished(CheckpointHistory.java:205)
>       at 
> org.apache.ignite.internal.processors.cache.persistence.GridCacheDatabaseSharedManager$Checkpointer.markCheckpointEnd(GridCacheDatabaseSharedManager.java:3654)
>       at 
> org.apache.ignite.internal.processors.cache.persistence.GridCacheDatabaseSharedManager$Checkpointer.doCheckpoint(GridCacheDatabaseSharedManager.java:3178)
>       at 
> org.apache.ignite.internal.processors.cache.persistence.GridCacheDatabaseSharedManager$Checkpointer.body(GridCacheDatabaseSharedManager.java:2953)
>       at 
> org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:110)
>       at java.lang.Thread.run(Thread.java:748)
> {code}
> As Sergey Chugunov 
> [mentioned|https://issues.apache.org/jira/browse/IGNITE-8737?focusedCommentId=16535062&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-16535062],
>  issue can be solved different ways:
> {quote}
> It seems we missed a case when lastEntry may be empty. We may choose here 
> from two options:
> * Check if histMap is empty inside onCheckpointFinished. If it is just don't 
> log anything (it was the very first checkpoint).
> * Check in caller that there is no history, calculate necessary index in 
> caller and pass it to onCheckpointFinished to prepare correct log 
> message.{quote}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to