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
Remove query-cache serialization optimization. #9500
Conversation
The query-cache has an optimization to not deserialize the bytes at the shard level. However this is a bit fragile since it assumes that serialized streams can be concatenanted (which is not the case with shared strings) and also does not update the QueryResult object that is held by the SearchContext. So you need to make sure to use the right one. With this change, the query cache just deserializes bytes into the QueryResult object from the context.
LGTM |
For the record, you had to be quite unlucky to hit this bug since it only occurs with shared strings, which only seem to be used when using non-default time zones with date aggregations. |
LOL awesome now I know why I hit it first :) |
The query-cache has an optimization to not deserialize the bytes at the shard level. However this is a bit fragile since it assumes that serialized streams can be concatenanted (which is not the case with shared strings) and also does not update the QueryResult object that is held by the SearchContext. So you need to make sure to use the right one. With this change, the query cache just deserializes bytes into the QueryResult object from the context. Close #9500
The query-cache has an optimization to not deserialize the bytes at the shard level. However this is a bit fragile since it assumes that serialized streams can be concatenanted (which is not the case with shared strings) and also does not update the QueryResult object that is held by the SearchContext. So you need to make sure to use the right one. With this change, the query cache just deserializes bytes into the QueryResult object from the context. Close #9500
The query-cache has an optimization to not deserialize the bytes at the shard level. However this is a bit fragile since it assumes that serialized streams can be concatenanted (which is not the case with shared strings) and also does not update the QueryResult object that is held by the SearchContext. So you need to make sure to use the right one. With this change, the query cache just deserializes bytes into the QueryResult object from the context. Close elastic#9500
The query-cache has an optimization to not deserialize the bytes at the shard
level. However this is a bit fragile since it assumes that serialized streams
can be concatenated (which is not the case with shared strings) and also does
not update the QueryResult object that is held by the SearchContext. So you
need to make sure to use the right one.
With this change, the query cache just deserializes bytes into the QueryResult
object from the context.
Closes #9294