feat: Support result set size limit for QueryService-based TableClient
Maintainer thường phản hồi trong vòng 1 ngày
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
- 42/100
Hướng nghiên cứu
Bắt đầu tại query/src/main/java/tech/ydb/query/impl/TableClientImpl.java, ở phần xử lý kết quả dựa trên QueryService được issue đề cập, sau đó lần theo TableClient.Builder và DataQueryResult.isTruncated(). Xác định giới hạn hàng tường minh sẽ ảnh hưởng như thế nào đến việc cắt ngắn kết quả và streaming, đồng thời xác minh rằng kết quả báo cáo việc bị cắt ngắn và ngừng tiêu thụ dữ liệu ngay khi vượt quá giới hạn.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Currently the QueryService-based TableClient always returns false from DataQueryResult.isTruncated() (https://github.com/ydb-platform/ydb-java-sdk/blob/master/query/src/main/java/tech/ydb/query/impl/TableClientImpl.java#L118).
And to prevent from reading way too much data, the users now have to always remember to set a LIMIT in their queries, which is hard.
I suggest to add an explicit "row limit" setting on TableClient.Builder, which will enforce an application-dependent max ResultSet size => users will get DataQueryResult.isTruncated() == true when that limit is exceeded. Also, with an explicit setting, the QueryService-based TableClient can also stop streaming the result set data as soon as it reaches the limit, preventing resource waste.
- Ngôn ngữ chính
- Java
- Star
- 53
- Fork
- 41
- Merge trung bình
- 2 ngày 6 giờ
- Pull request đã merge (30 ngày)
- 28
Chuẩn bị môi trường
Khởi chạy dev container của dự án ngay trên trình duyệt, bằng tài khoản GitHub của bạn.
- Không có Dockerfile hay tệp Docker Compose
- Không có mẫu pull request
- Đọc 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 ydb-platform/ydb-java-sdk
-
Java SDK: `describeTable()` не возвращает JSON-индексыCó thể đã có người làm @vgvoleg đã nhận 11 ngày trước. Đang mở
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 35/100
ydb-platform/ydb-java-sdk#756 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
feat: Manage table attributesĐang mởenhancement feature-parity
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 35/100
ydb-platform/ydb-java-sdk#651 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
bug: "Sent message larger than max" error is retryableCó thể đã có người làm @mnnekrashevich đã nhận 46 ngày trước. Đang mởai_reviewed
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 58/100
ydb-platform/ydb-java-sdk#621 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Batching writes to topicĐang mở
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 45/100
ydb-platform/ydb-java-sdk#573 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Topic API control event orderingĐang mở
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 35/100
ydb-platform/ydb-java-sdk#553 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của ydb-platform/ydb-java-sdk
Issue tương tự
-
area/kotlin
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 84/100
Maintainer thường phản hồi trong vòng 1 ngày
-
Tell us about your use cases!Đang mở
Độ khó 1/5 Dưới một 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 68/100
Maintainer thường phản hồi trong vòng 1 ngày
-
Large page[number] overflows the computed offset and returns the wrong pageCó thể đã có người làm @auraseb đã nhận hôm nay. Đang mở
Độ 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
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100