apache / apache/arrow-java

[FlightRPC][Java] Allow using a per-call Arrow allocator

Đang mở
#329 4 bình luận 0 reaction 0 người được giao Xem trên GitHub
Type: enhancement
Ngôn ngữ chính
Java
Star
94
Fork
152
Merge trung bình
3 ngày 16 giờ
Pull request đã merge (30 ngày)
11

Mô tả

We've been running into issues with Flight and gRPC leaking direct memory at scale. One thing we'd like to do is have a (child) allocator per DoGet/DoPut call, so we can more accurately track memory usage. We have a candidate implementation that is rather messy, but can be upstreamed as part of flight-grpc.

This also requires changes to _ensure_ all Arrow resources are cleaned up before we notify gRPC that the call has finished.

**Reporter**: [David Li](https://issues.apache.org/jira/browse/ARROW-9586) / @lidavidm
#### PRs and other links:
- [GitHub Pull Request apache/arrow#8265](https://github.com/apache/arrow/pull/8265)
- [GitHub Pull Request apache/arrow#9417](https://github.com/apache/arrow/pull/9417)

**Note**: *This issue was originally created as [ARROW-9586](https://issues.apache.org/jira/browse/ARROW-9586). Please see the [migration documentation](https://github.com/apache/arrow/issues/14542) for further details.*

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Hướng nghiên cứu

Bắt đầu bằng cách xem xét implementation của flight-grpc và hai pull request được liên kết để hiểu cách tiếp cận được đề xuất. Xác minh rằng mỗi lệnh gọi DoGet/DoPut có thể sử dụng một Arrow allocator con và rằng tất cả tài nguyên Arrow đều được dọn dẹp trước khi thông báo cho gRPC rằng lệnh gọi đã hoàn tất.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
grpc, java
Lĩnh vực
api, backend
Loại issue
Tính năng
Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức độ hoạt động
Đình trệ
Độ rõ ràng
Khá rõ ràng
Mức phù hợp với người mới
25/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.