Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Kwan的解忧杂货铺@新空间代码工作室
Rocketmq
提交
0b600484
R
Rocketmq
项目概览
Kwan的解忧杂货铺@新空间代码工作室
/
Rocketmq
与 Fork 源项目一致
Fork自
Apache RocketMQ / Rocketmq
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
R
Rocketmq
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
未验证
提交
0b600484
编写于
11月 12, 2020
作者:
张
张哈希
提交者:
GitHub
11月 12, 2020
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
[ISSUE #2421] Fix SelectMessageQueueByHash in case hashcode is Integer.MIN
上级
872f37d9
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
9 addition
and
3 deletion
+9
-3
client/src/main/java/org/apache/rocketmq/client/producer/selector/SelectMessageQueueByHash.java
...mq/client/producer/selector/SelectMessageQueueByHash.java
+1
-3
client/src/test/java/org/apache/rocketmq/client/producer/selector/SelectMessageQueueByHashTest.java
...lient/producer/selector/SelectMessageQueueByHashTest.java
+8
-0
未找到文件。
client/src/main/java/org/apache/rocketmq/client/producer/selector/SelectMessageQueueByHash.java
浏览文件 @
0b600484
...
...
@@ -25,12 +25,10 @@ public class SelectMessageQueueByHash implements MessageQueueSelector {
@Override
public
MessageQueue
select
(
List
<
MessageQueue
>
mqs
,
Message
msg
,
Object
arg
)
{
int
value
=
arg
.
hashCode
();
int
value
=
arg
.
hashCode
()
%
mqs
.
size
()
;
if
(
value
<
0
)
{
value
=
Math
.
abs
(
value
);
}
value
=
value
%
mqs
.
size
();
return
mqs
.
get
(
value
);
}
}
client/src/test/java/org/apache/rocketmq/client/producer/selector/SelectMessageQueueByHashTest.java
浏览文件 @
0b600484
...
...
@@ -44,6 +44,14 @@ public class SelectMessageQueueByHashTest {
String
anotherOrderId
=
"234"
;
MessageQueue
selected
=
selector
.
select
(
messageQueues
,
message
,
orderId
);
assertThat
(
selector
.
select
(
messageQueues
,
message
,
anotherOrderId
)).
isNotEqualTo
(
selected
);
//No exception is thrown while order Id hashcode is Integer.MIN
anotherOrderId
=
"polygenelubricants"
;
selector
.
select
(
messageQueues
,
message
,
anotherOrderId
);
anotherOrderId
=
"GydZG_"
;
selector
.
select
(
messageQueues
,
message
,
anotherOrderId
);
anotherOrderId
=
"DESIGNING WORKHOUSES"
;
selector
.
select
(
messageQueues
,
message
,
anotherOrderId
);
}
}
\ No newline at end of file
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录