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

can it work with yaoweibin/nginx_upstream_check_module ? #11

Open
diluke1600 opened this issue Jan 19, 2016 · 4 comments
Open

can it work with yaoweibin/nginx_upstream_check_module ? #11

diluke1600 opened this issue Jan 19, 2016 · 4 comments

Comments

@diluke1600
Copy link

if not, is there a way to make a patch ?

@diluke1600
Copy link
Author

@cubicdaiya
Copy link
Owner

can it work with yaoweibin/nginx_upstream_check_module ?

As I have never used the module above before, A survery is required.

@wangfakang
Copy link

@huamaolin There is a module https://github.com/SinaMSRE/lua-upstream-nginx-module maybe useful.

@qszxnp
Copy link

qszxnp commented Apr 30, 2020

we have a problem when use this module with yaoweibin/nginx_upstream_check_module ,sometimes when we dynamic change upstream,the nginx worker's cpu would go to 100% forever, just like deadlock. below is the stack

0x000000000042f386 in ngx_rwlock_wlock (lock=lock@entry=0x7f0ba695c1b0) at src/core/ngx_rwlock.c:34
34 for (i = 0; i < n; i++) {
Missing separate debuginfos, use: debuginfo-install glibc-2.17-292.el7.x86_64 keyutils-libs-1.5.8-3.el7.x86_64 krb5-libs-1.15.1-37.el7_7.2.x86_64 libcom_err-1.42.9-16.el7.x86_64 libselinux-2.5-14.1.el7.x86_64 lua-5.1.4-15.el7.x86_64 nss-softokn-freebl-3.44.0-5.el7.x86_64 openssl-libs-1.0.2k-19.el7.x86_64 pcre-8.32-17.el7.x86_64 zlib-1.2.7-18.el7.x86_64
(gdb) bt
#0 0x000000000042f386 in ngx_rwlock_wlock (lock=lock@entry=0x7f0ba695c1b0) at src/core/ngx_rwlock.c:34
#1 0x00000000004b3a18 in ngx_http_upstream_get_ip_hash_peer (pc=0x3126a80, data=0x3127418) at src/http/modules/ngx_http_upstream_ip_hash_module.c:207
#2 0x000000000043c3d8 in ngx_event_connect_peer (pc=pc@entry=0x3126a80) at src/event/ngx_event_connect.c:34
#3 0x000000000046a9ac in ngx_http_upstream_connect (r=r@entry=0x31256a0, u=u@entry=0x3126a70) at src/http/ngx_http_upstream.c:1531
#4 0x000000000046bc1a in ngx_http_upstream_init_request (r=r@entry=0x31256a0) at src/http/ngx_http_upstream.c:810
#5 0x000000000046c739 in ngx_http_upstream_init (r=r@entry=0x31256a0) at src/http/ngx_http_upstream.c:545
#6 0x0000000000460337 in ngx_http_read_client_request_body (r=r@entry=0x31256a0, post_handler=0x46c6bc <ngx_http_upstream_init>) at src/http/ngx_http_request_body.c:77
#7 0x000000000049ca51 in ngx_http_proxy_handler (r=0x31256a0) at src/http/modules/ngx_http_proxy_module.c:937
#8 0x0000000000454a61 in ngx_http_core_content_phase (r=0x31256a0, ph=) at src/http/ngx_http_core_module.c:1169
#9 0x000000000044fb03 in ngx_http_core_run_phases (r=r@entry=0x31256a0) at src/http/ngx_http_core_module.c:858
#10 0x000000000044fc12 in ngx_http_handler (r=r@entry=0x31256a0) at src/http/ngx_http_core_module.c:841
#11 0x0000000000459c73 in ngx_http_process_request (r=r@entry=0x31256a0) at src/http/ngx_http_request.c:2055
#12 0x0000000000459fc9 in ngx_http_process_request_headers (rev=rev@entry=0x7f0ba25becb0) at src/http/ngx_http_request.c:1480
#13 0x000000000045a2a2 in ngx_http_process_request_line (rev=rev@entry=0x7f0ba25becb0) at src/http/ngx_http_request.c:1151
#14 0x000000000045a63b in ngx_http_wait_request_handler (rev=0x7f0ba25becb0) at src/http/ngx_http_request.c:500
#15 0x00000000004439a1 in ngx_epoll_process_events (cycle=, timer=, flags=) at src/event/modules/ngx_epoll_module.c:902
#16 0x000000000043ac02 in ngx_process_events_and_timers (cycle=cycle@entry=0x26ec640) at src/event/ngx_event.c:242
#17 0x0000000000442054 in ngx_worker_process_cycle (cycle=0x26ec640, data=) at src/os/unix/ngx_process_cycle.c:750
#18 0x0000000000440792 in ngx_spawn_process (cycle=cycle@entry=0x26ec640, proc=proc@entry=0x441fe3 <ngx_worker_process_cycle>, data=data@entry=0x0, name=name@entry=0x51e7b5 "worker process",
respawn=respawn@entry=-4) at src/os/unix/ngx_process.c:199
#19 0x000000000044131b in ngx_start_worker_processes (cycle=cycle@entry=0x26ec640, n=4, type=type@entry=-4) at src/os/unix/ngx_process_cycle.c:359
#20 0x0000000000442d68 in ngx_master_process_cycle (cycle=0x26ec640, cycle@entry=0x1dbff20) at src/os/unix/ngx_process_cycle.c:244
#21 0x000000000041cf85 in main (argc=, argv=) at src/core/nginx.c:382

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

4 participants