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 (描述bug)** 对端服务端重启后,某些情况情况下客户端会报错Reached timeout,有时候又是报错EOF(符合预期)。毕竟tcp断开了,服务端会发一个RST包,从而客户端直接EOF。 因为我们配置的超时时间比较久,所以导致了对端进程退出后,等到超时才感知到(Reached timeout),我们希望业务能够立刻感知到。 不知道是否因为我们参数配置的问题? **To Reproduce (复现方法)** **Expected behavior (期望行为)** **Versions (各种版本)** OS: Compiler: brpc: protobuf: **Additional context/screenshots (更多上下文/截图)**

**Describe the bug (描述bug)** 1. 服务里使用brpc client 连接到了其他的brpc服务; 2. brpc针对这条连接会作周期性的HealthCheck, 使用HealthCheckTask实现; 3. 服务进程退出时,有一定的概率出现下面的core dump: ![1635993773394-image](https://user-images.githubusercontent.com/5432050/140267863-5eaa2818-8495-4248-a67b-591fc7efa175.png) 4. 看起来像是HealCehckTask还有运行,但是glog相关的静态变量由于进程退出已经不存在了。 **To Reproduce (复现方法)** **Expected behavior (期望行为)** **Versions (各种版本)** OS: CentOs 7 Compiler: brpc:...

**Is your feature request related to a problem? (你需要的功能是否与某个问题有关?)** 目前brpc server的无损热升级依赖业务端Pass平台屏蔽BNS实例的方式实现,一般按照一定的并发度来变更实例,变更每个实例的时候,先在BNS屏蔽该实例,等待BNS下发生效,再重启实例完成升级,然后再BNS解屏蔽。这种热升级方式一般情况下可以实现无损的实例升级,但是当下游集群服务器数量很大,服务器QPS很高的情况下则会带来如热升级时间过长,热升级期间会增加其他机器的负载等一系列问题。综上,brpc是否考虑自身提供无损热升级能力。 **Describe the solution you'd like (描述你期望的解决方法)** brpc server重启升级过程能保证已有连接不断开和请求不丢弃,同时能正常接收新请求。 实现方案 bRPC Server的无损热升级是一种进程级的实现方式: 1. 发布新的bin文件去覆盖老的bin文件(升级业务代码,编译产生新的bin文件); 2. 进程监听重启信号,一般使用的是Linux的SIGUSR1或者SIGUSR2系统预留的这两个自定义信号或者使用SIGHUP信号代表重启信号; 3. 向进程发送重启信号(默认kill -SIGHUP xx_pid),当进程收到重启信号,则以子进程(fork&exec)的方式加载新的bin文件启动;...

feature

**Describe the bug (描述bug)** home/ubuntu/kevinmgyu/brpc/src/butil/logging.cc:1388: undefined reference to `google::RegisterFlagValidator(std::string const*, bool (*)(char const*, std::string const&))' libbrpc.a(variable.o): In function `bvar::dumping_thread(void*)': /home/ubuntu/kevinmgyu/brpc/src/bvar/variable.cpp:706: undefined reference to `google::GetCommandLineOption(char const*, std::string*)' /home/ubuntu/kevinmgyu/brpc/src/bvar/variable.cpp:711: undefined reference to...

**Describe the bug (描述bug)** 使用thrift server时coredump **To Reproduce (复现方法)** 非必现,cpu压力大时容易出现 **Expected behavior (期望行为)** **Versions (各种版本)** OS: CentOS release 7.2 Compiler: gcc-4.8.2-1.el6.x86_64 brpc: 2018年7月下旬的brpc版本 protobuf: 3.5 **Additional context/screenshots (更多上下文/截图)** (gdb) bt...

**Describe the bug (描述bug)** go grpc 循环访问 brpc的一个接口服务拿数据,拿到的数据到达一定量的时候,brpc服务端会卡住,客户端收不到回的数据包 每次拿2000行数据,第一次rpc就会卡住 每次拿500行数据,第四次rpc会卡住 每次拿1行数据,差不多到第2w次rpc会卡住 卡住的现象,go grpc调用接口后不返回任何错误码,直到超时,抓包观察到的是brpc服务端填充了response但是没有回包 **To Reproduce (复现方法)** **Expected behavior (期望行为)** **Versions (各种版本)** OS: Compiler: brpc: protobuf: **Additional context/screenshots (更多上下文/截图)**

C++版本是否有计划支持dubbo协议了?或者已经有支持但是没开源发布?

**Describe the bug (描述bug)** 在proto文件中使用了“errno”字段,编译时报错 /echo_c++/build/echo.pb.h:199:44: error: 'bthread_errno_location' declared as function returning a function inline ::google::protobuf::int32 errno() const; /echo_c++/build/echo.pb.h:448:56: error: 'bthread_errno_location' declared as function returning a function inline ::google::protobuf::int32 EchoResponse::errno()...

**Describe the bug (描述bug)** [ 95%] Linking CXX executable ../output/bin/protoc-gen-mcpack CMakeFiles/protoc-gen-mcpack.dir/mcpack2pb/generator.cpp.o: In function `google::protobuf::internal::StringTypeTraits::Get(int, google::protobuf::internal::ExtensionSet const&, std::string const&)': /usr/local/include/google/protobuf/extension_set.h:1077: undefined reference to `google::protobuf::internal::ExtensionSet::GetString(int, std::string const&) const' CMakeFiles/protoc-gen-mcpack.dir/mcpack2pb/generator.cpp.o: In function `google::protobuf::io::Printer::PrintInternal(std::map*,...

**Describe the bug (描述bug)** 按照文档编译brpc https://github.com/apache/incubator-brpc/blob/master/docs/cn/getting_started.md 但是发生如下错误: ``` yluo@ubuntu:~/incubator-brpc$ sh config_brpc.sh --headers=/usr/include --libs=/usr/lib yluo@ubuntu:~/incubator-brpc$ make > Linking protoc-gen-mcpack g++ -o protoc-gen-mcpack -I./src -I/usr/include/ -L/usr/lib/x86_64-linux-gnu -std=c++0x -Xlinker "-(" src/idl_options.pb.cc src/mcpack2pb/generator.o libbrpc.a...