Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

计数溢出导致程序退出 #1067

Closed
ryankeke opened this issue Mar 18, 2020 · 6 comments
Closed

计数溢出导致程序退出 #1067

ryankeke opened this issue Mar 18, 2020 · 6 comments

Comments

@ryankeke
Copy link

ryankeke commented Mar 18, 2020

Describe the bug (描述bug)
线上一个服务在跑4~5天左右,就会出现程序退出现象,最后的日志如下:
F0316 12:30:30.953776 393651 percentile.h:98] Check failed: _num_samples == _num_added (254 vs. 4294967280) _nu m_added=4294967280 rhs._num_added30 _num_samples=254 rhs._num_samples=30 SAMPLE_SIZE=254 size2=30
从日志看应该是计数溢出引起的

@jamesge
Copy link
Contributor

jamesge commented Mar 18, 2020

这是在fork产生的进程中么?

@ryankeke
Copy link
Author

这是在fork产生的进程中么?

不是的

@jamesge
Copy link
Contributor

jamesge commented Mar 18, 2020

这是在fork产生的进程中么?

不是的

这个可能是采样的线程没起来,和fork关系比较密切。一个方法是你们把brpc版本替换为master最新版,看看能否复现问题

@ryankeke
Copy link
Author

能说下为什么采用线程没起来可能会引起这个问题?

@jamesge
Copy link
Contributor

jamesge commented Mar 19, 2020

percentile需要被定期reset,这个reset是在采样线程里做的。如果在fork出来的进程中运行brpc代码,老版本可能不会创建这个线程,所以才建议用master试试

@ryankeke
Copy link
Author

谢谢!我试下。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants