Build sessionPool blocking when the connection address is incorrect but the connection can still be established.
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 3/5
- Thời gian dự kiến
- 1-2 ngày
- Mức phù hợp với người mới
- 45/100
Hướng nghiên cứu
Bắt đầu từ constructor của SessionPool và theo dõi cách một timeout chưa được thiết lập truyền tới TProtocol, sau đó kiểm tra verifyClientVersion() và recv_verifyClientVersion(), nơi báo cáo quan sát thấy việc bị chặn. Tái hiện bằng một host có thể truy cập nhưng không chính xác, chẳng hạn như địa chỉ của NebulaGraph Studio. Hoàn thành khi timeout mặc định ngắn hơn và việc khởi tạo session pool không còn chờ vô thời hạn.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
**Describe the bug **
我基于sessionPool进行session管理,并且将sessionPool注册为spring boot bean,但是我们公司测试同事在配置时,错误的将NebulaGraph Studio访问端口配置成了hostAddress,导致服务长时间阻塞于启动状态。
因为我们基于k8s部署,设置了就绪探针,在阻塞几分钟后就被自动重启了,然后一直重复上述的步骤,且期间没有任何可以参考的日志。
后续排查到,最终阻塞在了最后的verifyClientVersion方法内部的recv_verifyClientVersion()。
最终执行到readMessageBegion()之后就阻塞住了。
原因应该是我没有设置timeout,前面一段默认在构建TProtocol时timeout给了一个Integer.MAX_VALUE。
但是一般程序就绪探针的不会设置这么长的时间,这就导致还没有等到超时报错程序就被杀死重启了。
对于这个默认的timeout时间是否可以进行缩短。
**Your Environments **
- JDK:
11
How To Reproduce
- 构建SessionPool时不设置timeout参数
- host设置为一个能连通当不正确的地址,如NebulaGraph Studio的访问地址
- 调用sessionPool构造器
Expected behavior
缩短在timeout未设置时传递给TProtocol的timeout值
Additional context
- Ngôn ngữ chính
- Java
- Star
- 199
- Fork
- 125
- Merge trung bình
- 5 giờ 6 phút
- Pull request đã merge (30 ngày)
- 3
Chuẩn bị môi trường
Dự án này không cung cấp dev container, Dockerfile hay hướng dẫn đóng góp, nên bạn cần tự thiết lập môi trường: hãy bắt đầu từ README và xem hướng dẫn đóng góp lần đầu của chúng tôi để biết các bước chung.
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của vesoft-inc/nebula-java
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 92/100
vesoft-inc/nebula-java#654 ·
-
【5.2.1】在获取连接时偶发报错Có thể làm lại được @Nicole00 đã nhận 189 ngày trước và không có pull request nào đang mở. Đang mởaffects/none severity/none type/bug
vesoft-inc/nebula-java#644 · 1 người được giao ·
-
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 35/100
vesoft-inc/nebula-java#629 · 1 bình luận ·
-
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 48/100
vesoft-inc/nebula-java#621 ·
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 45/100
vesoft-inc/nebula-java#617 ·
Tất cả issue của vesoft-inc/nebula-java
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
Maintainer thường phản hồi trong vòng 1 ngày
-
Content
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
RunestoneInteractive/rs#1559 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 2 ngày
-
documentation
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 86/100
inu-appcenter/memorIN-backend#298 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 85/100
opendataloader-project/opendataloader-pdf#757 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
redhat-developer/intellij-quarkus#1626 ·