brpc icon indicating copy to clipboard operation
brpc copied to clipboard

brpc is an Industrial-grade RPC framework using C++ Language, which is often used in high performance system such as Search, Storage, Machine learning, Advertisement, Recommendation etc. "brpc" means...

Results 414 brpc issues
Sort by recently updated
recently updated
newest added

**Describe the bug** **To Reproduce** **Expected behavior** **Versions** OS: Compiler: brpc: protobuf: **Additional context/screenshots**

### What problem does this PR solve? Issue Number: resolve #3133 Problem Summary: when Controller response_will_be_read_progressively() it needs background bthread monitor handler to solve progressive reader idle timeout,when hit the...

**Describe the bug** brpc客户端多并发下卡在callmethod函数,不会报错也不返回结果(一直卡死)我这里设置的是同步接口,服务端也收不到这十个请求,下面是gdb 堆栈信息: #0 syscall () at ../sysdeps/unix/sysv/linux/x86_64/syscall.S:38 #1 0x00007f1baf0261fe in bthread::futex_wait_private (timeout=0x0, expected=0, addr1=0x7f1b50ff2140) at ./src/bthread/sys_futex.h:40 #2 bthread::wait_pthread (pw=..., ptimeout=ptimeout@entry=0x0) at src/bthread/butex.cpp:142 #3 0x00007f1baf026950 in bthread::butex_wait_from_pthread (abstime=0x0,...

**Is your feature request related to a problem?** N/A **Describe the solution you'd like** 希望 bthread_concurrency 可以支持减少 concurrency **Describe alternatives you've considered** 我们使用 Bthread 实现了协程池,同时我们使用 Bthread Tag Group 来实现不同协程池之间底层 Worker...

feature

**Is your feature request related to a problem?** **Describe the solution you'd like** 我的机器上有多个ip地址(多个网卡)我希望控制brpc的channel发送rpc请求的时候,只通过指定的ip进行发送,目前看channelOptions里面并没有提供这个选项 这个功能可以被支持吗 **Describe alternatives you've considered** **Additional context/screenshots**

feature

**Describe the bug** 此错误代表:滑动窗口表示可发送,但RDMA的SQ(Send Queue)没有可用的空间发送请求; 滑动窗口代表发送方可继续发送的能力;当前,滑动窗口的更新时机为:poll到带有imm(也就是带有acks)的recv cqe,并且进行对应的处理时; RDMA的SQ是一个环形buffer,其上存放发送但未完成的请求,SQ的指针更新时机为 poll 到 send cqe时; 这里我们可以发现:SQ和滑动窗口的更新时机不一致; 按照正常逻辑来讲,如果处理到带有imm的recv cqe,那么代表此前发送方所发出的RDMA Send已经完成,在recv cqe之前应该先生成send cqe; 如下图示意: 这是brpc期望的一个逻辑,在更新滑动窗口值前,先更新了SQ; 但遇到该问题时,说明情况是这样的: 发送方调用大量RDMA Send操作,占用完SQ; 接着发送方poll到带有imm的recv cqe(并且此时一定没有其他send cqe,如果有的话,按照brpc一次poll 32个cqe,也会触发SQ指针更新),进入处理逻辑更新滑动窗口值; 更新窗口值后,某个线程发现窗口值非0,尝试发送,但SQ没有可用空间存放请求了,于是报错; 为什么在带有imm的recv cqe之前没有send...

bug

**Describe the bug** 出现问题的场景:brpc服务端下电一个节点,brpc客户端并没有重新选择链接,持续上报EPOLLOUT错误,连接超时。 待brpc服务端重新上电后,客户端连接恢复。 **To Reproduce** 目前只遇到过一次 **Expected behavior** 期望brpc重新发起socket连接,并且连接成功,而不是一直等待原节点。 **Versions** OS:ubuntu Compiler:g++ brpc:1.9 protobuf: **Additional context/screenshots**

您好我这边当前的场景需要对quic协议进行支持 我该怎么实现在brpc中将底层的协议替换为quic协议?

feature

**Is your feature request related to a problem?** 在分布式系统中,bRPC 的 RDMA 实现使用每个 QP 独立 RQ 的模式,导致内存消耗随连接数线性增长。例如,应用的服务节点同时触发 RDMA 内存池扩容时,有可能因为内存不足而扩容失败。 **Describe the solution you'd like** 在 bRPC 中添加对 RDMA SRQ 模式的支持。通过全局共享 RQ,让多个...

enhancement

**Describe the bug** 我目前使用了 brpc 1.14.1 release 版本。在调试一个线上程序时,我尝试使用 gdb_bthread_stack.py 用来查看运行时堆栈,但是我遇到了如下错误: Python Exception There is no member or method named _agents.: Error occurred in Python command: There is no member or...