process hanging in embeded mode on exception
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 35/100
Hướng nghiên cứu
Bắt đầu bằng cách tái hiện tình trạng treo với crash.clj, ffi/lock-gil, py/import-module và clojurebridge.load_clojure_file dưới manual-gil. Theo dõi cách ngoại lệ từ module bị thiếu được xử lý giữa clojurebridge và libpython-clj; hoàn tất khi tiến trình được nhúng kết thúc hoặc trả về thay vì bị treo, và ngoại lệ vẫn hiển thị.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
As a FUP of #221 which provided a new pathway to see the exception,
but does not prevent the "hanging" in an other pathway.
The simplest scenario is that we have a hanging python process by using this clojure code crash.clj
(ns train
(:require [libpython-clj2.python :refer [py.- py.] :as py]
[libpython-clj2.python.ffi :as ffi]))
(def locked (ffi/lock-gil))
(py/import-module "not existing")
and load it in embedded mode using manual-gil via:
export JDK_JAVA_OPTIONS="-Dlibpython_clj.manual_gil=true"
python -c 'from clojurebridge import cljbridge;cljbridge.load_clojure_file(clj_file="crash.clj")'
The exception thrown by python on the last line in crash.clj is swallowed by either clojurebridge or libpython-clj and the process hangs forever.
- Ngôn ngữ chính
- Clojure
- Star
- 1.2k
- Fork
- 74
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Hướng dẫn đóng góp
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 clj-python/libpython-clj
-
upgrade to dtype-next 11.xxx Đang mở
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 48/100
clj-python/libpython-clj#280 ·
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 38/100
clj-python/libpython-clj#275 · 5 bình luận ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 58/100
clj-python/libpython-clj#273 ·
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 25/100
clj-python/libpython-clj#271 · 1 bình luận ·
-
"auto flush" tty optionally Đang mở
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 35/100
clj-python/libpython-clj#270 · 1 bình luận ·
Tất cả issue của clj-python/libpython-clj
Issue tương tự
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 90/100
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 88/100
-
.Team/Metabot Priority:P3
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
-
needs triage
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 90/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
scalar-labs/scalar-jepsen#222 · 1 bình luận ·