-
Notifications
You must be signed in to change notification settings - Fork 801
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
Store mutable state checksum in SQL storage #5649
Conversation
f6e273e
to
95b34cc
Compare
Could you elaborate on the issue? |
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.
is there a mysql integration test that verifies checksum written/read properly?
if len(newResponse.State.Checksum.Value) == 0 { | ||
newResponse.State.Checksum, err = m.serializer.DeserializeChecksum(response.State.ChecksumData) | ||
if err != nil { | ||
return nil, err |
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.
does the err indicate it's checksum deserialization that failed or will it be just "invalid character etc." kind of error? If so maybe wrap the err with more context
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.
The serializer provides the context.
@@ -635,6 +642,10 @@ func (m *executionManagerImpl) SerializeWorkflowMutation( | |||
if err != nil { | |||
return nil, err | |||
} | |||
checksumData, err := m.serializer.SerializeChecksum(input.Checksum, common.EncodingTypeJSON) | |||
if err != nil { | |||
return nil, err |
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.
same here about err message
Yeah, the checksum is not stored in SQL databases. We have persistence test verifying the storage. But previously, it didn't compare checksum if the checksum read from database is empty. |
What changed?
Store mutable state checksum in SQL storage
Why?
Bug fix
How did you test it?
unit tests & persistence tests
Potential risks
Release notes
Documentation Changes