-
Notifications
You must be signed in to change notification settings - Fork 8.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
FAB 18365 IT flake evictionsuspector failed to read eviction #2780
Conversation
if lastConfigBlock.Header.Number+1 <= height { | ||
es.logger.Infof("Our height is higher or equal than the height of the orderer we pulled the last block from, aborting.") | ||
return | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
} | |
} else { | |
es.logger.Infof("Chain has been halted, pulling remaining blocks up to (and including) eviction block.") | |
} |
@@ -139,6 +132,12 @@ func (es *evictionSuspector) confirmSuspicion(cumulativeSuspicion time.Duration) | |||
es.halted = true | |||
es.logger.Infof("Chain has been halted, pulling remaining blocks up to (and including) eviction block.") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
es.logger.Infof("Chain has been halted, pulling remaining blocks up to (and including) eviction block.") |
Please move this:
To an else case of the if clause you moved, otherwise this is confusing - it says it is pulling the remaining blocks and then changes its mind about it later on. |
after committing config block in orderer but before applying it raft. Signed-off-by: Parameswaran Selvam <[email protected]>
Yes, I moved it down now. |
@@ -194,6 +186,15 @@ func TestEvictionSuspector(t *testing.T) { | |||
height: 9, | |||
halt: t.Fail, | |||
}, | |||
{ | |||
description: "our height is the highest", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit - this description probably should be updated to reflect actual semantics
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
should this be back-ported to 1.4? (which i know is now EOL, but i saw commits are still being added to it...)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think this is important. You can get by without this fix.
/ci-run |
Description
In failing case, the OSN being removed has committed the config change but failed to receive apply_config msg to halt the chain. This state is defined to be handled as part of the eviction suspicion logic. But it failed when evictionsuspector failed to check from lastconfig block if chain is up-to-date.
Fix: Updated the order of statements which looks at the latest config block and block height validation.
Type of change
Signed-off-by: Parameswaran Selvam [email protected]