diff --git a/src/meta-client/src/client/heartbeat.rs b/src/meta-client/src/client/heartbeat.rs index 4cdc2cf0f6..c31369dac7 100644 --- a/src/meta-client/src/client/heartbeat.rs +++ b/src/meta-client/src/client/heartbeat.rs @@ -280,10 +280,16 @@ impl Inner { .get(addr) .context(error::CreateChannelSnafu)?; + let config = self.channel_manager.config(); + let max_decoding_message_size = config.max_recv_message_size.as_bytes() as usize; + let max_encoding_message_size = config.max_send_message_size.as_bytes() as usize; + Ok(HeartbeatClient::new(channel) .accept_compressed(CompressionEncoding::Zstd) .accept_compressed(CompressionEncoding::Gzip) - .send_compressed(CompressionEncoding::Zstd)) + .send_compressed(CompressionEncoding::Zstd) + .max_decoding_message_size(max_decoding_message_size) + .max_encoding_message_size(max_encoding_message_size)) } #[inline] diff --git a/src/meta-srv/src/bootstrap.rs b/src/meta-srv/src/bootstrap.rs index 05b29d73c6..c451ca7c2d 100644 --- a/src/meta-srv/src/bootstrap.rs +++ b/src/meta-srv/src/bootstrap.rs @@ -251,7 +251,15 @@ pub fn router(metasrv: Arc) -> Router { // For quick network failures detection. .http2_keepalive_interval(Some(metasrv.options().grpc.http2_keep_alive_interval)) .http2_keepalive_timeout(Some(metasrv.options().grpc.http2_keep_alive_timeout)); - let router = add_compressed_service!(router, HeartbeatServer::from_arc(metasrv.clone())); + let grpc_config = metasrv.options().grpc.as_config(); + let heartbeat_server = HeartbeatServer::from_arc(metasrv.clone()) + .accept_compressed(CompressionEncoding::Gzip) + .accept_compressed(CompressionEncoding::Zstd) + .send_compressed(CompressionEncoding::Gzip) + .send_compressed(CompressionEncoding::Zstd) + .max_decoding_message_size(grpc_config.max_recv_message_size) + .max_encoding_message_size(grpc_config.max_send_message_size); + let router = router.add_service(heartbeat_server); let router = add_compressed_service!(router, StoreServer::from_arc(metasrv.clone())); let router = add_compressed_service!(router, ClusterServer::from_arc(metasrv.clone())); let router = add_compressed_service!(router, ProcedureServiceServer::from_arc(metasrv.clone()));