Skip to content
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

Upgrade to msgpack 2.1.1 #12

Merged
merged 1 commit into from
Oct 23, 2023
Merged

Upgrade to msgpack 2.1.1 #12

merged 1 commit into from
Oct 23, 2023

Conversation

swenson
Copy link
Contributor

@swenson swenson commented Oct 19, 2023

Probably not necessary, but it's out of an abundance of caution while we're upgrading everything else.

Probably not necessary, but it's out of an abundance of caution
while we're upgrading everything else.
@swenson
Copy link
Contributor Author

swenson commented Oct 23, 2023

Thanks!

@swenson swenson merged commit 3aed043 into master Oct 23, 2023
@swenson swenson deleted the vault-19781/msgpack-upgrade branch October 23, 2023 16:37
swenson pushed a commit to hashicorp/nomad that referenced this pull request Oct 25, 2023
And set the `time.Time` option to use the go-msgpack-1.1.5-compatible
encoding in all the places, since that is the (now previous) version
in `go.mod`.

v2 2.1.1 was specifically designe to honor backwards compatibility
with 1.1.5 and 0.5.5, and to clean up the code base to be more
maintainable. There may performance lost with the 1.1.5 to 2.1.1
migration since the fastpath code was removed, but the increased safety
is probably worth it. See
[the release notes for go-msgkack 2.1.0](https://github.com/hashicorp/go-msgpack/releases/tag/v2.1.0)
for more details.

I tested this by running this code, and booting up a cluster with
a node also running the prior version of Nomad (before the upgrade).
Before I made the changes to set the right `time.Time` option, the
previous-version node would throw a bunch of time-decoding errors.
After fixing the option, the node came up smoothly, even after
changing leadership between them.

This relies on
- [ ] hashicorp/serf#705
- [ ] hashicorp/raft-boltdb#38
- [ ] hashicorp/raft#577
- [ ] hashicorp/memberlist#292

and maybe
- [ ] hashicorp/net-rpc-msgpackrpc#12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants