提交 68ebb780 编写于 作者: S shtykh_roman 提交者: dongeforever

[ROCKETMQ-75] Logging when RemotingCommand header decoding swallows exceptions. closes #51

上级 eaba61ff
......@@ -110,7 +110,8 @@ public class RemotingCommand {
return createResponseCommand(RemotingSysResponseCode.SYSTEM_ERROR, "not set any response code", classHeader);
}
public static RemotingCommand createResponseCommand(int code, String remark, Class<? extends CommandCustomHeader> classHeader) {
public static RemotingCommand createResponseCommand(int code, String remark,
Class<? extends CommandCustomHeader> classHeader) {
RemotingCommand cmd = new RemotingCommand();
cmd.markResponseType();
cmd.setCode(code);
......@@ -230,7 +231,8 @@ public class RemotingCommand {
this.customHeader = customHeader;
}
public CommandCustomHeader decodeCommandCustomHeader(Class<? extends CommandCustomHeader> classHeader) throws RemotingCommandException {
public CommandCustomHeader decodeCommandCustomHeader(
Class<? extends CommandCustomHeader> classHeader) throws RemotingCommandException {
CommandCustomHeader objectHeader;
try {
objectHeader = classHeader.newInstance();
......@@ -279,6 +281,7 @@ public class RemotingCommand {
field.set(objectHeader, valueParsed);
} catch (Throwable e) {
log.error("Failed field [{}] decoding", fieldName, e);
}
}
}
......@@ -384,8 +387,8 @@ public class RemotingCommand {
try {
field.setAccessible(true);
value = field.get(this.customHeader);
} catch (IllegalArgumentException e) {
} catch (IllegalAccessException e) {
} catch (Exception e) {
log.error("Failed to access field [{}]", name, e);
}
if (value != null) {
......@@ -401,7 +404,6 @@ public class RemotingCommand {
return encodeHeader(this.body != null ? this.body.length : 0);
}
public ByteBuffer encodeHeader(final int bodyLength) {
// 1> header length size
int length = 4;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册