Docs: clarify cursor behavior
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
- 35/100
- Loại issue
- Tài liệu
- Độ rõ ràng
- Khá rõ ràng
- Mức độ hoạt động
- Đình trệ
- Công nghệ
- clojure, postgresql
- Lĩnh vực
- databases, documentation
Hướng nghiên cứu
Bắt đầu với tài liệu về cursor và các entry point jdbc/fetch-lazy và jdbc/cursor->lazyseq được nêu trong báo cáo. Tái hiện trường hợp PostgreSQL 11 với Hikari CP, kiểm tra hành vi khi có và không có các thiết lập fetch size và auto-commit. Hoàn tất khi tài liệu nêu rõ các thiết lập bắt buộc hoặc hành vi mà thư viện mong đợi.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Using clojure.jdbc w/ Hikari CP and Postgresql 11.
When attempting to create a cursor as described in the docs the process still ends up trying to load the whole result set into memory.
(def conn (jdbc/connection pool))
(def cursor (jdbc/fetch-lazy conn "SELECT \"uuid\", data_bytes FROM visitor_data;"))
(def cursor-seq (jdbc/cursor->lazyseq cursor)) ;; hangs here
If I explicitly set auto-commit and the fetch size I don't have that problem:
(def conn (jdbc/connection pool))
(def cursor (jdbc/fetch-lazy conn "SELECT \"uuid\", data_bytes FROM visitor_data;"))
(.setFetchSize (.-stmt cursor) 50)
(.setAutoCommit (.getConnection (.-stmt cursor)) false)
(def cursor-seq (jdbc/cursor->lazyseq cursor))
is this a documentation problem or is the library expected to modify those settings for us?
- Ngôn ngữ chính
- Clojure
- Star
- 106
- Fork
- 23
- 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
Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này
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 funcool/clojure.jdbc
-
java.time interop Đang mở
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 45/100
funcool/clojure.jdbc#46 ·
-
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 28/100
funcool/clojure.jdbc#43 ·
-
enhancement
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 45/100
funcool/clojure.jdbc#40 · 2 reaction ·
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 35/100
funcool/clojure.jdbc#38 · 4 reaction ·
-
bug
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 35/100
funcool/clojure.jdbc#32 · 1 bình luận · 1 reaction ·
Tất cả issue của funcool/clojure.jdbc
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
clojure-emacs/cider#4203 ·
-
.Team/QueryingPlatform Priority:P2
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
clj-commons/antq#329 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 90/100