esevastyanov commented on a change in pull request #8157: Enum of
ResponseContext keys
URL: https://github.com/apache/incubator-druid/pull/8157#discussion_r307905543
##########
File path: server/src/main/java/org/apache/druid/server/QueryResource.java
##########
@@ -252,24 +252,30 @@ public void write(OutputStream outputStream) throws
WebApplicationException
)
.header("X-Druid-Query-Id", queryId);
- if (responseContext.get(ResponseContext.CTX_ETAG) != null) {
- builder.header(HEADER_ETAG,
responseContext.get(ResponseContext.CTX_ETAG));
- responseContext.remove(ResponseContext.CTX_ETAG);
+ if (responseContext.get(ResponseContext.Key.ETAG) != null) {
+ builder.header(HEADER_ETAG,
responseContext.get(ResponseContext.Key.ETAG));
+ responseContext.remove(ResponseContext.Key.ETAG);
}
DirectDruidClient.removeMagicResponseContextFields(responseContext);
//Limit the response-context header, see
https://github.com/apache/incubator-druid/issues/2331
//Note that Response.ResponseBuilder.header(String key,Object
value).build() calls value.toString()
//and encodes the string using ASCII, so 1 char is = 1 byte
- String responseCtxString = responseContext.serializeWith(jsonMapper);
- if (responseCtxString.length() > RESPONSE_CTX_HEADER_LEN_LIMIT) {
- log.warn("Response Context truncated for id [%s] . Full context is
[%s].", queryId, responseCtxString);
- responseCtxString = responseCtxString.substring(0,
RESPONSE_CTX_HEADER_LEN_LIMIT);
+ final ResponseContext.SerializationResult serializationResult =
responseContext.serializeWith(
+ jsonMapper,
+ RESPONSE_CTX_HEADER_LEN_LIMIT
+ );
+ if (serializationResult.isReduced()) {
+ log.warn(
Review comment:
I'm not sure about that, even left the log message as is although the
context is not truncated anymore but "reduced". According to the [corresponding
PR discussion](https://github.com/apache/incubator-druid/pull/2336), it was
important to have a log message with full context, it's likely someone has a
filter in a log aggregator for this kind of message.
BTW I see your point and started discussion to only mention backward
compatibility for log filters.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
With regards,
Apache Git Services
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]