[
https://issues.apache.org/jira/browse/ROCKETMQ-206?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16038054#comment-16038054
]
ASF subversion and git services commented on ROCKETMQ-206:
----------------------------------------------------------
Commit 3292d039ae882f42168d5f98969df83130ca05fb in incubator-rocketmq's branch
refs/heads/master from [~Yukon]
[ https://git-wip-us.apache.org/repos/asf?p=incubator-rocketmq.git;h=3292d03 ]
[ROCKETMQ-206] Catch the IOException when call the file2String method.
> Load JSON config file error if non-1byte character exists
> ---------------------------------------------------------
>
> Key: ROCKETMQ-206
> URL: https://issues.apache.org/jira/browse/ROCKETMQ-206
> Project: Apache RocketMQ
> Issue Type: Bug
> Components: rocketmq-commons
> Affects Versions: 4.0.0-incubating
> Reporter: yukon
> Assignee: yukon
> Fix For: 4.1.0-incubating
>
>
> If there are some non-1byte character in consumeroffset.json or other config
> files, when Broker restarted, the file contents will be ignored.
> See this method, when file.length() != character number, bug triggered.
> {code}
> public static String file2String(final File file) {
> if (file.exists()) {
> char[] data = new char[(int) file.length()];
> boolean result = false;
> FileReader fileReader = null;
> try {
> fileReader = new FileReader(file);
> int len = fileReader.read(data);
> result = len == data.length;
> } catch (IOException e) {
> // e.printStackTrace();
> } finally {
> if (fileReader != null) {
> try {
> fileReader.close();
> } catch (IOException e) {
> e.printStackTrace();
> }
> }
> }
> if (result) {
> return new String(data);
> }
> }
> return null;
> }
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)