[incubator-brpc] branch master updated: add oncall.md
This is an automated email from the ASF dual-hosted git repository. jamesge pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/incubator-brpc.git The following commit(s) were added to refs/heads/master by this push: new 757cede add oncall.md new 38f04c9 Merge pull request #1517 from tanzhongyi003/master 757cede is described below commit 757cede699d2805a293943a41e72fa8797fb96fc Author: tanzhongyi003 AuthorDate: Fri Aug 13 09:31:01 2021 +0800 add oncall.md --- community/oncall.md | 40 1 file changed, 40 insertions(+) diff --git a/community/oncall.md b/community/oncall.md new file mode 100644 index 000..c18fba8 --- /dev/null +++ b/community/oncall.md @@ -0,0 +1,40 @@ +# 值周工程师的职责如下 + +## 1. 每天查看github上brpc项目待处理的Pull Request和Issue列表,负责问题的处理 + + * 包括标记issue,回复issue,关闭issue等; + * 判断issue是否是长期Issue,如果是则标记为Pending + * 判断Issue的类型,例如bug,enhancement, discussion等 + * 把issue分配到熟悉该模块的贡献者(可在微信群里询问谁来负责) + + + + +## 2. 轮值时间为一周 + * 即从周日早上到下周六晚上 + + +## 3. 轮值结束需要 + * 编写值周report,并发送到dev@brpc.apache.org邮件群中 + * 提醒下一位轮值同学 + + +## 4. 值周顺序如下 + * 朱佳顺 + * 李磊 + * 蔡道进 + * 何磊 + + +## 5. 值周记录如下 + +| 时间 | 值周人 | 值周report| +| | | --- | +| | 朱佳顺 | +| 21/06/2021 to 27/06/2021 | 李磊 | https://lists.apache.org/thread.html/rc9eb911bc6465c16bd8bb14f9d1f7c9548e13759101f43cf0300908a%40%3Cdev.brpc.apache.org%3E +| | 蔡道进 | +| 05/07/2021 - 12/07/2021 | 何磊 | https://lists.apache.org/thread.html/r3f67bc42ecdc07b25c39aedaf30aeae79039aa1cc3e6ad99364c8178%40%3Cdev.brpc.apache.org%3E + + + + - To unsubscribe, e-mail: dev-unsubscr...@brpc.apache.org For additional commands, e-mail: dev-h...@brpc.apache.org
[GitHub] [incubator-brpc] jamesge merged pull request #1517: add oncall.md
jamesge merged pull request #1517: URL: https://github.com/apache/incubator-brpc/pull/1517 -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: dev-unsubscr...@brpc.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: dev-unsubscr...@brpc.apache.org For additional commands, e-mail: dev-h...@brpc.apache.org
[GitHub] [incubator-brpc] serverglen commented on pull request #1517: add oncall.md
serverglen commented on pull request #1517: URL: https://github.com/apache/incubator-brpc/pull/1517#issuecomment-898159082 狂赞 -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: dev-unsubscr...@brpc.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: dev-unsubscr...@brpc.apache.org For additional commands, e-mail: dev-h...@brpc.apache.org
[GitHub] [incubator-brpc] sinomiko removed a comment on issue #1512: server异步response写pb消息耗时较长
sinomiko removed a comment on issue #1512: URL: https://github.com/apache/incubator-brpc/issues/1512#issuecomment-896538432 这个简单的pb数据结构不超过100ns的,系统服务CPU 内存不正常了,写pb不存在阻塞行为,检查下你的计算时间的代码是不是有bug -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: dev-unsubscr...@brpc.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: dev-unsubscr...@brpc.apache.org For additional commands, e-mail: dev-h...@brpc.apache.org
[GitHub] [incubator-brpc] tanzhongyi003 opened a new pull request #1517: add oncall.md
tanzhongyi003 opened a new pull request #1517: URL: https://github.com/apache/incubator-brpc/pull/1517 to make oncall more regular -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: dev-unsubscr...@brpc.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: dev-unsubscr...@brpc.apache.org For additional commands, e-mail: dev-h...@brpc.apache.org
Re: [DRAFT] Release Apache brpc(incubating) 1.0.0-rc01
Besides, as for the License, I have scanned the repo again, and the result is as below. Please also take a look, thanks! see https://shimo.im/docs/dj3vvyPCWXpjDKWK Best Regards, LorinLee Lorin Lee 于2021年8月12日周四 下午11:44写道: > Thanks a lot for Trista's reply, I have modified the email with her > suggestion. Here is the newest version of the voting email, please take a > look. Thanks! > > (NOTICE: This is just a draft email) > > Hello Apache brpc(Incubating) Community, > > > > This is a call for vote to release Apache brpc version 1.0.0-rc01 > > > > [Release Note] > >- Fix a latency issue caused by event_dispatcher >- Fix bug that time unit is not listed in grpc timeout options >- Fix heap overflow in simple_data_pool >- Support the length of redis args could be zero >- Fix bug that may throw out of index in rpc_replay >- Fix an access-after-return issue in TimerThread > > > > The release candidates: > > https://dist.apache.org/repos/dist/dev/incubator/brpc/1.0.0-rc01/ > > Git tag for the release: > > https://github.com/apache/incubator-brpc/releases/tag/1.0.0-rc01 > > Release Commit ID: > > > https://github.com/apache/incubator-brpc/commit/60f2a47c7271555c2fb0e3ecd798980f2fffe6ba > > Keys to verify the Release Candidate: > > https://dist.apache.org/repos/dist/dev/incubator/brpc/KEYS > > > > The vote will be open for at least 72 hours or until necessary number of > votes are reached. > > > > Please vote accordingly: > > [ ] +1 approve > > [ ] +0 no opinion > > [ ] -1 disapprove with the reason > > > > PMC vote is +1 binding, all others is +1 non-binding. > > > > Checklist for reference: > > [ ] Download links are valid. > > [ ] Checksums and PGP signatures are valid. > > [ ] Source code distributions have correct names matching the current > release. > > [ ] LICENSE and NOTICE files are correct for each brpc repo. > > [ ] All files have license headers if necessary. > > [ ] No compiled archives bundled in source archive. > > > Best Regards, > > LorinLee > > 谭中意 于2021年8月2日周一 上午9:55写道: > >> looks good to me. you can go on with it. >> >> On Thu, Jul 29, 2021 at 11:58 AM Lorin Lee wrote: >> >> > Hi, guys, >> > >> > >> > >> > (This is a DRAFT for releasing Apache brpc(incubating) 1.0.0-rc01, not a >> > real voting email. If you have any questions about the released package >> or >> > release notes, feel free to leave a comment. I will modify the contents >> and >> > then send another formal voting email.) >> > >> > >> > >> > 1.0.0-rc01 is ready for vote, here it is. >> > >> > >> > >> > I am pleased to be calling this vote for the release of apache >> > brpc(incubating) 1.0.0-rc01. >> > >> > The source code can be found at: >> > >> > >> > >> https://dist.apache.org/repos/dist/dev/incubator/brpc/1.0.0-rc01/apache-brpc-1.0.0-rc01-incubating-src.tar.gz >> > >> > The release candidate has been tagged in GitHub as 1.0.0-rc01, available >> > here: >> > >> > https://github.com/apache/incubator-brpc/releases/tag/1.0.0-rc01 >> > >> > The SHA-512 checksum is: >> > >> > >> > >> decc05e36153182a0463b0dbd72f8e4cf8d41f165f2052ce043b25abd9b3907f65eb5a769a385338f14d3f73ff18b3bb0246811905603979fbb5a327cc1242a8 >> > >> > >> > >> > which can be found via: >> > >> > >> > >> https://dist.apache.org/repos/dist/dev/incubator/brpc/1.0.0-rc01/apache-brpc-1.0.0-rc01-incubating-src.tar.gz.sha512 >> > >> > The signature can be found via: >> > >> > >> > >> https://dist.apache.org/repos/dist/dev/incubator/brpc/1.0.0-rc01/apache-brpc-1.0.0-rc01-incubating-src.tar.gz.asc >> > >> > KEYS file is available here: >> > >> > https://dist.apache.org/repos/dist/dev/incubator/brpc/KEYS >> > >> > [Release Note] >> > >> >- Fix a latency issue caused by event_dispatcher >> >- Fix bug that time unit is not listed in grpc timeout options >> >- Fix heap overflow in simple_data_pool >> >- Support the length of redis args could be zero >> >- Fix bug that may throw out of index in rpc_replay >> >- Fix an access-after-return issue in TimerThread >> > >> > Please vote on releasing this package as: >> > >> > Apache brpc(incubating) 1.0.0-rc01 >> > >> > This vote will be open until “Mon Aug 5 2021 00:00:00 GMT+0800 (CST)" >> and >> > >> > passes if a majority of Apache brpc IPMC ( at least three +1 ) votes are >> > cast. >> > >> > [ ] +1 Release this package >> > >> > [ ] 0 I don't feel strongly about it, but don't object >> > >> > [ ] -1 Do not release this package because… >> > >> > Checklist for reference: >> > >> > [ ] Are release files in correct location? >> > >> > [ ] Do release files have the word incubating in their name? >> > >> > [ ] Are the digital signature and hashes correct? >> > >> > [ ] Does the DISCLAIMER file exist? >> > >> > [ ] Do LICENSE and NOTICE files exist? >> > >> > [ ] Is the LICENSE and NOTICE text correct? >> > >> > [ ] Is the NOTICE year correct? >> > >> > [ ] Un-included software dependencies are not mentioned in LICENSE or >> > NOTICE? >> > >> > [ ] License information is not menti
Re: [DRAFT] Release Apache brpc(incubating) 1.0.0-rc01
Thanks a lot for Trista's reply, I have modified the email with her suggestion. Here is the newest version of the voting email, please take a look. Thanks! (NOTICE: This is just a draft email) Hello Apache brpc(Incubating) Community, This is a call for vote to release Apache brpc version 1.0.0-rc01 [Release Note] - Fix a latency issue caused by event_dispatcher - Fix bug that time unit is not listed in grpc timeout options - Fix heap overflow in simple_data_pool - Support the length of redis args could be zero - Fix bug that may throw out of index in rpc_replay - Fix an access-after-return issue in TimerThread The release candidates: https://dist.apache.org/repos/dist/dev/incubator/brpc/1.0.0-rc01/ Git tag for the release: https://github.com/apache/incubator-brpc/releases/tag/1.0.0-rc01 Release Commit ID: https://github.com/apache/incubator-brpc/commit/60f2a47c7271555c2fb0e3ecd798980f2fffe6ba Keys to verify the Release Candidate: https://dist.apache.org/repos/dist/dev/incubator/brpc/KEYS The vote will be open for at least 72 hours or until necessary number of votes are reached. Please vote accordingly: [ ] +1 approve [ ] +0 no opinion [ ] -1 disapprove with the reason PMC vote is +1 binding, all others is +1 non-binding. Checklist for reference: [ ] Download links are valid. [ ] Checksums and PGP signatures are valid. [ ] Source code distributions have correct names matching the current release. [ ] LICENSE and NOTICE files are correct for each brpc repo. [ ] All files have license headers if necessary. [ ] No compiled archives bundled in source archive. Best Regards, LorinLee 谭中意 于2021年8月2日周一 上午9:55写道: > looks good to me. you can go on with it. > > On Thu, Jul 29, 2021 at 11:58 AM Lorin Lee wrote: > > > Hi, guys, > > > > > > > > (This is a DRAFT for releasing Apache brpc(incubating) 1.0.0-rc01, not a > > real voting email. If you have any questions about the released package > or > > release notes, feel free to leave a comment. I will modify the contents > and > > then send another formal voting email.) > > > > > > > > 1.0.0-rc01 is ready for vote, here it is. > > > > > > > > I am pleased to be calling this vote for the release of apache > > brpc(incubating) 1.0.0-rc01. > > > > The source code can be found at: > > > > > > > https://dist.apache.org/repos/dist/dev/incubator/brpc/1.0.0-rc01/apache-brpc-1.0.0-rc01-incubating-src.tar.gz > > > > The release candidate has been tagged in GitHub as 1.0.0-rc01, available > > here: > > > > https://github.com/apache/incubator-brpc/releases/tag/1.0.0-rc01 > > > > The SHA-512 checksum is: > > > > > > > decc05e36153182a0463b0dbd72f8e4cf8d41f165f2052ce043b25abd9b3907f65eb5a769a385338f14d3f73ff18b3bb0246811905603979fbb5a327cc1242a8 > > > > > > > > which can be found via: > > > > > > > https://dist.apache.org/repos/dist/dev/incubator/brpc/1.0.0-rc01/apache-brpc-1.0.0-rc01-incubating-src.tar.gz.sha512 > > > > The signature can be found via: > > > > > > > https://dist.apache.org/repos/dist/dev/incubator/brpc/1.0.0-rc01/apache-brpc-1.0.0-rc01-incubating-src.tar.gz.asc > > > > KEYS file is available here: > > > > https://dist.apache.org/repos/dist/dev/incubator/brpc/KEYS > > > > [Release Note] > > > >- Fix a latency issue caused by event_dispatcher > >- Fix bug that time unit is not listed in grpc timeout options > >- Fix heap overflow in simple_data_pool > >- Support the length of redis args could be zero > >- Fix bug that may throw out of index in rpc_replay > >- Fix an access-after-return issue in TimerThread > > > > Please vote on releasing this package as: > > > > Apache brpc(incubating) 1.0.0-rc01 > > > > This vote will be open until “Mon Aug 5 2021 00:00:00 GMT+0800 (CST)" and > > > > passes if a majority of Apache brpc IPMC ( at least three +1 ) votes are > > cast. > > > > [ ] +1 Release this package > > > > [ ] 0 I don't feel strongly about it, but don't object > > > > [ ] -1 Do not release this package because… > > > > Checklist for reference: > > > > [ ] Are release files in correct location? > > > > [ ] Do release files have the word incubating in their name? > > > > [ ] Are the digital signature and hashes correct? > > > > [ ] Does the DISCLAIMER file exist? > > > > [ ] Do LICENSE and NOTICE files exist? > > > > [ ] Is the LICENSE and NOTICE text correct? > > > > [ ] Is the NOTICE year correct? > > > > [ ] Un-included software dependencies are not mentioned in LICENSE or > > NOTICE? > > > > [ ] License information is not mentioned in NOTICE? > > > > [ ] Is there any 3rd party code contained inside the release? If so: > > > > [ ] Does the software have a compatible license? > > > > [ ] Are all software licenses mentioned in LICENSE? > > > > [ ] Is the full text of the licenses (or pointers to it) in LICENSE? > > > > [ ] Is any of this code Apache licensed? Do they have NOTICE files? If > so: > > > > [ ] Have relevant parts of those NOTICE files been added to this NOTICE > > fil
[GitHub] [incubator-brpc] guodongxiaren commented on pull request #1515: Tanslate getting_started.md into Chinese
guodongxiaren commented on pull request #1515: URL: https://github.com/apache/incubator-brpc/pull/1515#issuecomment-897640798 @zyearn 辛苦看看 -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: dev-unsubscr...@brpc.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: dev-unsubscr...@brpc.apache.org For additional commands, e-mail: dev-h...@brpc.apache.org
[GitHub] [incubator-brpc] dylanzhang removed a comment on issue #1500: 如何让/brpc_metrics中显示string类型的value
dylanzhang removed a comment on issue #1500: URL: https://github.com/apache/incubator-brpc/issues/1500#issuecomment-896542033 请问一下大佬,/brpc_metrics是怎么打开的呢?我测试了一下,默认好像是没有打开的 -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: dev-unsubscr...@brpc.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: dev-unsubscr...@brpc.apache.org For additional commands, e-mail: dev-h...@brpc.apache.org
[GitHub] [incubator-brpc] jenrryyou opened a new pull request #1516: Fix a bug that server will send unexpected data frame to client if there are errors occur during processing stream create request
jenrryyou opened a new pull request #1516: URL: https://github.com/apache/incubator-brpc/pull/1516 ### 复现条件 1. channel的连接模式设置为single 2. 客户端并发发起创建stream的请求 2. 服务端出现限流或者overcrowded等状态(为了快速复现,可以把max_concurrency设置很小) 3. 客户端解析服务端返回数据,报解析错误(PARSE_ERROR_ABSOLUTELY_WRONG) ### 原因 服务端限流或者拥堵,StreamAccept没有执行 当客户端使用baidu_rpc协议发起创建新的stream请求(创建Stream)时,服务端判断限流或者拥堵,直接报错,不再处理请求。(baidu_rpc_protocol.cpp)。这样的后果是服务端的`brpc::StreamAccept`没有执行,服务端stream socket没有创建,controller的repsonse_stream就没有设置。 ```cpp void ProcessRpcRequest(InputMessageBase* msg_base) { .. if (!server->IsRunning()) { cntl->SetFailed(ELOGOFF, "Server is stopping"); break; } if (socket->is_overcrowded()) { cntl->SetFailed(EOVERCROWDED, "Connection to %s is overcrowded", butil::endpoint2str(socket->remote_side()).c_str()); break; } if (!server_accessor.AddConcurrency(cntl.get())) { cntl->SetFailed( ELIMIT, "Reached server's max_concurrency=%d", server->options().max_concurrency); break; } if (FLAGS_usercode_in_pthread && TooManyUserCode()) { cntl->SetFailed(ELIMIT, "Too many user code to run when" " -usercode_in_pthread is on"); break; } .. } ``` 服务端响应数据没有用Stream格式封装 服务端`ProcessRpcResponse`返回数据时如果存在服务端的stream socket就通过stream协议封装数据,否则通过原始协议baidu_rpc返回数据。由于服务端的stream创建失败,stream socket 没有创建出来,于是返回数据是用baidu_rpc协议封装的数据。 客户端解析响应出错 因为客户端多个stream共享host socket,host socket的preferred协议已经为设置为PROTOCOL_STREAMING_RPC(有概率在发送新建的stream请求的时候preferred协议短暂设置为PROTOCOL_BAIDU_STD,这里也是存在race issue的),这时收到一个PROTOCOL_BAIDU_STD的数据用就会抛PARSE_ERROR_ABSOLUTELY_WRONG的错误,导致客户端看不到真正的报错原因(封装在rpc格式里的报错信息) ```cpp ParseResult InputMessenger::CutInputMessage( Socket* m, size_t* index, bool read_eof) { // Try preferred handler first. The preferred_index is set on last // selection or by client. if (preferred >= 0 && preferred <= max_index && _handlers[preferred].parse != NULL) { ParseResult result = _handlers[preferred].parse(&m->_read_buf, m, read_eof, _handlers[preferred].arg); if (result.is_ok() || result.error() == PARSE_ERROR_NOT_ENOUGH_DATA) { *index = preferred; return result; } else if (result.error() != PARSE_ERROR_TRY_OTHERS) { // Critical error, return directly. LOG_IF(ERROR, result.error() == PARSE_ERROR_TOO_BIG_DATA) << "A message from " << m->remote_side() << "(protocol=" << _handlers[preferred].name << ") is bigger than " << FLAGS_max_body_size << " bytes, the connection will be closed." " Set max_body_size to allow bigger messages"; return result; } if (m->CreatedByConnect() && // baidu_std may fall to streaming_rpc (ProtocolType)preferred != PROTOCOL_BAIDU_STD) { // The protocol is fixed at client-side, no need to try others. LOG(ERROR) << "Fail to parse response from " << m->remote_side() << " by " << _handlers[preferred].name << " at client-side"; return MakeParseError(PARSE_ERROR_ABSOLUTELY_WRONG); } // Clear context before trying next protocol which probably has // an incompatible context with the current one. if (m->parsing_context()) { m->reset_parsing_context(NULL); } m->set_preferred_index(-1); } ``` ### 问题修复 原来的逻辑是要服务端的stream创建成功,才用stream rpc协议封装数据。 为了修复数据解析问题,我们先检查has_remote_stream,如果有就把原来baidu_rpc协议格式的response封装到stream rpc数据帧里发送给客户端。另外由于server可能返回INVALID_STREAM_ID,客户端ProcessRpcResponse 需要做对应处理。 -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: dev-unsubscr...@brpc.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org - To unsubscribe, e-mail: dev-unsubscr...@brpc.apache.org For additional commands, e-mail: dev-h...@brpc.apache.org