Improve inefficient retrieval of zarr chunks from the API

Đang mở
#1,777 3 bình luận 0 reaction 0 người được giao Xem trên GitHub

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
35/100
Loại issue
Lỗi
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Đình trệ
Công nghệ
python
Lĩnh vực
api, cli

Hướng nghiên cứu

Bắt đầu bằng cách kiểm tra dandi/dandiapi.py quanh các dòng 1786-1795 và endpoint /api/zarr/\u003czarr_id\u003e/files/. Truy vết xem CLI hiện tại có tạo các request với đường dẫn tệp làm tiền tố hay không, rồi so sánh hành vi đó với mức lookup mà issue mong đợi. Được xem là hoàn tất khi xác nhận được nguồn của request và loại bỏ việc truy xuất dư thừa, hoặc ghi lại rằng chỉ CLI đã được sửa đổi mới tạo ra nó.

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

Mô tả

We are receiving many requests to the API, from the CLI, of the following format:

GET /api/zarr/<zarr_id>/files/?prefix=0/0/0/13/14/97&download=true

Often times, the path provided (0/0/0/13/14/97) is itself the only file returned, and as such, could just be retrieved by querying for the "level" above (0/0/0/13/14). Really though, every response from that endpoint is itself an object, so there should never be a case where the CLI is trying to determine if a path returned is a directory or a file.

I believe the code generating these requests lives here See the comment below.

It's possible the requests we're receiving are from a modified version of the CLI, in which case this issue can be closed (if we can truly determine that to be the case).

Ngôn ngữ chính
Python
Star
28
Fork
37
Merge trung bình
3 ngày 21 giờ
Pull request đã merge (30 ngày)
13

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

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. 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.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của dandi/dandi-cli

Tất cả issue của dandi/dandi-cli

Issue tương tự

Thêm issue về Python

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.