Skip to content
This repository has been archived by the owner on Aug 23, 2023. It is now read-only.

msgpack format #768

Closed
DanCech opened this issue Nov 22, 2017 · 3 comments
Closed

msgpack format #768

DanCech opened this issue Nov 22, 2017 · 3 comments

Comments

@DanCech
Copy link
Contributor

DanCech commented Nov 22, 2017

graphite-project/graphite-web#2123 adds support for using msgpack as a transport encoding for intra-cluster find and render requests which is substantially faster than pickle for large results.

It uses the same data structure as the pickle format, except that intervals are encoded as 2-element arrays rather than interval objects (which is actually how MT encodes them in its pickle output anyway), and the mime type application/x-msgpack

We should add support for format=msgpack so we can take advantage of the better performance. For the most part this should just be a matter of using a msgpack encoder instead of pickle and sending the right content-type header, though we will also need to tweak the NaN handling to make sure they are properly encoded as nil values in the msgpack output.

@Dieterbe
Copy link
Contributor

my only remark here is that msgp (currently existing format) vs msgpack is not clear.
would it make sense to call it msgp-graphite instead? (minor point, i don't feel strongly about this. we could also just document it)

@DanCech
Copy link
Contributor Author

DanCech commented Nov 22, 2017

no, graphite sends format=msgpack

@Dieterbe
Copy link
Contributor

Dieterbe commented Jan 4, 2018

fixed by #789

@Dieterbe Dieterbe closed this as completed Jan 4, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants