Commit Graph
484 Commits
Author SHA1 Message Date
dingshuangxi888 f2dd5b06fe [ISSUE #7943] Add bazel config for auth module and fix bazel test (#7944) 2024-03-20 14:38:01 +08:00
dingshuangxi888 1b63e8e198 [ISSUE #7945] Make HAProxyMessageForwarder Scalable (#7946) 2024-03-19 10:34:27 +08:00
dingshuangxi888 e1339ac8a0 [ISSUE #7560] [RIP-68] Support RocketMQ ACL 2.0 (#7725)
[ISSUE #7560] [RIP-68] Support RocketMQ ACL 2.0 (#7725)
2024-03-18 14:07:51 +08:00
Zhouxiang Zhan a33f1d1c72 [ISSUE #7875] Add constructor for ProxyTopicRouteData (#7876) 2024-02-29 17:25:02 +08:00
rongtong f41160210a [maven-release-plugin] prepare for next development iteration (#7828) 2024-02-12 11:07:03 +08:00
rongtong 281a7b32f0 [maven-release-plugin] prepare release rocketmq-all-5.2.0 (#7827) 2024-02-11 17:53:50 +08:00
Zhouxiang Zhan 702bbd2b83 [ISSUE #7803] Add try catch for lock and unlock (#7804)
* Add try catch for lock and unlock
2024-02-04 16:14:40 +08:00
bazeliskyandZhanhui Li af1936d93a [ISSUE #7715] Update Bazel toolchain to make the CI work (#7714)
* Update bazel toolchain

Signed-off-by: Bazelisky <bazelisk@hotmail.com>

* fix a bad test case as it violates requirement of ConcurrentHashMap#computeIfAbsent

Signed-off-by: Bazelisky <bazelisk@hotmail.com>

* Exclude flaky tests from test suite

Signed-off-by: bazelisky <155456828+bazelisky@users.noreply.github.com>

* fix: format issue

Signed-off-by: Zhanhui Li <lizhanhui@gmail.com>

* fix: Remove unused import

* fix deps issue

Signed-off-by: Zhanhui Li <lizhanhui@gmail.com>

* Expose data property of java_test, allowing to specify run_file

Signed-off-by: Zhanhui Li <lizhanhui@gmail.com>

---------

Signed-off-by: Bazelisky <bazelisk@hotmail.com>
Signed-off-by: bazelisky <155456828+bazelisky@users.noreply.github.com>
Signed-off-by: Zhanhui Li <lizhanhui@gmail.com>
Co-authored-by: Zhanhui Li <lizhanhui@gmail.com>
2024-02-01 16:52:55 +08:00
Zhouxiang Zhan 04eec34978 Get namespace from header (#7782) 2024-01-24 20:18:59 +08:00
dingshuangxi888 92e058c823 [ISSUE #7774] Make the handle of ppv2 tlv more extendable (#7775)
* Fix ascii validate for ppv2 tls.
* make the handle of ppv2 tlv extendable.
2024-01-24 09:50:15 +08:00
dingshuangxi888andShuangxiDing 89fdab4d58 [ISSUE #7752] Fix ppv2 tls ascii start with (byte)2 (#7753)
* Fix ascii validate for ppv2 tls.

* fix ppv2 tls ascii check

---------

Co-authored-by: ShuangxiDing <shuangxi.dsx@alibaba-inc.com>
2024-01-15 15:18:45 +08:00
Zhouxiang Zhan b1d8d306a5 [ISSUE #7699] Add namespace v2 in client (#7700)
* Add namespace v2

* Add NamespaceRpcHook

* Refector extends header

* Use Boolean in request header to remove unnecessary encode

* Add unit test

* Add NamespaceRpcHookTest

* Remove GrpcConverter#wrapResourceWithNamespace

* Optimize readability of RpcRequestHeader
2024-01-12 10:46:15 +08:00
Zhouxiang Zhan d2b818d993 Revert "[ISSUE #7707] Refector Context with link node implementation (#7708)" (#7742)
This reverts commit 3f99b1e96b.
2024-01-12 10:24:07 +08:00
Zhouxiang Zhan 8a36471a19 [ISSUE #7543] Add enableRetryTopicV2 brokerConfig (#7734)
* Add enableRetryTopicV2
2024-01-11 11:11:53 +08:00
Zhouxiang Zhan 3f99b1e96b [ISSUE #7707] Refector Context with link node implementation (#7708)
* Refector Context with link node implement
2024-01-09 10:51:26 +08:00
dingshuangxi888andShuangxiDing 4bb4d78f1d [ISSUE #7686] The bornTime is not set when using the popMessage API in cluster mode. (#7687)
* The bornTime is not set when using the popMessage API in cluster mode.

---------

Co-authored-by: ShuangxiDing <shuangxi.dsx@alibaba-inc.com>
2023-12-22 15:55:00 +08:00
YASH PATEL 9dec4cf5fe [ISSUE #7669] map variable delayLevelTable changed to ConcurrentSkipListMap from ConcurrentHashMap (#7675) 2023-12-19 19:47:13 +08:00
Jixiang Jin 651a5ca992 [ISSUE #7562] BugFix for estimating message accumulation correctly (#7563) 2023-11-16 10:16:16 +08:00
Zhanhui Li 15d32db03b [ISSUE #7547] Let consumer be aware of message queue assignment change (#7548)
* let consumer be aware of message queue assignment change

Signed-off-by: Li Zhanhui <lizhanhui@gmail.com>

* add unit test for DefaultMQPushConsumer#setMessageQueueListener

Signed-off-by: Li Zhanhui <lizhanhui@gmail.com>

* fix: bazel build warnings

Signed-off-by: Zhanhui Li <lizhanhui@apache.org>

* fix: set MixCommitlogTest test size as medium

Signed-off-by: Zhanhui Li <lizhanhui@apache.org>

* allow cache bazel test results

Signed-off-by: Li Zhanhui <lizhanhui@gmail.com>

* fix code style issue by removing unused imports

Signed-off-by: Li Zhanhui <lizhanhui@gmail.com>

* fix #7552

Signed-off-by: Zhanhui Li <lizhanhui@apache.org>

---------

Signed-off-by: Li Zhanhui <lizhanhui@gmail.com>
Signed-off-by: Zhanhui Li <lizhanhui@apache.org>
2023-11-13 09:44:25 +08:00
Zhouxiang Zhan 2043dd5034 [ISSUE #7493] Introduce a new event NettyEventType.ACTIVE (#7494)
* [ISSUE #7493] Introduce a new event NettyEventType.ACTIVE for ChannelEventListener

* introduce a new event NettyEventType.ACTIVE,

* implement channelActive interface for NettyRemotingClient#NettyConnectManageHandler

* add onChannelActive for ChannelEventListener interface.

* Move send heartbeat to onChannelActive
2023-10-24 10:29:43 +08:00
weihubeats 3968c186a5 [ISSUE #7231] Fix: proxy client language error (#7200)
* Adding null does not update

* add langeuga code

* add langeuga code

* add langeuga code

* add langeuga code

* add langeuga code

* Rerun ci

* Rerun ci

* Rerun ci

* remove redundant package imports

* redundant line

* modify the parameter passed as proxyContext to language

* format
2023-10-20 14:49:00 +08:00
lk 3808387e13 [ISSUE #7429] clean channel map when CLIENT_UNREGISTER in proxy 2023-10-09 16:07:56 +08:00
Zhouxiang Zhan 84156084a4 [ISSUE #7321] Refector NettyRemotingAbstract with unify future implementation (#7322)
* Refector NettyRemotingAbstract

* Add invoke with future method

* Deprecate InvokeCallback#operationComplete

* Add operationSuccess and operationException for InvokeCallback

* fix unit test

* fix unit test

* Keep InvokeCallback#operationComplete

* Optimize invokeAsyncImpl operationComplete

* Add unit test for NettyRemotingClient

* fix checkstyle
2023-10-08 11:13:25 +08:00
ShuangxiDingand徒钟 4f1b42a7c5 [ISSUE #7410] Handle the Exception when the Proxy requests the client
Co-authored-by: 徒钟 <shuangxi.dsx@alibaba-inc.com>
2023-09-28 16:52:02 +08:00
Zhouxiang Zhan 3fd43353fd [ISSUE #7393] Add timeout configuration for grpc server (#7394)
* Add timeout configuration for grpc server

* Add proxyConfig
2023-09-26 13:53:51 +08:00
lk 73b3fde837 [maven-release-plugin] prepare for next development iteration (#7379) 2023-09-22 10:08:59 +08:00
lk 1a681bdf9b [maven-release-plugin] prepare release rocketmq-all-5.1.4 (#7377) 2023-09-21 19:58:29 +08:00
Jixiang Jin b8610d87bb Replace loggingMetricExporter with OtlpJsonLoggingMetricExporter. (#7373)
* Replace loggingMetricExporter with OtlpJsonLoggingMetricExporter.

* Fix bazel workspace

* Move OtlpJsonLoggingMetricExporter to proxy and controller.

* Fix Bazel imports.
2023-09-21 16:21:44 +08:00
guyinyou c100d815d7 [ISSUE #7328] Convergent thread pool creation (#7329)
* Convergence thread pool creation to facilitate subsequent iteration management

* Convergence thread pool creation in ThreadPoolMonitor.java

* fix unit test

* Convergence ThreadPool constructor

* Convergence ScheduledThreadPool constructor

* remove unused import

* Convergence ScheduledThreadPool constructor

* remove unused import

---------
2023-09-11 10:13:56 +08:00
Ji Juntao 6fd0073d64 [ISSUE #7319] Optimize fault-tolerant mechanism for sending messages and hot update switch (#7320) 2023-09-07 20:21:16 +08:00
Ji Juntao b028277018 [ISSUE #6567] [RIP-63] Queue Selection Strategy Optimization (#6568)
Optimize the proxy's and client's selection strategy for brokers when sending messages, and use multiple selection strategies as a pipeline to filter suitable queues.
2023-08-29 16:13:38 +08:00
ShuangxiDing 9f34f55e1d [ISSUE #7226] Filter tlvs in ppv2 which contents not are spec-compliant ASCII characters and space (#7227)
Filter tlvs in ppv2 which not are spec-compliant ASCII characters and space
2023-08-29 15:48:46 +08:00
Zhouxiang Zhan 7e018520ef Add expireAfterAccess for cache (#7247)
Add expireAfterAccess for cache
2023-08-25 09:49:22 +08:00
lk 77e8e54b37 [ISSUE #7223] Support batch ack for grpc client in proxy (#7225) 2023-08-23 15:56:39 +08:00
redlsz 55e0cdb2af fix: IndexOutOfBoundsException when process pop response (#7003) 2023-08-15 19:19:45 +08:00
Zhouxiang Zhan db58f00c0f [ISSUE #7169] Change metadataThreadPoolQueueCapacity to 100000 (#7170) 2023-08-11 19:18:30 +08:00
ShuangxiDing 99b39a35f2 [ISSUE #7115] Fix grpc response message NPE (#7116) 2023-08-10 11:28:39 +08:00
lk 04683ec058 [ISSUE 7117] check message is in memory or not when init consumer offset for pop (#7118) 2023-08-09 19:08:33 +08:00
ShuangxiDing 3bdabf703b [ISSUE #7109] support the mixed topic type (#7110)
* Add mixed message type.

* support mixed topic type for grpc server

* remove the unnecessary parentheses around expression

* format the javadoc
2023-08-03 16:10:24 +08:00
Zhouxiang Zhan ab61183030 [ISSUE #7104] Add ReceiptHandleGroupKey for RenewEvent (#7105) 2023-08-01 19:00:15 +08:00
吴星灿andwxc 3102758487 fix: npe in lockBatchMQ and unlockBatchMQ (#7078)
Co-authored-by: wxc <wuxingcan666@foxmail.com>
2023-07-25 13:47:53 +08:00
ShuangxiDingand徒钟 90c5382aee [ISSUE #7061] Support forward HAProxyMessage for Multi Protocol server. (#7062)
* Support dynamic modification of grpc tls mode to improve the scalability of ProtocolNegotiator

* Support dynamic modification of grpc tls mode to improve the scalability of ProtocolNegotiator

* [ISSUE #6866] Move the judgment logic of grpc TLS mode to improve the scalability of ProtocolNegotiator

* [ISSUE #6866] Move the judgment logic of grpc TLS mode to improve the scalability of ProtocolNegotiator

* [ISSUE #6866] Move the judgment logic of grpc TLS mode to improve the scalability of ProtocolNegotiator

* [ISSUE #6866] Move the judgment logic of grpc TLS mode to improve the scalability of ProtocolNegotiator

* Support proxy protocol for gRPC server.

* Support proxy protocol for gRPC server.

* Support proxy protocol for gRPC server.

* Support proxy protocol for gRPC server.

* Support proxy protocol for gRPC server.

* Support proxy protocol for gRPC and Remoting server.

* 回滚netty的升级

* Support proxy protocol for gRPC and Remoting server.

* Support proxy protocol for gRPC and Remoting server.

* Support proxy protocol for gRPC and Remoting server.

* add grpc-netty-codec-haproxy in bazel

* add grpc-netty-codec-haproxy in bazel

* Support proxy protocol for gRPC and Remoting server.

* Fix Test

* add grpc-netty-codec-haproxy in bazel

* add ProxyProtocolTest for Remoting

* Support HAProxyMessage forward for multi protocol server.

---------

Co-authored-by: 徒钟 <shuangxi.dsx@alibaba-inc.com>
2023-07-21 20:28:58 +08:00
lk e0f5295fed passing the renew event type to create the correct context (#7045) 2023-07-19 15:55:11 +08:00
lyx 5914ff8dbb [ISSUE #6968] fix grpc acl bug (#6969)
* feat(acl): fix acl bug

Signed-off-by: lyx <1419360299@qq.com>

# Conflicts:
#	proxy/src/main/java/org/apache/rocketmq/proxy/grpc/GrpcServerBuilder.java

* add access test for two client

Signed-off-by: lyx <1419360299@qq.com>

* use specific acl config

Signed-off-by: lyx <1419360299@qq.com>

* Recovering unchange file

Signed-off-by: lyx <1419360299@qq.com>

* let test pass

Signed-off-by: lyx <1419360299@qq.com>

---------

Signed-off-by: lyx <1419360299@qq.com>
2023-07-15 18:15:57 +08:00
ShuangxiDingand徒钟 70a66eda2c Fix LEAK: HAProxyMessage.release() was not called before it's garbage-collected (#7025)
Call HAProxyMessage.release() after reading it.

---------

Co-authored-by: 徒钟 <shuangxi.dsx@alibaba-inc.com>
2023-07-14 16:46:40 +08:00
Lei Zhiyuan d206590692 [ISSUE #6979] Fix opaque will be duplicate in multi client scene (#6985) 2023-07-13 11:17:38 +08:00
ShuangxiDingand徒钟 b4496be687 [ISSUE #7010] Fix the HandshakeHandler returns when detect haproxy version need more data (#7011)
* Support dynamic modification of grpc tls mode to improve the scalability of ProtocolNegotiator

* Support dynamic modification of grpc tls mode to improve the scalability of ProtocolNegotiator

* [ISSUE #6866] Move the judgment logic of grpc TLS mode to improve the scalability of ProtocolNegotiator

* [ISSUE #6866] Move the judgment logic of grpc TLS mode to improve the scalability of ProtocolNegotiator

* [ISSUE #6866] Move the judgment logic of grpc TLS mode to improve the scalability of ProtocolNegotiator

* [ISSUE #6866] Move the judgment logic of grpc TLS mode to improve the scalability of ProtocolNegotiator

* Support proxy protocol for gRPC server.

* Support proxy protocol for gRPC server.

* Support proxy protocol for gRPC server.

* Support proxy protocol for gRPC server.

* Support proxy protocol for gRPC server.

* Support proxy protocol for gRPC and Remoting server.

* 回滚netty的升级

* Support proxy protocol for gRPC and Remoting server.

* Support proxy protocol for gRPC and Remoting server.

* Support proxy protocol for gRPC and Remoting server.

* add grpc-netty-codec-haproxy in bazel

* add grpc-netty-codec-haproxy in bazel

* Support proxy protocol for gRPC and Remoting server.

* Fix Test

* add grpc-netty-codec-haproxy in bazel

* add ProxyProtocolTest for Remoting

* Move AttributeKey from RemotingHelper to AttributeKey.

* Fix the needs more data for HandshakeHandler.

* Fix the needs more data for HandshakeHandler.

* Fix the needs more data for HandshakeHandler.

* Fix the needs more data for HandshakeHandler.

---------

Co-authored-by: 徒钟 <shuangxi.dsx@alibaba-inc.com>
2023-07-11 19:09:09 +08:00
lizhimins 15c6889bb0 fix receive message activity attempt id not correct (#7012)
fix receive message activity attempt id not correct
2023-07-11 17:04:00 +08:00
Zhouxiang Zhan 8e6b5e62bd [ISSUE #6999] Add interface ReceiptHandleManager (#7000)
* Add interface ReceiptHandleManager

* fix unit test

* fix
2023-07-10 20:14:17 +08:00
ShuangxiDing 00fc42b8be [ISSUE #6957] Support Proxy Protocol for gRPC and Remoting Server (#6958) 2023-07-04 18:02:16 +08:00